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

Аутентификация

Первичная аутентификация

Чтобы начать работу в Платформе Боцман пользователь должен пройти аутентификацию в Web-панели Платформы.

Первый вход осуществляется администратором, определённым на этапе установки.

Адрес Web-панели и пароль администратора также определяются на этапе установки.

Подробнее об определении администратора: Установка управляющего кластера.

Подробнее о работе в Web-панели: Web-интерфейс платформы

Экран входа в Web-панель Боцман при первой аутентификации: login

Управление пользователями

После авторизации в системе, администратор может перейти в меню управления Пользователи(Users & Autentification) для добавления новых пользователей Платформы, назначения им групп и ролей, а так же, подключения внешних провайдеров аутентификации.

Пользователи, создаваемые в Web-панели, принадлежат собственному поставщику идентификации Платформы Боцман - Боцман (Bootsman).

manage_users manage_users

Система единого входа (Single Sign-On)

Платформа Боцман обеспечивает систему единого входа для своих приложений (SSO).
Единый вход доступен для Web-панели и приложения мониторинга – Grafana. Таким образом, когда пользователь переключается из Web-панели в интерфейс приложения Grafana, ему не требуется проходить дополнительную аутентификацию.
Выход из Web-панели приводит к автоматическому выходу из Grafana.

Настройка внешних провайдеров аутентификации

Платформа Боцман позволяет подключать внешние провайдеры аутентификации.

Поддерживаемые Платформой Боцман провайдеры делятся на две группы:
- LDAP-провайдеры
- OIDC-провайдеры


Для создания и настройки нового провайдера аутентификации перейдите в меню Пользователи(Users & Autentification) > Провайдеры авторизации(Auth Providers)

Users & Autentification Users & Autentification

Создайте новое подключение с помощью кнопки Создать(Create)

Add Provider Add Provider

В окне конфигурации подключения любого типа провайдера аутентификации требуется заполнить следующие основные параметры: type type - ID - уникальный идентификатор провайдера в платформе;
- Имя(Name) - имя провайдера;
- Тип(Type) - тип провайдера.

После выбора конкретного типа провайдера Платформа заполнит некоторые параметры значениями по-умолчанию, характерными для выбранного типа провайдера, остальные параметры подключения необходимо указать вручную.

Note

Для настройки предусмотрен режим конфигурации в формате YAML, чтобы переключиться на этот режим нажмите кнопку Edit YAML в правом нижнем углу окна конфигурации.

Warning

Наборы обязательных параметров для групп LDAP и OIDC отличаются.

Параметры для LDAP-коннекторов

Блок Соединение и безопаность (Connection & Security)

Определяет базовые параметры для связи с LDAP-сервером. connect_security
connect_security
Хост и необязательный порт LDAP сервера (The host and optional port of the LDAP server) - IP-адрес или DNS-имя LDAP-сервера. Допустимо указывать port. Если port не задан, то система определяет его по значению следующего параметра блока - Connection Mode: 389 для "insecure" or "StartTLS" соединений, 636 для "secure" соединений .

Примеры

ldap.company.local
ldap.company.local:389
192.168.1.5
10.0.0.10:636


Режим подключения (Connection mode) - указывает параметры TLS-шифрования LDAP-сервера:
- LDAP,
- LDAPS,
- LDAP+StratTLS.


Пропустить проверку TLS сертификата (Skip TLS certificate verification) - активируйте этот чекбокс для отключения верификации сертификата, например если используется self-signed сертификат.
BindDN и Bind Password - логин и пароль сервисной учетной записи. Под этим аккаунтом Платформа Боцман присоединяется к LDAP-серверу для получения информации о пользователях и группах.

Определяет настройки поиска пользователей на LDAP-сервере - какие пользователи из всех, существующих на LDAP-сервере, будут доступны для Платформы Боцман, и как атрибуты пользователей LDAP-сервера отражаются в Платформе Боцман. user_search
user_search

Параметры поиска (Search Location):
Base DN - корневой узел структуры домена для поиска пользователей

Пример

cn=users,dc=bootsman,dc=lan


