Настройки консоли управления#
Консоль управления настраивается с помощью файлов console.conf
и credentials
. Далее в подразделах описаны возможные настройки.
Вход в консоль через SSO#
В консоль управления Blitz Identity Provider можно настроить вход через поставщика идентификации OIDC. В качестве такого поставщика может выступить как текущая установка Blitz Identity Provider, так и отдельная его установка или даже стороннее ПО, если оно совместимо с OIDC.
Поддерживаются следующие режимы входа в консоль управления:
стандартный режим по логину/паролю учетных записей, заведенных в разделе Администраторы;
режим входа через SSO;
гибридный режим входа, когда администратор может войти как по логину/паролю в стандартном режиме, так и через SSO.
При использовании режима SSO учетные записи администраторов не требуется заводить в разделе Администраторы.
Для настройки режима входа в консоль управления с помощью SSO выполните следующие действия:
В настройках поставщика SSO, через которого будет осуществляться вход в консоль, зарегистрируйте консоль управления как приложение. В разрешенных префиксах возврата (
redirect_uri
) укажите домен установки Blitz Identity Provider. По итогам регистрации вы получитесlient_id
иclient_secret
приложения для консоли управления;в конфигурационном файле
console.conf
создайте блок настроекlogin
следующего содержания:
{
"login" : {
"fp" : {
"authUri" : "https://idp-host.com/blitz/oauth/ae",
"clientId" : "blitz-console",
"clientSecret" : "client_secret_value",
"logoutUrl" : "https://idp host.com/blitz/login/logout?post_logout_redirect_uri=https://idp host.com/blitz/console",
"scopes" : [
"openid"
],
"subjectClaim" : "sub",
"roleClaim" : "roles",
"tokenUri" : "https://idp-host.com/blitz/oauth/te"
},
"mode" : "sso"
}
}
Необходимо уточнить параметры:
В параметрах
authUri
иtokenUri
нужно указать адресаAuthorization Endpoint
иToken Endpoint
обработчиков внешнего поставщика идентификации.В параметрах
clientId
иclientSecret
указать значенияclient_id
иclient_secret
, присвоенный зарегистрированному во внешнем поставщике идентификации приложению, соответствующему консоли управления.В параметре
logoutUrl
прописать ссылку, на которую должен перенаправляться пользователь при выходе из консоли управления, чтобы был произведен единый выход через внешний поставщик идентификации.В параметре
scopes
прописать список разрешений, который должны быть запрошены (минимально необходимо только разрешениеopenid
).В
subjectClaim
указать имя атрибута из маркера идентификации (id_token
), используемого в качестве идентификатора учетной записи. Именно с таким идентификатором будет осуществлен вход администратора при режиме входаsso
.В
roleClaim
указать имя атрибута из маркера идентификации (id_token
), в котором передается роль (строка) или список ролей (массив строк) администратора. Именно с такими идентификаторами ролей будет осуществлен вход администратора при режиме входаsso
.В параметре
mode
нужно указать требуемый режим страницы входа:sso
– вход только через внешний поставщик идентификации (см. рисунок ниже);internal
– вход только по логину и паролю из настроек консоли управления. Если параметр не задан, то доступны оба варианта на выбор пользователя. При входе в режиме Войти через SSO не требуется предварительно создавать администратору учетные записи в меню Администраторы.
Чтобы не показывался промежуточный экран входа, в котором пользователь нажимает кнопку Войти через SSO, можно вызывать консоль управления с помощью ссылки следующего вида: https://hostname:port/blitz/console?mode=SSO
.
Ограничение сессий#
По политике безопасности может требоваться, чтобы пользователь или администратор одновременно не мог быть залогинен с нескольких устройств. Для удовлетворения такой политики безопасности при доступе администратора в консоль управления необходимо в конфигурационном файле console.conf
добавить блок session
:
"session" : {
"mode" : "exclusive",
"check-interval" : 10
}
При наличии такой настройки в случае, если будет зафиксирован вход администратора с учетной записью, которой уже выполнен вход, то в прежнем входе при любом действии в консоли управления будет отображена страница входа. Настройка check-interval
(задается в секундах) указывает в секундах период, как быстро в прежней сессии произойдет выход при появлении новой сессии.
Если по политике безопасности требуется также запретить наличие нескольких сессий для обычных пользователей, то такой режим можно включить избирательно для определенных пользователей при входе в определенные приложения. Это выполняется с помощью настройки процедуры входа.
Дополнительно в веб-приложении Личный кабинет нужно включить настройку, согласно которой будет происходить досрочный выход из веб-приложения в случае, если учетная запись пользователя заблокирована или была нарушена политика, запрещающая множественный вход пользователя. В конфигурационный файл blitz.conf
в блок настроек blitz.prod.local.idp.user-profile
нужно добавить настройку check-session-interval
, задающую период проверки веб-приложением активности сессии:
"user-profile" : {
"check-session-interval" : 10,
…
}
Роли и права доступа в консоль#
Стандартные роли администраторов описаны в ранее. В конфигурационном файле credentials
можно создать дополнительные роли администраторов или исправить права доступа в существующих ролях. Для этого в блоке roles
нужно скорректировать состав прав доступа (privileges
), соответствующих роли (name
).
Пример настройки:
"roles" : [
{
"name" : "new-role",
"privileges" : ["w_app","w_system","w_ui","w_user","w_admin","r_audit"]
}
]
В случае создания новых ролей для них также нужно определить текстовые строки с названием ролей. Пример текстовой строки для новой роли new_role
:
page.admins.role.new-role=имя новой роли
Список доступных прав доступа для заполнения настройки privileges
приведен в таблице ниже.
Права доступа консоли управления Blitz Identity Provider
Право доступа |
Доступные разделы консоли управления |
---|---|
|
Приложения |
|
Источники данных, Аутентификация, Процедуры входа, Поставщики идентификации, SAML, OAuth 2.0, Устройства, Сообщения |
|
Сервисы самообслуживания, Внешний вид |
|
Администраторы, События |
|
Пользователи, Группы, Права доступа |
|
Пользователи (только просмотр), Группы (только просмотр), Права доступа (только просмотр) |
|
События (только просмотр) |
Смена пароля администратора#
Для изменения пароля администратора консоли выполните следующие действия:
Откройте файл
/usr/share/identityblitz/blitz-config/credentials
.Укажите новый пароль в параметре
pswdHash
. Пароль указывается в открытом виде без шифрования. После применения изменений система его зашифрует."users" : [ { "pswdHash" : "new$password", "roles" : [ "root" ], "username" : "admin" } ]
Перезапустите сервис
blitz-console
.sudo systemctl restart blitz-console