Перейти к содержанию

Загрузить пользователей с использованием LDAP

Примечание

Действия выполняются пользователем с ролью Администратор ВЦОД

Sharx Base позволяет аутентифицировать пользователей с помощью внешнего LDAP-каталога, автоматически создавая для них учетные записи во ВЦОД и назначая роли.

Платформа совместима с тремя типами LDAP:

  1. OpenLDAP.
  2. FreeIPA.
  3. ActiveDirectory.

Общий принцип работы

  1. Добавьте во ВЦОД конфигурацию подключения к LDAP-каталогу.
  2. Активируйте конфигурацию и включите синхронизацию с ней.
  3. Проверьте активацию LDAP-каталога.

Внимание

Одновременно во ВЦОД может быть активирована связь только с одним LDAP.

Если были синхронизированы несколько LDAP, то активными во ВЦОД будут только те пользователи, чья конфигурация LDAP синхронизируется в данный момент.

Если синхронизация выключена, то пользователь из LDAP не сможет аутентифицироваться во ВЦОД


Управлять конфигурациями LDAP

Добавить конфигурацию

Конфигурацию можно добавить с помощью команды в CLI или путем загрузки YAML-файла.

Добавить конфигурацию командой в CLI

Чтобы добавить конфигурацию, введите команду

aaa param ldap add --name <NAME>
                  [--url <URL>]
                  [--ca_data <CA_DATA>]
                  [--ca_file <CA_FILE>]
                  [--user <USER>]
                  [--passwd <PASSWD>]
                  [--base_dn <BASE_DN>]
                  [--query_group <QUERY_GROUP>]
                  [--query_user <QUERY_USER>]
                  [--query_active_users <QUERY_ACTIVE_USERS>]
                  [--user_map <USER_MAP>]
                  [--group_map <GROUP_MAP>]
                  [--default_path <DEFAULT_PATH>]
                  [--notif_route <NOTIF_ROUTE>]
                  [--error_limit <ERROR_LIMIT>]

где

  • name — имя конфигурации LDAP в рамках текущего ВЦОД. Обязательный параметр;
  • url — адрес сервера LDAP, к которому осуществляется подключение. Укажите IP-адрес или доменное имя сервера;
  • ca_data — данные сертификата. Не может быть использован одновременно с ca_file;
  • ca_file — путь к файлу сертификата. Не может быть использован одновременно с ca_data;
  • user — пользователь на сервере LDAP, от имени которого будет осуществляться подключение;
  • passwd — пароль пользователя на сервере LDAP, от имени которого будет осуществляться подключение;
  • base_dn — корневой узел дерева LDAP, относительно которого система будет искать объекты;
  • query_group — условия поиска, по которым система ищет групповые объекты в каталоге LDAP;
  • query_user — определяет критерии поиска пользователей в каталоге LDAP;
  • query_active_users — проверка статуса пользователя в каталоге LDAP;
  • user_map — присвоение атрибутам пользователя ВЦОД характеристик из LDAP. Например, для login LDAP устанавливается соответствие uid, для email LDAP устанавливается соответствие email, для status LDAP устанавливается соответствие accountStatus. Указывается в формате JSON;
  • group_map — присвоение группе в каталоге LDAP роли пользователя ВЦОД. Указывается в формате JSON;
  • default_path — путь к директории в рамках ВЦОД, куда будут размещены пользователи из LDAP;
  • notif_route — имя заранее созданного маршрута для уведомлений об ошибках;
  • error_limit — количество повторений одинаковой ошибки. При превышении указанного количества Sharx Base отправляет администратору сообщение о неполадках с LDAP. По умолчанию равно 3.
Пример
aaa param ldap add --name <config_name>
                   --url "ldap:<ldap_addr>" 
                   --user "cn=<admin_login>,dc=<dc>,dc=<dc>" 
                   --passwd <ldap_admin_user_passwd>
                   --base_dn "dc=<dc>,dc=<dc>"
                   --query_group "(objectClass=<ldap_query_group>)" 
                   --query_user "(objectClass=<ldap_query_user>)" 
                   --query_active_users "<ldap_query_active_users>" 
                   --user_map "{\"login\": \"uid\", \"email\": \"email\", \"status\": \"accountStatus\"}
                   --group_map "{\"<ldap_group>\": \"<sdc_core_role>\"}"
                   --default_path "<path_on_sdc_core_cluster>" 
                   --notif_route <route_for_notification> 
                   --error_limit <count_error>                             