Фильтр (Filter) - LDAP-фильтр для найденных объектов в структуре.

Пример

objectClass=person


Область поиска (Search Scope) - определяет зону поиска пользователей на LDAP-сервере: - Поддерево (Subtree): поиск осуществляется по всему поддереву LDAP, начиная от корня, определяемого параметром Base DN, - Один уровень (One Level): поиск осуществляется среди прямых потомков базового узла (на один уровень ниже)

Параметры Сопоставления пользователей (User Matching и User Attribute Mapping):
Атрибут имени пользователя (Username Attribute) - атрибут, который будет использоваться как login в списках пользователей платформы Боцман.
Атрибут поиска (Search Attribute) - атрибут, по которому осуществляется поиск пользователя. Если атрибут не задан, то значение атрибута "Search Attribute" зависит от конкретной реализации LDAP-сервера. (см. также Name Attribute)
ID Атрибут (ID Attribute) - атрибут, который определяет уникальный идентификатор пользователя в дереве каталога
Email Атрибут (Email Attribute) - имя атрибута на LDAP-сервере, хранящего электронную почту пользователя.
Name Атрибут (Name Attribute) - имя атрибута , который содержит логин пользователя. Использование Name Attribute или Search Attribute определяется настройками конкретного LDAP-сервера. (см. также Search Attribute)
Preferred Username атрибут (Preferred Username Attribute) - атрибут задающий, какой конкретно атрибут из найденной записи LDAP использовать внутри Платформы Боцман в качестве отображаемого имени пользователя.

Параметры email:
Email суффикс (Email Suffix) - почтовый суффикс, формирующий email адрес из логина пользователя.

Определяет настройки поиска групп пользователей на LDAP-сервере. group_search group_search

Параметры поиска:
Base DN - корневой узел структуры домена для поиска групп

Пример

cn=groups,cn=accounts,dc=bootsman,dc=lan


Фильтр (filter) - LDAP-фильтр для найденных объектов в структуре.

Пример

objectClass=group


Область поиска (Search Scope) - определяет зону поиска групп на LDAP-сервере: - Поддерево (Subtree): поиск осуществляется по всему поддереву LDAP, начиная от корня, определяемого параметром Base DN,
- Один уровень (One Level): поиск осуществляется среди прямых потомков базового узла (на один уровень ниже)


Атрибут поиска (Search attribute) - атрибут, по которому система ищет группу.

Параметры сопоставления атрибутов групп:
Пары атрибутов User attribute <-> Group attribute - это фильтры для сопоставления пользователя и группы.

Сопоставление атрибутов группы (Group Attribute Mapping):
Name Атрибут (Name Attribute) - атрибут, использующийся в качестве имени группы,
ID Атрибут (ID Attribute) - атрибут, использующийся как уникальный идентификатор группы.
Member Атрибут (Member Attribute) - атрибут, содержащий список пользователей группы.

Блок Сертификаты (Certificates)

Параметры этого блока используются для настройки TLS-шифрования в случае использования в конфигурации безопасного LDAP (LDAPS или StartTLS). certificates
certificates

Блок Login UI

Параметр Подсказка имени пользователя (UsernamePrompt) - это статический текст-подсказка, отображаемый в запросе на ввод пароля. Если он не задан, то по-умолчанию используется текст "Username". login
login

Параметры для OIDC-коннекторов

Блок Основные настройки

Определяет базовые параметры для связи с OIDC-сервером. basic_settings
basic_settings


Issuer URL - Канонический URL провайдера. Это значение должно совпадать со значением, возвращаемым в provider config discovery. См. документацию

URL перенаправления (Redirect URL) - URL-адрес эмитента Dex (URL-адрес Боцман) + "/sso/callback". Это неизменяемый параметр.
Client ID - публичный идентификатор, выдаваемый authorization server клиентскому приложению при регистрации

Client Secret - секрет, выдаваемый authorization server клиентскому приложению при регистрации

TLS & Client Authentication (Advanced)

Этот блок отвечают за настройку Mutual TLS. Используется в случае, если необходимо подтвердить подлинность Платформы Боцман внешнему OIDC-серверу авторизации. tls_client tls_client


