0

PrettyFaces 3.3.3 を使用しています。ユーザーがページを表示しようとしてログインしていない場合、ログイン ページに送信され、表示したい元のページにリダイレクトされるという要件があります。これに最適なアプローチは何でしょうか。

4

1 に答える 1

1

おそらく、ここでセキュリティ フレームワークが必要になるでしょう。基本的な考え方は、要求された URL をセキュリティ フィルターでインターセプトし、それをユーザーのセッションに保存し、認証が完了したら (たとえば、ユーザーが資格情報を使用してフォームを送信したか、使用しているメカニズムが何であれ)、ということです。ユーザーのセッションから保存された URL を取得し、それに 302 リダイレクトを実行します。

これは、PrettyFaces が直接あなたを助けるものではありませんが、それを使用して URL をより簡単にキャプチャすることができます。PrettyContext.getCurrentInstance(request).getRequestURL();

これに関する記事があります: http://ocpsoft.org/java/jsf-java/spring-security-what-happens-after-you-log-in/

OCPsoft Rewrite (PrettyFaces 4 のコア) を使用すると、これをプログラムで行うこともできます。また、セキュリティ ルールまたは注釈構成で直接認証を行うこともできます: https://github.com/ocpsoft/prettyfaces/blob/master/annotations/src /test/java/org/ocpsoft/prettyfaces/annotation/jaas/JaasRolesBean.java

これは今後の機能ですが、まだ完全ではありません。フィードバックをお待ちしております。

于 2012-04-20T17:23:38.600 に答える