Ldap-аутентификация (active directory)
Большие инсталляции SberMobile управляются сотнями людей, каждый из которых имеет одну или множество ролей. Создание и поддержка отдельных учетных записей пользователей SberMobile Server для всех них слишком трудозатратна. В этом случае возможно аутентифицировать пользователей через сервер LDAP (такой как Microsoft Active Directory), в то время как авторизация (назначение прав доступа пользователя) будет использовать учетные записи пользователя SberMobile Server на основе ролей.
Аутентификация LDAP включается и контролируется через общую настройку сервера Аутентификация через Active Directory и LDAP. Она имеет следующие поля:
- Адрес. IP-адрес или имя хоста сервера LDAP.
- Порт. Порт для подключения к серверу LDAP, по умолчанию 389.
- Время ожидания. Время ожидания для процесса аутентификации LDAP. Если время ожидания истекает во время аутентификации, пользователь SberMobile Server, пытающийся зайти при помощи аутентификации LDAP, будет отклонен.
- Тип. Выберите ваш тип аутентификации:
Use RDN Prefix
илиUse Authentication User
.
- Соответствие контейнеров по умолчанию. Таблица, использующаяся для преобразования primaryGroupID LDAP-пользователя (из столбца ID) в имя группы (указано с столбце Name). Используется только если выбран тип аутентификации Использовать RDN префикс.
- Соответствие параметров пользователя LDAP пользователям SberMobile. Таблица, определяющая, как параметры LDAP-пользователей соотносятся с учетными записями пользователя SberMobile Server на основе ролей. После успешной аутентификации LDAP-пользователя, системе нужно будет найти соответствующего LDAP-пользователю пользователя SberMobile Server. Это происходит следующим образом:
- Таблица Соответствие параметров пользователя LDAP пользователям SberMobile обрабатывается построчно
- Для каждой записи вычисляется Выражение значения атрибута. Его контекст по умолчанию - контекст, указанный значением столбца Пользователь.
- Результат Выражения значения атрибута сравнивается со значением атрибута LDAP-пользователя, указанным в столбце Имя атрибута. Если они совпадают, пользователь, указанный в столбце Пользователь aвторизуется для текущей сессии.
После того, как найдена соответствующая запись в таблице Соответствие параметров пользователя LDAP пользователям SberMobile, обработка данных продолжается. Если будут найдены другие записи, совпадающие с текущим LDAP-пользователем (т.е. совпадение более, чем одной записи), аутентификация закончится ошибкой. |
- Префиксы RDN. Имя RDN для поиска пользователя, без сегментов ЦОД. Это поле относится только к аутентификации по Типу
Use RDN Prefix
. - Домен по умолчанию. Имя домена для использования, если он не был определен в имени пользователя при входе.
- Имя пользователя. Поле предоставляет имя пользователя. Относится только к аутентификации по Типу
Use Authentication User
. - Пароль. Пользовательский пароль. Это поле относится только к аутентификации по Типу
Use Authentication User
. - Домен для поиска. Домен для поиска пользователей. Либо Использовать доменную часть имени пользователя (например, часть логина аутентификации после символа
@
), либо Использовать домен по умолчанию (например, значение параметра домена по умолчанию). - Использовать SSL. Определяет, будет ли использоваться безопасный протокол LDAPs.
- Файл доверенного хранилища. Путь к доверенному хранилищу Java, который содержит сертификат SSL для использования при подключениях по LDAPs.
- Пароль доверенного хранилища. Пароль от доверенного хранилища Java, который содержит сертификат SSL для использования при подключениях по LDAPs.
Аутентификация с использованием RDN префикса
Вот как происходит аутентификация по Типу Use RDN Prefix
:
- LDAP запросы делаются к пользователям из списка Домен для поиска, один запрос на каждую запись в таблице Префиксы RDN. Доменная часть запроса формируется путем соединения текущего Префикса RDN и
,DC=
Lookup Domain. Область поиска LDAP устанавливается на Поддерево. Поиск пользователей осуществляется по LDAP-параметру userPrincipalName. - Все перечисленные выше запросы должны возвращать строго всего один результат, иначе аутентификация завершится ошибкой.
- Если найденный LDAP-пользователь имеет атрибут primaryGroupID, имя группы пользователя вычисляется путем скрининга таблицы Соответствие контейнеров по умолчанию. Имя группы, найденной в записи с ID то же, что и используемый primaryGroupID.
- Наконец, пользователь SberMobile Server ищется в таблице Соответствие параметров пользователя LDAP пользователям SberMobile.
Аутентификация с использованием пользователя аутентификации
Вот как происходит аутентификация по Типу Use Authentication User
:
- Делается LDAP-запрос, чтобы найти пользователя с LDAP-атрибутом sAMAccountName, равным логину аутентификации. ля выполнения запроса используются настройки Имя пользователя и Пароль.
- Пользователь SberMobile Server ищется в таблице Соответствие параметров пользователя LDAP пользователям SberMobile по атрибутам пользователя, найденным упомянутым запросом.