Работа с LDAP¶
Возможности интеграции с LDAP¶
CodeScoring поддерживает аутентификацию и авторизацию пользователей по протоколу LDAP и маппинг атрибутов записей о пользователях в LDAP на атрибуты пользователей в системе.
Страница аутентификации CodeScoring¶
На странице аутентификации доступно меню с выбором провайдера аутентификации. Помимо провайдера по умолчанию (локальные учётные записи, internal directory), доступны для выбора активные интеграции с LDAP серверами.
Маппинг атрибутов записей о пользователях LDAP на атрибуты пользователей CodeScoring¶
При аутентификации через LDAP происходит маппинг следующих данных из записи в директории на учётную запись в CodeScoring:
- название УЗ (
username); - имя;
- фамилия;
- электронная почта.

Маппинг групп LDAP на группы и роли CodeScoring¶
При аутентификации через LDAP CodeScoring может запрашивать данные LDAP-групп пользователя и производить их маппинг на свои уровни доступа, группы и роли. Для активации этой возможности в настройках LDAP необходимо заполнить следующие поля:
База для поиска групп.Фильтр поиска для всех группПоле с названием группыПоле с группами пользователя(если значение поляМетод поиска по групперавно "Пользовательская запись")Фильтр поиска групп пользователя(если значение поляМетод поиска по групперавно "Поиск по группе")
CodeScoring производит маппинг согласно правилам, управление которыми доступно в разделе Настройки -> Провайдеры идентификации -> Группы LDAP.
Маппинг запускается только в двух случаях:
- в момент входа пользователя в систему;
- при нажатии кнопки
Применить все правилав разделеНастройки -> Провайдеры идентификации -> Группы LDAP.
Правила маппинга применяются следующим образом:
- в процессе маппинга обновляется состав групп пользователя;
- добавление, изменение и удаление правил маппинга не приведёт к обновлению групп пользователя. Для применения изменённых правил, необходимо инициировать процесс маппинга одним из двух способов, указанных выше;
- группы пользователя, добавленные или отредактированные администратором в ручном режиме, не изменяются в процессе маппинга, то есть приоритет отдаётся ручным изменениям;
- если при поиске LDAP-групп после успешной аутентификации в LDAP произошла ошибка, группы пользователей, применённые согласно правилам маппинга, будут удалены.

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

Просмотр деталей о существующей интеграции с LDAP¶
Просмотр деталей открывается при нажатии на гиперссылку с названием интеграции либо при нажатии на кнопку View в разделе Actions.
При просмотре доступны следующие действия:
- удаление интеграции;
- редактирование интеграции;
- проверка доступности (
Обновить статус).
Помимо основных полей настроек (описаны ниже), при просмотре деталей об интеграции с LDAP доступны данные о:
- дате создания;
- дате последнего обновления;
- статусе доступности;
- (опционально) причине недоступности.

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

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

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

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

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

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

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