Добавить конфигурацию YAML-файлом

  1. Создайте файл конфигурации в формате YAML. Общий шаблон конфигурации приведен ниже

    apiVersion: v1
    kind: api
    metadata:
      plugin:
        aaa:
          param:
            ldap: add
    spec:
      name: "<config_name>"
      url: "ldap:<ldap_addr>"
      user: "cn=<admin_login>,dc=<dc>,dc=<dc>"
      passwd: "<passwd_to_LDAP>"
      base_dn: "dc=<dc>,dc=<dc>"
      query_group: "(objectClass=<ldap_query_group>)"
      query_user: "(objectClass=<ldap_query_user>)"
      query_active_users: "<ldap_query_active_users>"
      user_map: {"login": "uid", "email": "email", "status": "accountStatus"}
      group_map: {"<ldap_group>": "<sdc_core_role>"}
      default_path: "/"        
      notif_route: "<route_name>"
      error_limit: "<count_error>"
    

    Описание полей приведено выше.

  2. Загрузите файл конфигурации на Платформу.

    Чтобы загрузить файлы в Sharx Base, введите команду

    resource --spec <path_to_yaml_file>
    
    где spec — расположение YAML-файла.

    При локальном расположении на АРМ пользователя введите путь до файла.

    При расположении в стороннем репозитории укажите ссылку на данный файл.

После загрузки рекомендуется проверить загрузку файла конфигурации и статус соединения согласно инструкции ниже.


Просмотреть и проверить статус конфигурации LDAP-каталога

  1. Просмотреть список всех конфигураций

    aaa param ldap list
    
    Обратите внимание, что указанное имя файла конфигурации, добавленное выше, должно отобразиться в общем списке LDAP-конфигураций ВЦОД.

  2. Посмотрите информацию о подгруженной конфигурации

    aaa param ldap show --name <NAME>
    

    где name — имя конфигурации LDAP в рамках текущего ВЦОД.

    В информации отобразятся два дополнительных параметра:

    • status — статус соединения. Возможные значения:

      CONNECTED — соединение установлено,
      UNCONNECTED — соединение отключено,
      ERROR — ошибка соединения;

    • last_send_ldap_error_text — запись о последней ошибке.


Обновить конфигурацию

Чтобы изменить параметры существующей конфигурации, введите

aaa param ldap update --name <NAME>
                      [--url <URL>]
                      [--user <USER>]
                      [--passwd <PASSWD>]
                      [--base_dn <BASE_DN>]
                      [--query_group <QUERY_GROUP>]
                      [--query_user <QUERY_USER>]
                      [--query_active_users <QUERY_ACTIVE_USERS>]
                      [--user_map <USER_MAP>]
                      [--group_map <GROUP_MAP>]
                      [--default_path <DEFAULT_PATH>]
                      [--notif_route <NOTIF_ROUTE>]
                      [--error_limit <ERROR_LIMIT>]

Описание полей приведено выше.


Удалить конфигурацию

Чтобы удалить конфигурацию LDAP, введите

aaa param ldap del --name <NAME>

где name — имя конфигурации LDAP в рамках текущего ВЦОД.


Активировать синхронизацию c LDAP

Чтобы активировать подключение с определенным LDAP-каталогом, выполните следующие действия:

  1. Укажите, какая конфигурация будет использоваться

    aaa param update --ldap <LDAP>
    

    где ldap— имя LDAP-каталога.

  2. Включите синхронизацию с LDAP

    aaa param update --ldap_sync yes
    

    где ldap_sync — синхронизация с LDAP. Возможные значения:

    • yes — синхронизация включена;
    • no — синхронизация выключена.

Проверить активацию LDAP

После синхронизации пользователи из LDAP должны появиться в списке пользователей ВЦОД с закрепленными ролями согласно конфигурации.

Для проверки просмотрите пользователей ВЦОД

aaa user list

Если пользователи отображаются в списке, настройка проведена корректно.
Роли пользователям назначаются через параметр group_map при настройке конфигурации. Если group_map не был указан, пользователи будут созданы во ВЦОД без назначенных ролей.

Пользователи могут аутентифицироваться во ВЦОД, используя свой логин и пароль из LDAP. Дополнительных настроек не требуется.

Примечание

Если синхронизация выключена, пользователь из LDAP не сможет аутентифицироваться во ВЦОД даже при наличии его учетной записи в списке


Термины и определения содержатся в статьях: