ここで重要なのは、ローカルアプリケーションセッションをログアウトしてから、casログアウトサービスを呼び出すことです。私は、これはあなたがシングルログアウトの世話をする、バネのsecurity.xmlに/ログアウト/ CAS次のエントリにリダイレクトする場合、アプリケーションのログアウト・コントローラは
public ModelAndView logout(HttpServletRequest request) {
SecurityContextHolder.clearContext();
request.getSession(false).invalidate();
return new ModelAndView("redirect:/logout/cas");
}
のようになります方法です想像します。
<!-- This filter handles a Single Logout Request from the CAS Server -->
<bean id="singleLogoutFilter" class="org.jasig.cas.client.session.SingleSignOutFilter">
<property name="artifactParameterName" value="SAMLart"></property>
</bean>
<!-- This filter redirects to the CAS Server to signal Single Logout should be performed -->
<bean id="requestSingleLogoutFilter" class="org.springframework.security.web.authentication.logout.LogoutFilter">
<constructor-arg value="https://${cas.server.name}/cas/logout" />
<constructor-arg>
<bean class="org.springframework.security.web.authentication.logout.SecurityContextLogoutHandler" />
</constructor-arg>
<property name="filterProcessesUrl" value="/logout/cas" />
</bean>
次のリンクが役立ちます。CAS Single LogoutこのリンクはCASバージョン4.2.x用です。