Я настроил CAS на моей локальной машине с LDAP и развернул на сервере Tomcat.И я интегрировал это приложение CAS с моим приложением с сервером tomcat, настроенным на другой порт.
И оно успешно работает без включенного SSL.И я сгенерировал ключи SSL и импортировал их в «cacerts» в папке домашней безопасности Java.
Включен порт SSL на развернутом сервере CAS Tomcat с использованием этого сгенерированного файла keystone, включенного в «server.xml»файл.Теперь, когда я запускаю и сервер, и перехожу к своему приложению, появляется страница входа в систему сервера CAS, и когда я ввожу учетные данные, она сопоставляет учетные данные с сервером LDAP (я проверил журналы).Но когда дело доходит до моего приложения, в котором мы написали пользовательский « CasAuthentication », « принципал » выглядит как « _cas_stateful_ ».
Вот мой код ( Grails 2.5 ) для получения LDAP карты атрибутов из запроса:
def sessionObj = RCH.currentRequestAttributes().request.session
sessionObj.setAttribute("auth_name", sessionObj.getAttribute( AbstractCasFilter.CONST_CAS_ASSERTION ).principal.name)
def attributeMap = sessionObj.getAttribute( AbstractCasFilter.CONST_CAS_ASSERTION ).principal.attributes
"Принципал"в сессии не имеет значения.
Может ли кто-нибудь помочь мне в этом вопросе.Приложение отлично работает без включенного SSL.Но мне нужно, чтобы единый вход должен быть включен для моего приложения.Спросите меня, нужны ли вам, люди, какие-либо подробности для отладки.
Спасибо.