Keycloak поддерживает как OpenID Connect Connect (расширение OAuth Raketa Travel поддерживает технологию единого входа через SAML 2.0), так и . Поставщиком учётных данных (identity provider, IdP) SAML 2.0 . может быть любая система, в том числе, собственная инсталляция Keycloak сервера.
Подготовка
Для использования настройки Keycloak необходимо иметь:
- учётную запись администратора Keycloak
быть администратором требуемого realm.
Ракета предоставляет вам:
- Client ID
Пример: пример "https://master.raketa.online",travel - Master SAML proccessing Url "
Пример: пример "https://master.raketa.onlinetravel/sso/acs", - Base Url"
Пример: пример "https://master.raketa.onlinetravel/sso/acs", - Valid Redirect Uris": пример "https://master.raketa.online/*"
После всех необходимых настроек вам следует передать в Ракету:
- clientId идентификатор клиента в Ракете,
- entityId = 'https://keycloak.raketa.online/realms/Raketa',
singleSignOnServiceUrl = url логина или входа в приложение SSO. Пример: 'https://keycloak.raketa.online/realms/Raketa/protocol/saml', - singleLogoutServiceUrl = url для выхода из приложения. Пример: 'https://keycloak.raketa.online/realms/Raketa/protocol/saml',
- x509cert сертификат,
- certFingerprint,
- certFingerprintAlgorithm,
- customServiceProviderEntityIdtravel/*
Настройка приложения
1. Авторизуйтесь на сайте KeycloakОткрыть панель администрирования необходимого realm.
2. Перейдите во вкладку Clients. Нажмите кнопку "Create client" для создания нового клиента.
2. На странице нового клиента необходимо указать Client ID и протокол (saml)
Предупреждение |
---|
Важно! Client ID необходимо указывать как в предоставленных свойствах. В противном случае ракета не сможет подтвердить аутентификацию. |
3. В настройках создаваемого клиента укажите данные, полученные от Ракеты: Client ID,
- Master SAML proccessing Url
...
- Base Url
...
- Valid Redirect Uris
...
И отключите
5. Передайте менеджеру ракеты данные настройки SAML со страницы Realm Settings
3.Проставьте значения on по флагам: Enabled, Include AuthnStatement, Sign Documents, Force POST Binding, Front Channel Logout. Пример заполнения ниже.