【Spring MVC + Spring Security】任意のログアウトハンドラを追加する方法
概要 ログアウト時に任意のログアウトハンドラを追加する方法についてまとめた。 前提 以下の記事の続きとなる。 ハンドラ実行タイミング ログアウトするとき、ログアウトフィルターはログアウトハンドラのリスト(CompositeLogoutHandlerが保持)を順次実行する。 任意のログアウトハンドラ処理を実行したい場合、このリストに自作したハンドラを追加する。   […]
概要 ログアウト時に任意のログアウトハンドラを追加する方法についてまとめた。 前提 以下の記事の続きとなる。 ハンドラ実行タイミング ログアウトするとき、ログアウトフィルターはログアウトハンドラのリスト(CompositeLogoutHandlerが保持)を順次実行する。 任意のログアウトハンドラ処理を実行したい場合、このリストに自作したハンドラを追加する。   […]
概要 ログアウト機能を追加する方法についてまとめた。 前提 以下の記事の続きとなる。 ログアウト仕様 Spring Securityでは以下の流れでログアウト処理を行う。 ①クライアントがログアウトを行う ②ログアウトのURLにマッチングして、LogoutFilterの処理が動作する ③LogoutFilterはログアウトハンドラのリストを保 […]
概要 認証成功/失敗時に呼び出されるハンドラを利用して、後続処理を制御する方法についてまとめた。 前提 以下の記事の続きとなる。 ハンドラとは 特定の処理のこと。 リスナーとの違いは以下のようになる。 種類 役割 起動方法 ハンドラ 特定の処理を実行する責務を持つ 処理を行う側から明示的・直接的に呼び出される リスナー イベントの発生を観測する責務を持つ […]
概要 Spring Securityの認証成功/失敗イベントをハンドリングする方法についてまとめた。 前提 以下の記事の続きとなる。 認証イベント仕様 Spring SecurityはSpring Frameworkが提供するイベント制御の仕組みを利用して、認証成功/失敗イベントを通知する。 この仕組みを活用することで、認証処理に以下のような拡張機能を柔軟に追加できる。 […]
概要 Spring Securityの認証機能に、パスワードのハッシュ化機能を導入する方法についてまとめた。 前提 以下の記事の続きとなる。 パスワードのハッシュ化 画面入力値のパスワードをハッシュ化する機能を追加する。 全体像 以下の場所でハッシュ化処理を呼ぶ。 ハッシュ化処理クラス DaoAuthenticationProv […]
概要 認証エラー時に表示されるエラーメッセージをカスタマイズする方法についてまとめた。 前提 以下の記事の続きとなる。 メッセージ仕様 エラーメッセージは以下の方針でカスタマイズする。 ・基本的にはSpring Securityがデフォルトで提供するメッセージプロパティを利用する ・エラーに応じて自作したメッセージで上書きする。 補足として、 […]
概要 自作ログイン画面を利用した、簡易的なログイン認証機能の利用方法についてまとめた。 前提 以下の記事の続きとなる。 自作ログイン機能 作成するログイン機能は以下のような挙動となる。 ・未ログイン時は、どのURLにアクセスしても自作したログイン画面にリダイレクトされる ・ログインに成功すると、トップページ画面に遷移する 実装 […]
概要 Spring Securityが提供するデフォルトのログイン画面を利用して、簡易的なログイン認証機能を利用する方法についてまとめた。 前提 以下の記事の続きとなる。 デフォルトログイン機能 作成するログイン機能は以下のような挙動となる。 ・未ログイン時はどのURLにアクセスしても、Spring Security提供のログイン画面にリダイレクトされる […]
概要 Spring Security機能を利用するための必要資材や導入方法についてまとめた。 前提 以下の記事の続きとなる。 プロジェクトのセットアップについては以下を参照。 導入方法 Spring Securityフレームワークを利用するための必要な資材について紹介する。 基本的には必要な依存資材を導入し、SecurityFilterChain(複数のセキュリティフィ […]
概要 Spring Securityフレームワークのアーキテクチャについてまとめた。 Spring Securityとは アプリケーションに、セキュリティ対策機能を実装するためのフレームワークとなる。 様々なセキュリティ機能を提供しているが、大きな役割として「認証」「認可」機能を提供している。 ・認証機能: 「ユーザーが誰なのかを確認すること(ログイン認証)」 ・認可機 […]