SSO 用に CAS サーバー 4.0 を実装しています。3 つのアプリ (Spring CAS セキュリティを備えた Spring Web MVC) が CAS サーバーに接続しています。JPA でチケットを管理し、ユーザー名で CAS の認証をチェックするように CAS サーバーを構成します。現在、アプリのパスワードを忘れた場合の機能を作成しています。パスワードがリセットされた後、CAS サーバーでユーザーの Cookie/セッションを無効にする (またはログアウトする) 方法が問題です (ユーザーがログインして忘れて実行できることに注意してください)。別のユーザーのパスワード)。CASでできますか?どんな助けでも大歓迎です。君たちありがとう。
1101 次
1 に答える
0
私は cas 3.1 を実装しており、これが私がしていることです:
コントローラーの方法
@RequestMapping(value = "/onCompletePasswordReset.html", method = RequestMethod.GET)
public String completeResetLicense() {
return "redirect:j_spring_security_logout";
}
春のセキュリティ
<http auto-config='true' entry-point-ref="casEntryPoint">
<intercept-url pattern="/**" access="ROLE_ADMINISTRATORS" />
<custom-filter position="CAS_FILTER" ref="casFilter" />
<logout logout-success-url="/j_spring_cas_security_logout" />
<custom-filter ref="requestSingleLogoutFilter" before="LOGOUT_FILTER" />
<custom-filter ref="singleLogoutFilter" before="CAS_FILTER" />
</http>
<beans:bean id="singleLogoutFilter"
class="org.jasig.cas.client.session.SingleSignOutFilter" />
<beans:bean id="requestSingleLogoutFilter"
class="org.springframework.security.web.authentication.logout.LogoutFilter">
<beans:constructor-arg value="https://cas_server:8443/cas/logout" />
<beans:constructor-arg>
<beans:bean
class="org.springframework.security.web.authentication.logout.SecurityContextLogoutHandler" />
</beans:constructor-arg>
<beans:property name="filterProcessesUrl" value="/j_spring_cas_security_logout" />
</beans:bean>
于 2015-09-14T10:28:29.527 に答える