Настройка параметров политик безопасности ПУИД#
Данный раздел описывает, где находятся параметры политик безопасности сервиса roox-sso, какие значения рекомендуется использовать и как применять изменения.
Общая схема настройки#
Администратор изменяет параметры политик безопасности в файлах формата *.properties, которые подключены к roox-sso через общий файл конфигурации:
/usr/share/tomcat/config.xml
Если один и тот же параметр указан в нескольких подключенных файлах, сервис roox-sso применяет значение из файла с большим приоритетом согласно /usr/share/tomcat/config.xml. Перед изменением следует проверить, не задан ли тот же параметр в другом подключенном файле с более высоким приоритетом.
Часть параметров можно задавать с разной точностью: для сервера в целом, для отдельного реалма или для конкретного приложения. Поддерживаемая точность зависит от конкретного параметра и указана в справочнике параметров. Если параметр поддерживает несколько уровней, используется самое точное совпадение ключа:
Значение для реалма и приложения (
<realm>+<clientId>).Значение только для реалма (
<realm>).Общее значение без уточнения реалма и приложения.
Встроенное значение по умолчанию, если настройка не задана.
Для времени жизни OAuth2-токенов ключи уровня приложения задаются через oauth2.sp, а ключи уровня реалма и общие значения — через oauth2.idp.
Например, для срока действия кода авторизации приложения arm_cc в реалме employee сервис roox-sso проверяет значения в порядке:
com.rooxteam.sso.employee.oauth2.sp.arm_cc.authorization_code.ttl
com.rooxteam.sso.employee.oauth2.sp.authorization_code.ttl
com.rooxteam.sso.oauth2.sp.authorization_code.ttl
com.rooxteam.sso.employee.oauth2.idp.authorization_code.ttl
com.rooxteam.sso.oauth2.idp.authorization_code.ttl
встроенное значение по умолчанию
После изменения параметров перезапустите сервис roox-sso.
Типовые операции администратора#
Изменение срока действия OAuth2-токена#
Для изменения срока действия OAuth2-токена необходимо:
Определить тип токена:
authorization_code,access_tokenилиrefresh_token.Определить нужную точность настройки: конкретное приложение, реалм или общее значение.
Открыть файл из раздела Справочник путей к конфигурационным файлам.
Добавить или изменить параметр TTL.
Перезапустить сервис
roox-sso.Проверить выпуск токена и его срок действия.
Изменение ограничений сессии#
Для изменения ограничений сессии необходимо:
Открыть
/usr/share/tomcat/realms.properties.Изменить параметры максимального времени жизни сессии, времени бездействия или цепочки refresh token.
Удостовериться, что значения согласованы с требованиями безопасности.
Перезапустить сервис
roox-sso.Проверить вход пользователя и завершение сессии по заданным ограничениям.
Изменение лимитов неуспешных попыток входа#
Для изменения лимитов неуспешных попыток входа необходимо:
Открыть файл
/usr/share/tomcat/env.properties.Изменить параметры блокировки или капчи.
Если интеграция с капчей не настроена, задать лимит капчи больше лимита блокировки, чтобы временная блокировка наступала раньше запроса капчи.
Перезапустить сервис
roox-sso.Проверить сценарий ввода неверного пароля на тестовом пользователе.
Справочник путей к конфигурационным файлам#
Файл настройки на VM |
Назначение |
Ответственный сервис |
Действие после изменения |
|---|---|---|---|
|
Список подключаемых файлов настроек и порядок их применения |
|
Перезапуск |
|
Настройки OAuth2/OIDC-клиентов и TTL-токенов уровня приложения |
|
Перезапуск |
|
Настройки реалмов, общие TTL OAuth2/OIDC и параметры сессии |
|
Перезапуск |
|
|
|
Перезапуск |
|
Параметры капчи и временной блокировки после неуспешных попыток входа |
|
Перезапуск |
Справочник параметров#
Значения времени в параметрах ниже задаются в секундах, если явно не указано иное. В колонке Значение по умолчанию указано значение, которое используется, если параметр не задан в конфигурации.
Параметр | Значение по умолчанию |
Пример |
Описание |
||
|---|---|---|---|---|
|
|
Срок действия кода авторизации для получения токена. Для приложения используется
ключ |
||
|
|
|
Срок действия токена доступа. Для приложения используется ключ |
|
|
|
|
Срок действия токена обновления. Для приложения используется ключ |
|
|
|
|
Максимальное время жизни сессии единого входа. Может быть задано для реалма или
как общее значение |
|
|
|
|
Максимальное время бездействия до завершения сессии. Может быть задано для
реалма или как общее значение |
|
|
|
|
Максимальное время жизни цепочки обновления токенов. Может быть задано для
реалма или как общее значение
|
|
|
|
|
Максимальное число одновременных сессий для привилегированных пользователей.
Может быть задано для реалма или как общее значение
|
|
|
|
|
Роль привилегированных пользователей. Может быть задана для реалма или как общее
значение |
|
|
|
|
Максимальное число одновременных сессий для остальных пользователей. Может
быть задано для реалма или как общее значение
|
|
|
|
|
Количество неуспешных попыток аутентификации по паролю до необходимости проверки
капчи. Может быть задано для реалма или как общее значение
|
|
|
|
|
Количество неуспешных попыток аутентификации по паролю до временной блокировки.
Может быть задано для реалма или как общее значение
|
|
|
|
|
Время временной блокировки после многократного ввода неверного пароля или капчи.
Может быть задано для реалма или как общее значение
|
|
Проверка после изменения#
На этапе проверки после внесения изменений необходимо:
Удостовериться, что измененный файл подключен в
/usr/share/tomcat/config.xmlи не переопределяется файлом с более высоким приоритетом.Перезапустить сервис
roox-ssoкомандой:
sudo systemctl restart roox-sso
Проверить запуск сервиса по журналу
/var/log/roox-sso/roox-sso.log.Выполнить вход от лица тестового пользователя.
Для изменения TTL проверить выпуск токена и срок действия в ответе
token endpointилиtokeninfo.Для изменения блокировки или капчи проверить сценарий неуспешного ввода пароля на тестовом пользователе.