8.4.1. Кастомизация IDP
- Форма логина IDP
-
Файлы формы логина располагаются в каталоге
idp
веб-приложения. В случае деплоймента в Tomcat это каталогtomcat/webapps/app/idp
. Стандартные файлы можно заменить, создав файлы с такими же именами в каталолгеweb/idp
модуля web проекта.По умолчанию форма логина IDP использует механизм локализации на основе JavaScript-библиотеки webL10n, и содержит сообщения для английской и русской локали. Чтобы создать сообщения на других языках, создайте файл
modules/web/web/idp/l10n/locales.ini
и задайте в нем список файлов сообщений:[*] @import url(messages.properties) [ru] @import url(messages_ru.properties) [es] @import url(messages_es.properties)
Дополнительные файлы сообщений должны располагаться в этом же каталоге(
modules/web/web/idp/l10n
). В качестве шаблона для файлов сообщений используйте файлы из модуля cuba-idp, который доступен в виде JAR-зависимости в вашем проекте.Можно также полностью заменить форму логина путем создания собственных файлов
login.html
иjs/login.js
, либо изменить стили в файлеcss/login.css
. - Реализация IDP
-
Точки входа в IDP находятся в контроллерах Spring MVC
cuba_IdpController
иcuba_IdpServiceController
. Для реализации собственного поведения можно создать свои контроллеры и зарегистрировать их под этими же именами в файлеidp-dispatcher-spring.xml
модуля web.Стандартная реализация хранит сессии IDP на среднем слое и реплицирует их в кластере. Эта функциональность обеспечивается бином
cuba_IdpSessionStore
. Механизм хранения сессий может быть кастомизирован путем создания бина с таким же именем в модуле core проекта и регистрации его в соответствующем файлеspring.xml
. Подробнее см. Расширение бизнес-логики.