Перейти к основному содержимому

Настройка AD/LDAP

Требования

подсказка

Настройка через Системную Консоль применяются только, если у вас файловая система с возможностью записи и Time не запущен в режиме кластера. Все параметры этой инструкции можно задавать через переменные окружения.

Подробнее об этом читайте в Admin Guide.

Настройка Time

  1. Проконсультируйтесь с администратором вашего AD/LDAP сервера и получите параметры для подключения.

  2. Заполните полученные данные в env-переменные. Получившаяся конфигурация будут выглядеть примерно так:

    TIME_LDAPSETTINGS_ENABLE: true
    TIME_LDAPSETTINGS_ENABLESYNC: false
    TIME_LDAPSETTINGS_LDAPSERVER: ldap.example.com
    TIME_LDAPSETTINGS_LDAPPORT: 389
    TIME_LDAPSETTINGS_CONNECTIONSECURITY: "" # tls | starttls
    TIME_LDAPSETTINGS_BASEDN: DC=example,DC=com
    TIME_LDAPSETTINGS_BINDUSERNAME: ldap_username
    TIME_LDAPSETTINGS_BINDPASSWORD: ldap_password
    TIME_LDAPSETTINGS_FIRSTNAMEATTRIBUTE: givenName
    TIME_LDAPSETTINGS_LASTNAMEATTRIBUTE: sn
    TIME_LDAPSETTINGS_EMAILATTRIBUTE: mail
    TIME_LDAPSETTINGS_USERNAMEATTRIBUTE: sAMAccountName
    TIME_LDAPSETTINGS_NICKNAMEATTRIBUTE: mailNickname
    TIME_LDAPSETTINGS_IDATTRIBUTE: objectGUID
    TIME_LDAPSETTINGS_POSITIONATTRIBUTE: title
    TIME_LDAPSETTINGS_LOGINIDATTRIBUTE: sAMAccountName

    где:

    • ldap.example.com — DNS-имя вашего AD/LDAP сервера
    • DC=example,DC=com — базовая ветка поиска
    • ldap_username — учетная запись в AD/LDAP с доступом на чтение ко всем интересующим группам и пользователям
    • ldap_password — пароль от учетной записи выше
    подсказка

    Для проверки корректности настроек — их можно указать в Системной консоли (без сохранения) и нажать кнопку Протестировать подключение к AD/LDAP.

  3. Ваши настройки могут существенно отличаться, если требуется шифрованное подключение к AD/LDAP серверу.

    Необходимые параметры подключения и значения для них ищите в Admin Guide, раздел "AD/LDAP (бета)".

  4. Перезапустите Time (все инстансы).

  5. В логах не должно быть ошибок настройки LDAP.

    Сообщение об ошибке при старте будет вида ldap: connectivity check failed, в поле error в логе будет указан детальный текст ошибки при попытке подключения к LDAP. В случае, если ошибка возникла — поправьте конфигурацию Time и перезапустите time-server снова.

  6. Войдите в Time как системный администратор, перейдите в System ConsoleAuthenticationLDAP:

    LDAP/AD - part 1

  7. В поле User Filter укажите корректный AD/LDAP фильтр для пользователей. Он будет добавлен с условием И в запрос AD/LDAP при авторизации и синхронизации пользователя.

  8. В поле Group Filter укажите корректный AD/LDAP фильтр для пользователей. Он будет добавлен с условием И в запрос AD/LDAP при синхронизации группы.

  9. Если переключить Enable Admin Filter в положение true и указать Admin Filter, то пользователь, подходящий под этот фильтр, автоматически получит роль System admin. Admin Filter применяется аналогично User Filter на этапе авторизации пользователя.

    LDAP/AD - part 2

  10. Нажмите кнопку Save.

Настройка параметров пользователя

warning

Изменяйте стандартные значения параметров только в случае, если вы точно знаете, что делаете.

В некоторых случаях стандартные параметры для пользователей в AD/LDAP могут отличаться от общепринятых. В таком случае можно изменить стандартный маппинг полей AD/LDAP в поля пользователя:

LDAP/AD - part 3

Назначение полей можно узнать, прочитав комментарий под соответствующим полем.

Синхронизация

Синхронизация с AD/LDAP позволяет обновлять параметры пользователей с учетом изменений AD/LDAP сервера.

warning

Джоба синхронизации не реагирует на изменение конфигурации в Системной консоли — необходимо перезапускать Time.

Синхронизация позволяет:

  • Выгружать с AD/LDAP сервера группы, которые затем можно линковать к группам Time (подробности Связь групп AD/LDAP и групп Time).
  • Обновлять профили пользователей, которые были созданы с использованием AD/LDAP авторизации.
  • Синхронизировать участников групп, которые были слинкованы с Time. При этом, новые участники не будет создаваться. Будут только перемещаться уже существующие или удаляться из группы.
  • На основе настроек группы в канале/команде, будут добавляться/убираться уже существующие в Time пользователи.
  • Автоматическое добавление пользователей с ролью Системного админа.

LDAP/AD - part 4

Синхронизация групп

Синхронизация групп позволяет автоматизировать получение доступа к каналам/командам, основываясь на AD/LDAP группах.

warning

Важно, чтобы был корректно настроен Group Filter из шагов выше.

Параметры:

  • Group Display Name Attribute отвечает за имя группы
  • Group ID Attribute отвечает за уникальный идентификатор группы в LDAP, который будет использоваться для идентификации группы в случае, если ее название изменяется

Параметры синхронизации

После настройки синхронизации групп, необходимо настроить запуск синхронизации.

Для запуска джобы синхронизации в настройках необходимо переключить Enable Synchronization with AD/LDAP в положение true и сохранить изменения, нажав кнопку Save.

Параметры Synchronization Performance отвечают за настройки джобы синхронизации.

warning

Синхронизация на больших деревьях может занимать значительное время, а так же приводить к высокой нагрузке на Time и AD/LDAP сервер.

Рекомендуем запускать индексацию не чаще 1 раза в час, а так же выгружать за один раз из LDAP не больше 1000 групп.

Статус джобов синхронизации отображается под настройками:

LDAP/AD - part 4

Связь групп AD/LDAP и групп Time

Синхронизация через LDAP позволяет создавать группы в Time и наполнять их пользователями.

После первой синхронизации в разделе System consoleUser managementGroups появится список групп, который были выгружены из AD/LDAP при синхронизации.

подсказка

Наличие группы в этом списке не значит, что она синхронизируется.

Для того, чтобы использовать группы AD/LDAP, их необходимо привязать к Time. Для этого:

  1. Найдите в списке интересующую вас группу.

    LDAP/AD - part 5

  2. Нажмите на кнопку Not linked рядом с интересующей вас группой.

  3. Затем нажмите на ссылку Configure

    LDAP/AD - part 7

  4. В появившемся окне укажите имя группы в поле Name. Это поле будет предзаполнено значением из Group Display Name Attribute, полученным от AD/LDAP сервера.

  5. Переключатель Enable Group Mentions (Beta) позволяет сделать группу доступной всем пользователям. Это позволит пользователям:

    • тегнуть всех участников группы, используя тег группы
    • просмотреть список участников группы
  6. Поле Group Mention позволяет задать короткий тег для группы.

  7. Кнопка Add Team and Channel позволяет задать в какие команды и каналы будет автоматически добавляться пользователь группы при синхронизации.

    LDAP/AD - part 8

  8. Нажмите на кнопку Add Team.

  9. В появившемся окне выберите необходимые команды и нажмите Add.

Аналогично настраивается доступ к каналам.

подсказка

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