Настройка клиента Keycloak
Это второй из трех этапов настройки. Перед его выполнением настройте провайдер Keycloak.
Условные обозначения
Базовый адрес Smart Monitor Web зависит от схемы публикации:
| Токен | Описание | Прямая публикация | Через прокси |
|---|---|---|---|
<OSD_BASE> | базовый адрес Smart Monitor Web | https://<OSD_HOST>:5601 | https://<OSD_HOST> |
Остальные обозначения от схемы публикации не зависят:
| Токен | Описание |
|---|---|
<OSD_HOST> | внешнее имя хоста с Smart Monitor Web |
<CLIENT_ID> | техническое имя клиента, уникальное для каждого хоста |
<CLIENT_SECRET> | секрет клиента, вкладка Credentials |
Добавление клиента
Перейдите Clients - Create client.
Экран 1. Общие параметры
В поле Client type выберите OpenID Connect, а в поле Client ID укажите <CLIENT_ID>.
Экран 2. Capability config
| Поле | Значение | Назначение |
|---|---|---|
Client authentication | On | появляется client secret |
Standard flow | отмечен | authorization code flow |
Direct access grants | снять | иначе токен можно получить по логину и паролю через API, в обход второго фактора |
Implicit flow | снять | устарел |
Service accounts roles | снять | не нужен |
Экран 3. Login settings
| Поле | Значение |
|---|---|
Root URL | <OSD_BASE> |
Home URL | <OSD_BASE> |
Valid redirect URIs | <OSD_BASE>/auth/openid/login |
Valid post logout redirect URIs | <OSD_BASE>/* |
Web origins | <OSD_BASE> |
Для входа используется значение Valid redirect URIs. Звездочка допустима только в Valid post logout redirect URIs, а значение Valid redirect URIs Keycloak сверяет посимвольно.
Секрет клиента <CLIENT_SECRET> находится в поле Client secret на вкладке Credentials.
Группы в токене
Перейдите в Clients - <CLIENT_ID> - Client scopes - <CLIENT_ID>-dedicated - Add mapper - By configuration - Group Membership и задайте значения:
| Поле | Значение |
|---|---|
Token Claim Name | groups |
Full group path | Off |
Add to ID token | On |
Маппер создается отдельно для каждого клиента. Он необходим для корректной привязки группы к backend_role в Smart Monitor Data Storage.
Далее: Настройка Smart Monitor.