Web アプリケーション (JSP) があり、アクセスを制限する必要があるため、ログインしているユーザーだけがアプリケーションを表示できます。私はそれを見て、多くの異なるアプローチを見つけました。Cookie、セッション、または Spring Security などのフレームワークを使用すると言う人もいます。
何を使えばいいですか?これまでのところ、Java および JSP プログラミングの経験は中程度ですが、何をするように勧められますか?
本当にありがとうございました!
質問する
72 次
2 に答える
1
サーブレット フィルターの使用を検討してください。ログインしたユーザーをセッションに保存し、フィルターを構成して、ユーザーがサイトの安全なディレクトリに (url-pattern を介して) アクセスしようとしたときにユーザーがログに記録されることを確認します。
ここの基本情報http://www.tutorialspoint.com/jsp/jsp_writing_filters.htm。
しかし、ここであなたが始めるためのより具体的なものがあります.
javax.servlet.Filter を実装するクラスを作成し、doFilter メソッドをオーバーライドして、ユーザーがログインしていることを確認し、アノテーションを使用して urlPatterns を構成します。
フィルターの注釈は次のようになります。
@WebFilter(filterName="LoggingFilter", urlPatterns={"/secured/*"})
保護したいディレクトリは「secured」と呼ばれます。
クラスで doFilter() メソッドをオーバーライドし、ユーザーがログインしていることを確認します。
User user = session.getAttribute("user");
if (user != null) {
chain.doFilter(request, response); // User is logged in so forward response.
} else {
response.sendRedirect("login"); // User not logged in so redirect to login page.
}
これは、ログインしているユーザーをサイトの特定の部分に制限する効果的な方法です。この単純な例を拡張して、ユーザー タイプやその他の基準に基づいて、サイトのさまざまな部分へのアクセスを制限できます。
于 2013-07-26T10:20:33.113 に答える