Client сертификат - открытый клиентский сертификат в формате PEM, который Платформа Боцман отправляет провайдеру, чтобы тот мог проверить подпись.
Client Private Key - закрытый ключ в формате PEM, используемый для подписания запросов.
Root CA сертификаты - один или более сертификат удостоверяющего центра (CA). Используется если у внешнего OIDC-провайдера установлен самоподписанный TLS-сертификат.
Пропустить проверку TLS - отключение проверки удостоверяющего центра.

Scopes & Provider Options

Блок определяет, какие данные о пользователе запрашивает Dex у внешнего OIDC-провайдера. scopes scopes

Идентификация пользователя и & Claims

Эти параметры определяют какие именно поля от внешнего провайдера будут использоваться в качестве id, имени пользователя, его email и членства в группах. user_claims user_claims


User ID Claim - claim, используеумый как user id.
Значение по умолчанию: sub
См. документацию

Username Claim - claim, используеумый как имя пользователя.
Значение по умолчанию: name.

Переопределить Claim Mapping - используется для переопределения параметров, заданных в claimMappings. Например, если доступны claims "email" и "preferred_email", по умолчанию Боцман всегда использует "email" независимо от claimMapping.email. Эта настройка позволяет переопределить поведение Боцман по умолчанию и принудительно использовать сопоставления, определённые в "claimMapping".

Preferred Username - claim, используеумый как preferred username.
По умолчанию: preferred_username

Email - claim, используеумый как email.
По умолчанию: email

Groups - claim, используеумый как groups.
По умолчанию: groups

Claim Modifications

Позволяет создать новую группу на основе других claims, которые объединяются с использованием разделителя. В настоящее время поддерживаются только строковые claims, остальные пропускаются. Новое имя группы добавляется в groups claims и передаётся клиентам.

Предупреждение

Редактирование этого блока через форму не поддерживается.
Для редактирования используйте YAML формат.

Provider Discovery Overrides

Блок используется для принудительного назначения URL-адреса OIDC Discovery.

По стандарту OIDC приложения и сервисы находят конфигурацию поставщика (конечные точки авторизации, токенов, ключи подписи JWKS и т.д.) по автоматически формируемому пути {issuer}/.well-known/openid-configuration.

Provider Discovery Overrides позволяет явно указать пути для Authorization URL, Token URL, JWKS URL полностью игнорируя базовый URL издателя (issuer). overrides overrides

Полный список провайдеров, поддерживаемых Платформой Боцман

LDAP-группа:
- Open LDAP
- MS AD
- FreeIPA
- ALD Pro.

OIDC группа:
- Generic OIDC
- Keycloak
- Identity Blitz.

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

Заметка

Для подключения провайдера Identity Blitz рекомендуется воспользоваться отдельной инструкцией: Установка Identity Blitz

Внимание!

Протоколы LDAP и OIDC работают по-разному, что приводит к разному поведению при выходе из системы:
- При выходе из web-панели LDAP-пользователя сессия пользователя удаляется полностью.
- При выходе из web-панели OIDC-пользователя (например Keycloak) сессия удаляется внутри Платформы Боцман, но не в OIDC-поставщике идентификации. Для полного закрытия OIDC-сессии требуется не только осуществить выход из web-панели Боцман, но и осуществить выход из сессии OIDC-провайдера (Keycloak).

Редактирование конфигурации и проверка работоспособности подключенных провайдеров аутентификации

При выборе конкретного провайдера из ранее созданных подключений вам будет доступно следующее вызываемое окно возможностей:
options
options
- Test - позволяет выполнить проверку корректности подключения, указав имя пользователя и пароль из списка пользователей провайдера;
- Редактировать конфигурацию - открыть окно редактирования параметров подключения используя форму Web-панель;
- Редактировать YAML - открыть окно редактирования параметров подключения в формате YAML;
- Клонировать - создать копию выбранного подключения;
- Скачать YAML - сохранить конфигурацию локально в формате YAML;
- Удалить - удалить выбранное подключение.