К основному содержимому
Настройка Keycloak SAML SSO
Обновлено больше недели назад

Доступно для: тариф Бизнес, тариф Корпоративный

Необходимая роль: Администратор Пространства

Настройка Keycloak

  1. Создайте или выберите группу пользователей (realm)

  2. В разделе "Clients" нажмите "Create client"

  3. В поле Client type нужно указать SAML, в поле Client ID нужно указать https://app.holst.so/gapi, далее нажимаем Next

  4. В поле Valid redirect URIs устанавливаем значение https://app.holst.so/gapi/sso/saml, в поле Master SAML Processing URL устанавливаем https://app.holst.so/gapi/sso/saml, далее жмём Save

  5. Прокручиваем открывшуюся страницу вниз к секции SAML capabilities, проставляем в поле Name ID format значение email, и включаем опцию Force Name ID format

  6. Далее переходим к секции Signature and Encryption, выставляем опцию Sign documents (опционально), выставляем опцию Sign assertions (обязательно) и нажимаем кнопку Save

  7. Далее переходим на вкладку Keys и выключаем опцию Client signature required

  8. Теперь переходим на вкладку Client scopes, и выбираем свой клиент, обычно в его имени есть Client ID как подстрока (в нашем случае это https://app.holst.so/gapi-dedicated)

  9. Далее необходимо добавить мапперы, если в появившемся окне у вас нет уже добавленных мапперов, то вам нужно нажать Configure a new mapper

    Если же у вас уже есть мапперы, то нужно нажать Add mapper > By configuration

  10. В открывшемся окне нужно добавить маппер для имени пользователя в соответствующий SAML аттрибут, нажмите на User Attribute

  11. В появившемся окне в поле Name ставим firstName, в поле User Attribute ставим firstName, в поле SAML Attribute Name ставим FirstName, далее жмём Save, и жмём на Dedicated scopes, чтобы вернуться к добавлению мапперов

  12. Теперь аналогично шагам 9-11 добавляем аттрибут lastName, в поле Name ставим lastName, в поле User Attribute ставим lastName, в поле SAML Attribute Name ставим LastName

  13. Для отображения аватарки пользователя необходимо также добавить маппер для аттрибута pictureUrl, он должен содержать URL на изображение, этот аттрибут является опциональным

Настройка Holst

Перейдите в Участники & Настройки > Единый вход (SSO), необходимо заполнить два поля SAML Sign-in URL и Key X509 Certificate

На странице с вашим realm откройте раздел Realm settings, прокрутите вниз, и нажмите на SAML 2.0 Identity Provider Metadata

Из открывшегося файла необходимо взятьзначение между тегами <ds:X509Certificate> и вставить его в поле Key X509 Certificate, не забудьте добавить -----BEGIN CERTIFICATE----- и -----END CERTIFICATE-----

Из тега <md:SingleSignOnService> с аттрибутом Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect" необходимо взять значение аттрибута Location и вставить его в поле SAML Sign-in URL

Итоговый результат настройки Holst, не забудьте сохранить внесённые изменения

Нашли ответ на свой вопрос?