我们使用JASIG CAS-Server进行身份验证。 单点登录工作正常,但单点登录无法正常工作。
这是我要做的步骤:
因此,如果我退出http://foo.bar
它实际上有效,如果我再次调用它,我需要登录,但http://baar.bar
我仍然登录。
这是我的应用程序配置:
// Define the authentication providers
grails.plugin.springsecurity.providerNames = ["casAuthenticationProvider"]
// Define the CAS configuration
grails.plugin.springsecurity.cas.loginUri = "/login"
grails.plugin.springsecurity.cas.serviceUrl = "http://cas.bar/${appName}/j_spring_cas_security_check"
grails.plugin.springsecurity.cas.serverUrlPrefix ="https://cas.bar/cas"
grails.plugin.springsecurity.logout.afterLogoutUrl = "https://cas.bar/cas/logout?url=http://localhost:8080/${appName}"
grails.plugin.springsecurity.cas.userDetailsService = "CasUserDetailsService"
grails.plugin.springsecurity.seSessionFixationPrevention = false
为什么我仍然登录http://baar.bar
?
修改:
Cas Server正在向应用程序发送注销消息,在日志文件中打印如下:
DEBUG [org.jasig.cas.util.SimpleHttpClient] - <Finished sending message to https://baar.bar/j_spring_cas_security_check>
另一方面,我在apache2:
的日志文件中看到了incomming请求 "POST /j_spring_cas_security_check HTTP/1.1" 200 5655 "-" "Java/1.8.0_131"