0

そのため、ログインが成功した後にユーザーを正しいページに送るために、j_spring_security_check に送信されるフォームのパラメーターとして spring-security-redirect を使用しています。Spring security 3.0 から 3.1 に移行すると、これが機能しなくなりました。SavedRequestAwareAuthenticationSuccessHandler のサブクラスを使用し、onAuthenticationSuccess() をオーバーライドし、そのメソッドをデバッグすると、getTargetUrlParameter() が null を返すことがわかります。isAlwaysUseDefaultTargetUrl() は false を返します。

ブラウジングしても、同様の問題を抱えている人は見つかりません... 3.1 で消えたように見える AbstractAuthenticationTargetUrlRequestHandler.DEFAULT_TARGET_PARAMETER への参照がいくつか見つかります。

何か案は?

4

1 に答える 1

2

Spring セキュリティ 3.1 xsd に従って、

属性: authentication-success-handler-ref 成功した認証リクエストを処理するために使用する必要がある AuthenticationSuccessHandler Bean への参照。実装は常に後続の宛先へのナビゲーションを処理する必要があるため、default-target-url (または always-use-default-target-url) と組み合わせて使用​​しないでください。

したがって、サブクラスでリダイレクトを実行する必要があります。

于 2012-10-31T15:55:06.400 に答える