当用户从一个Web应用程序导航到另一个Web应用程序时,CAS身份验证失败

时间:2012-05-17 23:37:13

标签: spring spring-security cas

我们有两个网络应用程序。两者都启用了CAS身份验证。我们可以从Web应用程序(应用程序A)导航到另一个应用程序(应用程序B)。有些时候sessionManagementFilter重定向到会话过期页面,当用户从应用程序A导航到B.我们正在获取应用程序B的会话无效页面。这是我们在applicationContext-security.xml文件中的弹簧配置设置。

知道是什么导致了这个问题。及时回应是可观的。

<http entry-point-ref="casProcessingFilterEntryPoint" >
        <custom-filter position="CAS_FILTER" ref="casProcessingFilter" />
    <custom-filter ref="sessionManagementFilter"   before="SESSION_MANAGEMENT_FILTER" />

    <logout logout-url="/j_spring_security_logout.xhtml" logout-success-url="calltoolSecurity{CAS_URL}/logout" invalidate-session="true" />
</http>

<beans:bean id="sessionManagementFilter" class="org.springframework.security.web.session.SessionManagementFilter">
    <beans:constructor-arg name="securityContextRepository" ref="httpSessionSecurityContextRepository" />
    <!-- this permits redirection to session timeout page from javascript/ajax or http -->
    <beans:property name="invalidSessionStrategy" ref="actInvalidSessionStrategy" />
</beans:bean>

<beans:bean id="actInvalidSessionStrategy" class="com.avivausa.api.web.JsfRedirectStrategy">
         <beans:constructor-arg name="invalidSessionUrl" value="/pages/system/errorSessionExpired.xhtml" />
</beans:bean>

1 个答案:

答案 0 :(得分:0)

请确保两个应用程序使用相同的CAS服务器登录。