SSO (Single Sign On) — это технология, с помощью которой пользователь, будучи аутентифицированным в клиентской системе идентификации, будет автоматически авторизован на сервисах входящих в эту систему.
Рисунок 1 - Внешний вид формы входа платформы SSO
Необходимо отредактировать конфигурационный файл /etc/eltex-wifi-cab/system.xml
Где в блоке настроек SSO указать параметры для интеграции в систему.
<!-- SSO Settings --> <entry key="sso.enabled">false</entry> <entry key="sso.redirectUri">http://localhost:8080/wifi-cab/sso</entry> <entry key="sso.clientSecret"></entry> <entry key="sso.clientId"></entry> <!-- SSO Auth --> <entry key="sso.auth.server.protocol">http</entry> <entry key="sso.auth.server.address"></entry> <entry key="sso.auth.server.port">80</entry> <!-- SSO REST --> <entry key="sso.rest.server.protocol">http</entry> <entry key="sso.rest.server.address"></entry> <entry key="sso.rest.server.port">80</entry> <entry key="sso.rest.server.timeout.sec">10</entry> <entry key="sso.rest.username"></entry> <entry key="sso.rest.password"></entry> |
Параметр | Значение |
---|---|
sso.enabled | включение интеграции с SSO (может принимать значения true/false) |
sso.redirectUri | адрес, с которого производится перенаправление на платформу SSO |
sso.clientSecret | секретный ключ клиента |
sso.clientId | идентификатор клиента, созданный в системе SSO |
sso.auth.server.protocol | протокол обращения к Auth-серверу SSO |
sso.auth.server.address | публичный адрес Auth-сервера SSO |
sso.auth.server.port | порт обращения к Auth-серверу SSO |
sso.rest.server.protocol | протокол обращения REST API SSO |
sso.rest.server.address | публичный адрес REST API SSO |
sso.rest.server.port | порт обращения к REST API SSO |
sso.rest.servertimeout.sec | время ожидания ответа от REST API SSO (в сек.) |
sso.rest.username | логин пользователя SSO платформы для взаимодействия с базой данных(добавления учётных записей) |
sso.rest.password | пароль пользователя SSO платформы для взаимодействия с базой данных(добавления учётных записей) |
Необходимо отредактировать конфигурационный файл /etc/eltex-portal-constructor/application.conf
Где в блоке настроек SSO указать параметры для интеграции в систему.
sso { enabled = false rest { scheme = http host = localhost port = 80 sso_api_path = /apiman-gateway/b2b_test } auth { scheme = http host = localhost port = 80 authentication_path = /auth/realms/b2b/protocol/openid-connect/auth logout_path = /auth/realms/b2b/protocol/openid-connect/logout } params { client_id = id # URL of epadmin, URL must be in double quotes (!!!) redirect_uri = "http://localhost:8080/epadmin/sso" client_secret = secret } } |
Параметр | Значение |
---|---|
enabled | включение интеграции с SSO (может принимать значения true/false) |
rest | блок настроек взаимодействия с REST API SSO |
auth | блок настроек взаимодействия с Auth-сервером SSO |
scheme | протокол обращения к SSO-серверу |
port | порт обращения к SSO-серверу |
client_id | идентификатор клиента, созданный в системе SSO |
client_secret | секретный ключ клиента |
redirect_uri | адрес, с которого производится перенаправление на платформу SSO |
authentication_path | URL для аутентификации на платформе SSO |
logout_path | URL для выхода с платформы SSO |
sso_api_path | URL для работы с REST API SSO |
После изменения настроек перезапустите tomcat ( service tomcat7 restart ) для их применения. |
При включенной интеграции с платформой SSO Учётные Записи ЛК автоматически экспортируются в базу данны платформы SSO, с предварительной проверкой возможности создания пользователя на платформе SSO и ЛК. Из автоматического экспорта исключаются Учентые Записи пользователей с нулевой и default_platform_xxx системными ролями в ЛК. Если при создании Учётной Записи в ЛК, создаваемый пользователь есть в системе SSO -вернётся ошибка 409 (Рисунок 2).
Рисунок 2 - Вывод ошибки при создании новой Учётной Записи в ЛК, логин которой уже есть в SSO.
Рисунок 3 - Проверка логина на платформе SSO
Рисунок 4 - Диалоговое окно сихронизации с SSO
При включенной интеграции с платформой SSO при переходе на http://<ip-сервера>:8080/wifi-cab/ или http://<ip-сервера>:8080/epadmin/ происходит автоматический редирект на страницу аутентификации на платформе SSO. При необходимости, для авторизации в Личном Кабинете и Конструкторе порталов без обращения к SSO (или пользователями, которые не заведены на платформу SSO) можно использовать http://<ip-сервера>:8080/wifi-cab/local_auth или http://<ip-сервера>:8080/epadmin/local_auth