2

Spring ベースのアプリケーションに CAS を実装しようとしています。既に CAS とアプリケーションからの CAS への接続を構成しており、jar からアプリケーションを実行するとすべてが機能します。しかし、アプリケーションを WAR パッケージにビルドしようとすると、SLO (Single Logout) が機能しなくなります。ログアウトをクリックすると、アプリケーションと CAS からログアウトされますが、他のアプリケーションにはまだログインしています。

環境:

  • WAR と CAS の両方がローカルで実行されている tomcat 7 にデプロイされますが、ドキュメントで推奨されているように、localhost を自分のコンピューター名に変更します。
  • cas-server-webapp-3.5.2.1 と spring-boot-1.1.8.RELEASE を使用しています
  • HTTPS を無効にして、すべての通信が HTTP で実行されるようにしました

CAS を統合するのはこれが初めての試みなので、疑問があります: これは問題になるのでしょうか:

2015-04-01 11:21:37,807 WARN [org.jasig.cas.util.HttpClient] - <Error Sending me
ssage to url endpoint [http://mycomputername:8080/App1/j_spring_cas_securi
ty_check].  Error is [Server returned HTTP response code: 403 for URL: http://my
computername:8080/App1/j_spring_cas_security_check]>
  • jar を実行しているときに同じメッセージが表示され、両方のアプリケーションから適切にログアウトしています。

  • 完全なログ: http://pastebin.com/ShhgeNmN

  • アプリケーションの初期化で情報なしでログに記録: http://pastebin.com/DBW8fm1M

また、Tomcat Web Application Manager (mycomputername:8080/manager) にアクセスして 2 番目のアプリケーションのセッションを期限切れにすると、適切にログアウトされます。または、アクセスできなくなり、CAS にログインするようにリダイレクトされます。

@edit: 春のセキュリティ: http://pastebin.com/K0BMVrLN

War Deployment の App1 のプロパティ

app.service.security=http://mycomputername:8080/App1/j_spring_cas_security_check
app.service.home=http://mycomputername:8080/App1/
cas.service.login=http://mycomputername:8080/cas/login
cas.service.logout=http://mycomputername:8080/cas/logout
cas.url.prefix=http://mycomputername:8080/cas/
app.admin.userName=admin@cas.com
4

1 に答える 1

1

Spring SecurityAndを使用したログアウト手順CAS:

  1. ユーザーは /j_spring_security_logout (hrefログアウト ボタンで設定) を要求します。これにより、ユーザーはローカル アプリケーションからログアウトされ、ログアウト成功 URL に移動します。
  2. /j_spring_cas_security_logoutすべてのアプリケーションからログアウトするために設定する必要があるログアウト成功 URL 。
  3. 次に、ユーザは CAS シングル ログアウト URL にリダイレクトされます(https://localhost:7443/cas/logout)。
  4. CAS サーバー側では、CAS シングル ログアウト URL がシングル ログアウト要求をすべての CAS サービスに送信します。CAS サービス側では、JASIGSingleSignOutFilterは元のセッションを無効にすることでログアウト要求を処理します。
  5. 最後にCASTGTand Jsession(Spring の場合) が破棄され、任意のページへのリクエスト後に app2 で CAS ログイン ページにリダイレクトする必要があります
于 2015-04-16T05:54:30.830 に答える