私はjsf2ウェブアプリケーションでSpring Security 3を使用しています。jsfスプリングセキュリティアクセスが認証ログインを拒否しました
認証されていないユーザが保護されたリソースにアクセスしようとすると、Spring Securityはログインページにリダイレクトします。
この場合、リソースにアクセスできないというログインページのメッセージをユーザーに表示するにはどうすればよいですか?
Spring SecurityがExceptionTranslationFilterでAccessDeniedExceptionをスローし、ログインページにリダイレクトすると、「WebAttributes.ACCESS_DENIED_403」をチェックするログインページでpreRenderViewリスナーを使用しようとしましたが、nullです。
Spring Securityタグライブラリは、認証されたユーザが特定の/ sロールを持っているかどうか、つまり権限を扱うかどうかによってコンポーネントをレンダリングするためのものです。しかし、私の場合は認証とは関係ありませんが、認証です。さらに、私のアプリでは私はユーザーのための役割を持っていません。認証が必要なページにアクセスしようとしたため、認証されていないユーザーがそのユーザーにリダイレクトされたときに、ログインページにメッセージを表示したいだけです。 – choquero70
答えを更新しました!それがあなたのために働くかどうか見てください! – Ravi
ありがとう@Ravi。最後に、これが適切な解決策であることがわかりました。できます。 ?error = trueをloginFormUrlに追加してから、ユーザーにmeesageを表示するためにログインページのpreRenderViewリスナーでチェックします。 – choquero70