Keycloak поддерживает как OpenID Connect Connect (расширение OAuth 2.0), так и SAML 2.0.
Подготовка
Для использования Keycloak необходимо иметь:
...
Ракета предоставляет вам:
- Client ID. Пример: пример "https://master.raketa.online",
- Master SAML proccessing Url". Пример: пример "https://master.raketa.online/sso/acs",
- Base Url". Пример: пример "https://master.raketa.online/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,
- customServiceProviderEntityId.
Настройка приложения
1. Авторизуйтесь на сайте Keycloak.
2. Перейдите во вкладку Clients. Нажмите кнопку "Create" для создания нового клиента.
23. В настройках создаваемого клиента укажите данные, полученные от Ракеты: Client ID, Master SAML proccessing Url, Base Url, Valid Redirect Uris. Пример заполнения ниже.
34. Проставьте значения on по флагам: Enabled, Include AuthnStatement, Sign Documents, Force POST Binding, Front Channel Logout. Пример заполнения ниже.
...