2月19日(木)2コマ目
今日、やったこと
Spring Securityで認証アプリケーション作成(前回からのつづき)
今日のホワイトボード
前回は
前回はSEC_商品マスタテーブルにアクセスするために
- Item.java
- ItemRepository.java
- application.properties
を作成した。
商品一覧を表示する
商品一覧ページを表示するために以下を追加。
controller/ItemController.java
クライアントからのリクエストを受け付けて、処理を行い、ビューを返す。
index.html
このアプリケーションのトップページ。商品一覧を表示する。
実行すると
とくになにも設定していないため、全ページが認証対象になる。
Spring Securityの認証画面が表示される。
|
| 図 トップページにアクセスすると認証画面に |
ユーザー情報はなにも登録していないため、Spring securityのデフォルトのユーザー"user"でログイン。パスワードもSpring Securityが生成して、コンソールに表示される。
|
| 図 ユーザーは"user"、パスワードを入力してログイン |
認証に成功するとトップ画面が表示される。
|
| 図 認証成功 -> トップ画面表示 |
認証に失敗すると、エラー表示。
|
| 図 認証失敗 -> エラーメッセージ表示 |
認証不要画面、認証必要画面をわける
トップページは認証不要。
新規登録画面に進むには認証が必要に変更。
|
| 図 認証必要画面、認証不要画面 |
認証不要・必要はコントローラ実行前に実行されるフィルタでおこなう。
config/securityFilterChain.java
認証必要・不要を切り分けるフィルタクラス。
controller/ItemController.java
トップページの”登録”リンククリック時、登録画面の"戻る"リンククリック時の処理を追加。
templates/index.html
トップページ。
”登録”リンクを追加。
templates/create.html
新規登録画面。
"戻る"リンクをクリックすると、トップページへ。
"戻る"リンククリック時はトップページにリダイレクト。
リダイレクトはHTTPの機能をつかったページ遷移方法。
フォワードはサーバーアプリケーション側でページ遷移する方法。
|
| 図 ページ遷移(リダイレクト、フォワード) |
実行すると
①トップページリクエスト
トップページは認証不要。
![]() |
| 図 トップページリクエスト |
②"登録"リンククリック
新規登録画面を表示するには認証が必要。認証画面が表示される。
![]() |
| 図 "登録"リンククリック -> 認証画面へ |
認証に成功すると、新規登録画面が表示される。
![]() |
| 図 認証成功 -> 新規登録画面表示 |
③"戻る"リンククリック
新規登録画面の”戻る”リンクをクリックすると、トップページへリダイレクトされる。
![]() |
| 図 "戻る"リンククリック -> トップページへリダイレクト |
次回は
つづき。完成させます。
認証はSpring Security










