Настроить федерацию на стороне Keycloak
Настроить федерацию на стороне Keycloak
В результате настройки будет создано SAML-приложение.
- Настройте SAML-приложение.
- Если при создании федерации вы отметили чекбокс Подписывать запросы аутентификации, в SAML-приложении настройте проверку цифровой подписи.
1. Настроить SAML-приложение
- В панели управления Keycloak войдите в аккаунт администратора (Administration Console).
- Перейдите в раздел Clients.
- Нажмите Create client.
- На шаге General Settings в поле Client type выберите SAML.
- В поле Client ID вставьте URL, на который будут перенаправляться пользователи после аутентификации:
https://api.selectel.ru/v1/federations/saml/<federation_id>
. Укажите<federation_id>
— ID федерации на стороне Selectel, можно посмотреть в панели управления: перейдите в раздел Управление доступом → Федерации → строка федерации → поле ID. - В поле Name введите имя SAML-приложения.
- Нажмите Next.
- На шаге Login Settings в поле Root URL вставьте
https://api.selectel.ru/v1/federations/saml/<federation_id>
- В поле Home URL вставьте
https://my.selectel.ru/federated-login
- В поле Valid Redirect URIs вставьте
https://api.selectel.ru/v1/auth/federations/<federation_id>/saml/acs
- Нажмите Save.
- В блоке SAML capabilities в поле Name ID Format выберите формат идентификатора пользователя — username или email.
- Включите тумблеры Force POST binding и Include AuthnStatement.
- В блоке Signature and Encryption включите тумблер Sign assertions.
- Если вы не планируете настраивать проверку цифровой подписи, убедитесь, что в блоке Signing keys config выключен тумблер Client signature required.
- В поле Signature algorithm выберите RSA_SHA256.
- В поле SAML Signature Key Name выберите NONE.
- В блоке Logout settings включите тумблер Front channel logout.
- Нажмите Save.
2. Настроить проверку цифровой подписи
Настраивать проверку цифровой подписи нужно, если при создании федерации вы отметили чекбокс Подписывать запросы аутентификации.
- Скачайте сертификат Selectel для подписи запросов.
- В панели управления Keycloak перейдите в раздел Clients.
- Откройте страницу SAML-приложения → вкладка Keys.
- В блоке Signing keys config включите тумблеры Encrypt Assertions и Client signature required.
- В блоке Encryption keys config включите тумблер Client Signature Required.
- В поле Select method выберите Import.
- В поле Archive Format выберите Certificate PEM. Если пункт Certificate PEM отсутствует, закройте окно, нажмите Regenerate → Yes → Import key. Пункт появится в списке.
- Нажмите Browse и выберите сертификат, который вы скачали на странице федерации в Selectel.
- Нажмите Confirm.