※全部のパスに適用する。</filter-mapping>spring-security.xmlpermitAllとかhasRoleとかはSpringELと呼ばれるSpring固有の記法。permitAllとかは先に定義したほうが優先度が高い。security="none"とaccess="permitAll"は意味的には同義だが、noneだとSpringSecurity関連の処理が一切されない。permitAllは処理はするが必ず認証OKになるイメージ。́Д`)この場合はpermitAllで書く必要があり。́Д`)ajaxで叩く時とかでもCSRF情報を付与する必要がある。いうときはnoneで指定したほうが楽できる。※js,cssが配置されているパスは適用外にする。※ログイン画面は全員アクセスできる。※ログアウト画面も全員アクセスできる。※他の画面はUSERロールをもっていないとアクセスできない。※ログインフォーム向けにある既存の認証処理を独自認証処理に置き換える。※ログアウトに関する設定。※POST時にCSRFの検証も行う。処理自体は自動で行われる。※ログイン画面の指定。認証なしでアクセスするとここに飛ばされる。※認証成功したあとに処理するハンドラーの指定。※認証失敗したあとに処理するハンドラーの指定。ここに認証情報をつけてPOSTすると認証処理(filter)が実行される。※認証成功した後の遷移先。↑ハンドラー自体は既存のものを利用。※認証失敗した後の遷移先。↑ハンドラー自体は既存のものを利用。※認証されたユーザの情報を提供するプロバイダの指定。ユーザの提供するプロバイダ。</beans>ログイン画面を作る上記設定でも記載した/loginの実装例。コントローラ基本画面を返すだけ。クエリによって出し分けたい要素があるためそのあたりの処理も入っている(error、from)。́Д`)submitすると上記で指定したパス/authenticationにPOSTする。※設定したパスにPOSTする。※CSRF対策が入っているため入れる。</div></div>認証情報の検証処理を書くフォーム画面からの認証情報の検証はfilterが行う。実行タイミングは今回はFORM_LOGIN_FILTERの位置。指定の仕方によって任意のタイミングで実行できる。※今回使ったUsernamePasswordAuthenticationFilterはPOSTデータの"username"と"password"というパラメータをとれるようになっている。※他のパラメータ名で処理したい場合やパラメータを追加したい場合は自分で拡張する。※"username"の値をとる。※"password"の値をとる。́,,・ω・,,`)DBに接続しても外のAPIにアクセスして検証してもよい。}認証されたユーザの情報を構築する上記で認証検証処理を追加したユーザについて、ユーザ情報を構築し返却する。ApplicationUsernamePasswordAuthenticationProvider.java以下※はコメント。※認証されたユーザにUSERロールを付与する。※このプロバイダーが提供する型の指定。ユーザ情報でfalseが返ると認証エラーになる。}}ロールによって画面の表示内容を変えるSpringSecurityのタグを使って、画面の表示内容を変えてみる。※"ROLE_USER"が付与されたユーザのみ表示される。ROLE_USER→USERとマッピングされる。--></nav>(略)ログアウト処理を入れるログイン状態を解除するログアウト処理を入れてみる。先述したspring-security.xmlにlogoutの設定を入れたので、設定のとおりに/logoutにPOSTするとログアウトされる。※指定したところにPOSTする。※CSRF対策を入れているので必要。月別アーカイブGoogleはてなブログをはじめよう!Namihiraさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。