Настроить службы каталогов для SaltStack Config с помощью протокола LDAP можно в рабочей области «Проверка подлинности». Этот протокол используется для подключения к таким службам, как Active Directory или Microsoft Azure.

Примечание: Для проверки подлинности пользователей в SaltStack Config при необходимости можно использовать несколько систем одновременно. Например, можно использовать поставщик удостоверений (IdP) на базе протоколов SAML или LDAP и одновременно хранить некоторые учетные данные пользователей на сервере RaaS. Однако SaltStack Config не позволяет одновременно использовать два поставщика SAML или два поставщика LDAP.

Процесс проверки подлинности

В SaltStack Config для проверки подлинности в системах на основе LDAP используется следующий процесс конечного сервера.

  • Предварительный просмотр — при предварительном просмотре параметров подключения SaltStack Config получает от сервера LDAP образец списка пользователей и групп, который позволяет проверить параметры конфигурации.
  • Вход — когда пользователь вводит учетные данные в форме входа в SaltStack Config, конечный сервер проверяет соответствие записям в базе данных. Затем инициируется многоэтапная процедура поиска, и после нахождения совпадения подтверждается подлинность пользователя. С учетом этой процедуры поиска отдельные включенные пользователи во включенных группах не отображаются в рабочей области «Роли» до первого входа пользователя.
  • Фоновые задачи — SaltStack Config периодически выполняет фоновое задание по поиску всех привязанных групп и пользователей в подключении к службе каталогов, чтобы подтвердить их существование. Если группа или пользователь удалены, конечный сервер деактивирует соответствующую ссылку в базе данных.
  • Архивные группы и пользователи — архивными становятся все группы, удаленные из подключения к службе каталогов. Хотя эти группы неактивны и пользователи не могут войти в систему, они по-прежнему отображаются в рабочей области «Роли» и их можно выбрать. Это также верно для всех удаленных пользователей, которые ранее присутствовали в рабочей области «Роли».
  • Вложенные группы — если имеются вложенные группы, то при включении родительской группы также по умолчанию включаются все дочерние группы.

Настройка подключения LDAP

Чтобы настроить LDAP, сначала создайте подключение, а затем включите пользователей и группы LDAP, подлинность которых требуется проверять для SaltStack Config. После включения групп или пользователей можно определить их параметры управления доступом на основе ролей (RBAC).

Можно использовать стандартные значения параметров, настроенные для вашей службы каталогов, например Active Directory или OpenLDAP.

Примечание: Описанные далее действия должен выполнять опытный администратор LDAP или Active Directory, который знаком с общей конфигурацией системы LDAP. Обратитесь за помощью к своему администратору.

