Работа с LDAP

Возможности интеграции с LDAP

CodeScoring поддерживает аутентификацию и авторизацию пользователей по протоколу LDAP и маппинг атрибутов записей о пользователях в LDAP на атрибуты пользователей в системе.

Страница аутентификации CodeScoring

На странице аутентификации доступно меню с выбором провайдера аутентификации. Помимо провайдера по умолчанию (локальные учётные записи, internal directory), доступны для выбора активные интеграции с LDAP серверами.

аутентификации через провайдера по умолчанию выбор провайдера аутентификации

Маппинг атрибутов записей о пользователях LDAP на атрибуты пользователей CodeScoring

При аутентификации через LDAP происходит маппинг следующих данных из записи в директории на учётную запись в CodeScoring:

  • название УЗ (username);
  • имя;
  • фамилия;
  • электронная почта.

маппинг атрибутов записей на УЗ в CodeScoring

Сопоставление идентичности на основе LDAP-групп

При аутентификации через LDAP CodeScoring может запрашивать данные об LDAP-группах пользователя и на основе них применять правила сопоставления идентичности.

Просмотр существующих интеграций с LDAP

Просмотр существующих интеграций доступен в разделе Настройки -> ID провайдеры -> LDAP. В разделе отображаются таблица со списком настроенных интеграций LDAP, кнопка для создания новой интеграции (Добавить) и окно поиска.

просмотр списка интеграций с LDAP

Просмотр деталей о существующей интеграции с LDAP

Просмотр деталей открывается при нажатии на гиперссылку с названием интеграции либо при нажатии на кнопку View в разделе Actions.

При просмотре доступны следующие действия:

  • удаление интеграции;
  • редактирование интеграции;
  • проверка доступности (Обновить статус).

Помимо основных полей настроек (описаны ниже), при просмотре деталей об интеграции с LDAP доступны данные о:

  • дате создания;
  • дате последнего обновления;
  • статусе доступности;
  • (опционально) причине недоступности.

просмотр деталей об интеграции с LDAP

Создание или редактирование интеграции с LDAP

Для того чтобы создать новую интеграцию с LDAP, необходимо на просмотре списка интеграций нажать на кнопку Добавить. Для того чтобы отредактировать существующую интеграцию, необходимо нажать на кнопку Редактировать на странице просмотра или списка интеграций. Формы создания и редактирования идентичны.

Описание полей формы

  • Название — название интеграции, отображается на странице аутентификации;
  • LDAP протокол — выбор между протоколами LDAP и LDAPS (LDAP поверх SSL);
  • Имя хоста LDAP — доменное имя или IP адрес сервера LDAP;
  • Порт LDAP — порт LDAP сервера;
  • Таймаут соединения (секунды) — время ожидания установки соединения с LDAP-сервером. По умолчанию 5 секунд;
  • Таймаут получения ответа (секунды) — время ожидания ответа LDAP-сервера. По умолчанию 5 секунд;
  • Размер страницы поиска — количество записей на странице при постраничном поиске. По умолчанию поле пустое и используется поиск без разбиения на страницы;
  • База для поиска пользователя — указание места поиска записей о пользователе;
  • Фильтр поиска пользователя — фильтр для поиска записи о пользователе. Должен содержать шаблон %USERNAME%, при поиске он будет заменён на имя УЗ, для которой производится аутентификация через LDAP;
  • Поле с именем учетной записи — атрибут хранящий название УЗ пользователя в записи о нём;
  • Поле с email — атрибут хранящий email пользователя в записи о нём;
  • Поле с именем — атрибут хранящий имя пользователя в записи о нём;
  • Поле с фамилией — атрибут хранящий фамилию пользователя в записи о нём;
  • Формат имени учетной записи — выбор формата строки авторизации;
  • Домен — указание домена Active Directory (появляется при выборе соответствующего Username format);
  • Сервисный пользователь — логин пользователя с правами чтения каталогов на сервере LDAP;
  • Пароль сервисного пользователя — пароль пользователя с правами чтения каталогов на сервере LDAP;
  • Поле с названием группы — атрибут хранящий название группы в записи о ней;
  • База для поиска групп — указание места поиска записей о группах;
  • Метод поиска по группе — способ определения групп пользователя: Пользовательская запись или Поиск по группе;
  • Фильтр поиска групп пользователя — фильтр для поиска групп пользователя при методе Поиск по группе. Должен содержать шаблон %USERNAME% (имя учётной записи) или %USER_DN% (полное отличительное имя пользователя);
  • Фильтр поиска для всех групп — фильтр для поиска записей о всех группах в LDAP;
  • Поле с группами пользователя — атрибут записи пользователя, содержащий его группы, например memberOf. Используется при методе Пользовательская запись;
  • Использовать TLS;
  • Активно — используется ли интеграция с LDAP для аутентификации пользователей.

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

Таймауты и размер страницы поиска принимают целые числа больше нуля. Чтобы отключить постраничный поиск, очистите поле Размер страницы поиска. После изменения настроек нажмите Сохранить.

Доступные опции для username format

доступные опции для username format

Тестирование конфигурации интеграции с LDAP

Для удобства конфигурации пользователям доступны 3 формы для тестирования:

  • тестирование подключения и аутентификации (Тестирование подключения);
  • тестирование поиска (Тест поиска пользователя);
  • тестирование загрузки групп (Тест загрузки групп).

Для тестов подключения и поиска пользователя комбинируются данные из основной формы с данными формы тестирования. В этих двух тестах данные из полей Сервисный пользователь и Пароль сервисного пользователя игнорируются. Тест загрузки групп использует учётные данные сервисного пользователя из основной формы.

Тестирование подключения и аутентификации

При нажатии на кнопку теста (Проверить подключение) в секции Тестирование подключения происходит подключение к LDAP серверу (операция bind). В случае успешного теста выводится уведомление об успехе операции, в случае провала теста — сообщение об ошибке.

успешный тест соединения проваленный тест соединения

Тестирование загрузки данных о пользователе

При нажатии на кнопку теста (Проверить подключение) в секции Тест поиска пользователя происходит подключение к LDAP серверу (операция bind) и поиск данных о пользователе (операция search) согласно данным в форме. В случае успешного теста выводится уведомление об успехе операции и результат поиска, в случае провала теста — сообщение об ошибке.

успешный тест загрузки данных о пользователе проваленный тест загрузки данных о пользователе

Тестирование загрузки данных о группах

При нажатии на кнопку теста (Проверить подключение) в секции Тест загрузки групп происходит подключение к LDAP серверу (операция bind) и поиск данных о группах (операция search) согласно данным в форме. В случае успешного теста выводится уведомление об успехе операции и результат поиска, в случае провала теста — сообщение об ошибке. успешный тест загрузки данных о группах проваленный тест загрузки данных о группах

Механизм аутентификации с помощью LDAP

иллюстрация механизма аутентификации с помощью LDAP

Замечания

  • Использование авторизации через LDAP не подразумевает полную синхронизацию директории с информацией о пользователях из Службы каталогов.
  • Редактирование название УЗ (username) и назначение пароля пользователю из LDAP невозможно.
  • Возможно наличие пользователей из различных провайдеров аутентификации с одинаковым названием УЗ (username).
  • Возможно назначение пользователю из LDAP любого уровня доступа (User, Auditor, Administrator, Security Manager).
Страница была полезна?