#spring #security #server #cas #single-logout
#spring #Безопасность #сервер #cas #одиночный выход
Вопрос:
Я пытаюсь выполнить одиночный выход из приложения Spring Boot с использованием сервера CAS.Я могу выйти из приложения Spring и CAS-сервера, но я хочу перенаправить на свою пользовательскую страницу выхода из приложения springhttps://applicationip:port/application/logoutsuccesspage вместо страницы выхода CAS, т.е.https://casserverip:port/cas/logout
Ответ №1:
Документация — ваш друг.
Цитирую из официальных документов:
Согласно протоколу CAS, конечная точка /logout отвечает за уничтожение текущего сеанса единого входа. После выхода из системы также может быть желательно перенаправить обратно на службу. Это контролируется путем указания ссылки перенаправления через параметр service. Указанная служба должна быть зарегистрирована в реестре служб центров сертификации и включена, а центрам сертификации должно быть разрешено выполнять перенаправления служб.
и связанные свойства приложения:
# cas.logout.followServiceRedirects=false
# cas.logout.redirectParameter=service
# cas.logout.redirectUrl=https://www.github.com
# cas.logout.confirmLogout=false
# cas.logout.removeDescendantTickets=false
Итак, сначала вы должны указать центрам сертификации следовать перенаправлениям при выходе из системы, установив:
cas.logout.followServiceRedirects=true
а затем укажите URL, по которому вы хотите перенаправлять пользователей после выхода из системы:
cas.logout.redirectUrl=https://applicationip:port/application/logoutsuccesspage
Ссылки: Выход из системы — Одиночный выход и свойства CAS
Примечание: Документы относятся к ветке 5.3.x .