弊社の新人エンジニア研修向けのJSP Servletの問題集です。

1 ログイン処理①

あなたは、ログイン処理のプロトタイプを作成している。

サンプルアプリケーションはこちらから

まずは、ログイン画面から会員専用ページへの画面遷移の部分を作成した。

login.jspで正しくID,パスワードを入力できた時だけmember_only.jspに遷移し、それ以外の場合は、login.jspに戻される処理を書いた。ソースコード③の空欄①~④を埋めなさい。

なお、IDとパスワードの暗号化は考えなくてもよい。

<ソースコード①> login.jsp

<ソースコード②> member_only.jsp

<ソースコード③> Login.java

2 ログイン処理②

上記のプログラムを先輩に見せたところ、今のままでは、member_only.jspへの直接アクセスを防げないとの指摘を受けた。

セッション管理を使い、ログインしていないユーザーは、login.jspに戻すようにしたい。

以下のソースコードの①~⑤を埋めなさい。

なお、login.jspに変更はない。

<ソースコード④> Login.java

<ソースコード⑤> member_only.jsp

 

3 ログアウト処理

あなたは、次にログアウト処理を付け加えることにした。

ログアウトボタンをユーザーが押下するとlogin.jspに遷移するようにしたい。

 

そのためmember_only.jspに以下のようなフォームを追加した。

Logout.javaの以下の①~②を埋めなさい。

※なお、session.invalidate()はAPIに「このセッションを無効にし、それにバインドされているオブジェクトのバインドを解除します。」とある通り、オブジェクトは削除されないことに注意してください。

 

4 ブラウザバック対策

あなたが、上記システムを先輩に見せたところ、ログアウト処理をした後にブラウザの戻るボタンをクリックすることでmember_only.jspが見えてしまうことを指摘された。

member_only.jspに以下のコードを書き加えることでブラウザバックの対策をしなさい

 

5 データベース認証

上記のログインをデータベースにIDとパスワードがあるユーザーだけに限定するようにソースコードを書き換えなさい。

 

JavaWebアプリケーションの問題集に戻る