Чтобы настроить службу каталогов LDAP, сделайте следующее.

  1. (Необязательно.) Перед настройкой LDAP целесообразно проверить подключение и выполнение запросов с помощью стороннего инструмента. Пользователи AD могут использовать LDP или ADSI Edit. Пользователям Linux рекомендуется применять инструмент ldapsearch.
    Примечание: Более подробную информацию о проверке с помощью этих инструментов см. в статье Проверка подключения к службе каталогов и устранение его неисправностей в центре поддержки.
  2. В боковом меню выберите Администрирование > Проверка подлинности.
  3. Щелкните Создать.
  4. В меню Тип конфигурации выберите LDAP.
  5. (Необязательно.) В разделе Настройки щелкните Предварительно устанавливать стандартные значения и в раскрывающемся списке выберите службу каталогов.

    Стандартные значения устанавливаются в соответствии с вашим выбором. Однако некоторые параметры, например DN для поиска пользователя, остаются незаполненными. Проверьте соответствие записей схеме службы каталогов и замените заполнители значениями для своей службы.

  6. Введите или проверьте информацию о своем подключении LDAP.

    Основные параметры

    Поле Описание
    Имя Имя подключения LDAP. Поскольку это только отображаемое имя, можно использовать любое имя, которое поможет отличать этот конечный сервер проверки подлинности от других.
    Узел Адрес сервера LDAP в формате полного доменного имени (FQDN) или IP-адреса.
    Порт Порт, на котором настроен сервер LDAP. По умолчанию используется порт 389 для LDAP без шифрования и порт 636 для LDAP по SSL.
    Фоновая синхронизация SaltStack Config проверяет всех пользователей и группу на конечном сервере проверки подлинности через заданный в этом параметре интервал (в минутах).
    SSL
    Включить SSL
    Установите этот флажок для подключения к серверу LDAP по протоколу SSL с использованием сертификата, указанного в настройках сервера RaaS. Если конфигурация отсутствует, для проверки SSL-подключения будет использоваться системное хранилище сертификатов. Подробную информацию о настройке сервера RaaS см. в разделе Настройка сертификатов SSL в руководстве по установке и настройке SaltStack Config.
    Важно!: Рекомендуется установить этот флажок. В противном случае SaltStack Config будет передавать информацию в виде обычного текста через незащищенное подключение.
    Проверять сертификат
    Установите этот флажок, чтобы проверять сертификаты SSL при подключении. Не устанавливайте флажок, чтобы пропустить проверку, например при использовании самозаверяющих сертификатов (не рекомендуется для производственной среды).

    Проверка подлинности

    Поле Описание
    Базовое DN для проверки подлинности

    Базовое различающееся имя LDAP. Это местоположение, из которого запрашиваются группы и пользователи, например DC=sse,DC=example,DC=com.

    Примечание: Страница сведений о LDAP содержит отдельные поля ввода для описанных ниже объектов класс лиц, имя атрибута учетной записи, класс групп, имя атрибута группы и расписание синхронизации. Поэтому эти объекты не следует включать в поле «Базовое DN».
    Привязанное DN администратора DN администратора, настроенное для сервера LDAP. SaltStack Config использует этот параметр для проверки подлинности при доступе к каталогу для поиска пользователей и групп. Введите данные в следующем формате: cn=Administrator,cn=Users,dc=example,dc=com.
    Пароль привязанного DN администратора

    Индивидуальный пароль администратора.

    Хранится в зашифрованном виде в базе данных. Не хранится в виде обычного текста.

    Фильтр привязанного DN для проверки подлинности

    Фильтр, используемый для выбора пользователя. Результат поиска — имя DN пользователя, которое SaltStack Config использует для привязки к каталогу и предоставления пользователю доступа к SaltStack Config. Полезно для ограничения количества результатов операции поиска.

    Примечание: Так как синтаксис фильтра может быть довольно сложным, перед заполнением этого поля рекомендуется проверить данные с помощью LDP, ldapsearch или другого подобного инструмента, чтобы при необходимости внести корректировки.

    В следующем примере фильтр возвращает только ту учетную запись, которая соответствует указанному имени пользователя, принадлежащему группам DevOps или Level II.

    (&(objectclass=user)(sAMAccountName={username})(|(memberOf=CN=DevOps,OU=Groups,OU=TestCompanyHQ,DC=adtest,DC=com)(memberOf=LevelII,OU=Groups,DC=adtest,DC=com)))

    Если используются предварительно настроенные стандартные значения, замените заполнители правильными значениями для вашей службы каталогов.

    Примечание: При настройке структуры леса оставьте это поле пустым.
    Имя атрибута удаленного уникального идентификатора Имя значения, которое используется для идентификации уникальных записей. Это атрибут уникального идентификатора для всех записей. В AD это ObjectGUID.

    Группы

    Поле Описание
    DN поиска группы База для поиска групп. Например, в AD это может быть cn=Groups,dc=example,dc=com. Указывает, в каком месте каталога следует искать группы. Этот параметр используется вместе с параметром «Область поиска группы» ниже.
    Область поиска группы

    Определяет глубину поиска по каталогу, начиная с базового уровня, указанного в параметре «DN поиска группы», и может принимать одно из четырех значений.

    baseObject
    Значение 0, которое часто именуется base. Используется для поиска только этого объекта (и никаких других).
    singleLevel
    Значение 1, которое часто именуется one. Используется для поиска совпадений только на базовом уровне среди ближайших дочерних объектов.
    wholeSubtree
    Значение 2 (или SUBTREE в ldap3), которое часто именуется sub. Используется для поиска на базовом уровне и всех подчиненных уровнях любой глубины.
    subordinateSubtree
    Значение 3, которое часто именуется subordinates. Действует аналогично wholeSubtree, но при этом игнорируются записи базового уровня.
    Фильтр DN поиска группы Поисковый фильтр для извлечения групп из каталога. Обычно это (objectClass=group), но в некоторых конфигурациях AD это может быть (objectCategory=group). Используется в дополнение к параметру «Класс группы» для более глубокой детализации.
    Класс группы Имя класса объекта, используемое для определения групп, например groupOfNames.
    Атрибут имени группы Имя атрибута, который нужно использовать для имени группы. Атрибут не может иметь несколько значений.
    Атрибут членства в группе Имя атрибута в записи пользователя, содержащей имя группы, например memberOf.

    Пользователи

    Поле Описание
    DN поиска пользователя База поиска пользователей, например cn=Users,dc=example,dc=com в AD или cn=people,cn=accounts,dc=example,dc=com в других службах каталогов. Указывает, в каком месте каталога следует искать пользователей. Этот параметр используется вместе с параметром «Область поиска пользователя» ниже.
    Область поиска пользователя Определяет глубину поиска по каталогу, начиная с базового уровня, указанного в параметре «DN поиска пользователя», и может принимать одно из четырех значений. См. четыре значения, приведенные в описании параметра «Область поиска группы».
    Фильтр DN поиска пользователя Поисковый фильтр для извлечения пользователей из каталога. Обычно это (objectClass=person), но в некоторых конфигурациях AD это может быть (objectCategory=user).
    Класс лиц Имя класса службы каталогов, куда включены пользователи, для которых требуется разрешить вход. В большинстве систем (в том числе и в Active Directory) используется person, но в некоторых может использоваться user или inetOrgPerson.
    Атрибут идентификатора пользователя Уникальное имя атрибута учетной записи пользователя. В AD это sAMAccountName. В других службах это может быть uid или memberUid.
    Атрибут членства пользователя Имя атрибута в записи группы, содержащей имя пользователя. Возможными вариантами могут быть member и uniquemember.
  7. Чтобы просмотреть настройки без сохранения, щелкните Предварительный просмотр обновлений.

    В окне предварительного просмотра отображаются пользователи и группы, выбранные для подключения. При необходимости можно перейти на вкладку Группы или Пользователи, чтобы увидеть пользователей и группы, которые связаны со службой.

    Если просмотреть сведения о подключении не удалось, см. рекомендации в разделе Устранение неполадок.

  8. Нажмите Сохранить.

    Конфигурация LDAP сохранена. Чтобы проверить правильность конфигурации, попробуйте войти в SaltStack Config из тестовой учетной записи. Если войти в систему не удалось, см. рекомендации в разделе Устранение неполадок.

    Примечание: SaltStack Config сохраняет параметры подключения конфигураций LDAP, включая идентифицированные группы и идентифицированных пользователей. Поиск пользователей и групп осуществляется только в пределах заданной области, при этом весь каталог не синхронизируется. Более подробную информацию о том, как это работает, см. в разделе Процесс проверки подлинности.

    Со временем каталог LDAP может потребоваться обновить или повторно синхронизировать. Например, это следует сделать, когда добавляются новые пользователи, которых требуется включить в SaltStack Config.