0サービスを提供する多くのWEBサイトではログイン認証が必要です。いざ実装しようとすると結構面倒なものです。Securityを使ったログイン認証を見てみます。Suiteを使用します。SuiteはPleiadesにより日本語化されています。プロジェクトの生成ファイルメニューまたはパッケージ・エクスプローラーの空白領域で新規→Springスターター・プロジェクトを指定します。パッケージングにWarを指定します。その他の項目は適当に入力してください。依存関係はコア→セキュリティーコア→Lombokテンプレート・エンジン→ThymeleafWeb→Webをチェックします。完了ボタンをクリックしてプロジェクトを生成します。生成したプロジェクトは次のようになります。画面はログイン画面とログイン完了画面の2画面を用意します。src/main/resources/templatesに次のふたつのhtmlを配置します。Securityの主要部分になります。Securityの簡単なサンプルを示すだけなのでログインは認証のみを行っています。DirectoryおよびLDAPを使用せずオンメモリで保持しています。"USER").build());}}18~22行目セキュリティ設定から除外するパスを指定します。CSS、画像、Javascriptなどの静的なファイルはセキュリティによるアクセス制限をかけないのでそのパスを指定します。27~33行目アクセス制限を行わないURLとアクセス制限を行うURLを指定します。35~47行目ログイン画面とログインに関わる処理を設定します。loginPageにはログイン画面のURLを指定します。loginProcessingUrlで指定したURLがリクエストされるとログイン認証の処理を行います。defaultSuccessUrlにはログインが成功したときに遷移するURLを指定します。failureUrlにはログインが失敗したときに遷移するURLを指定します。usernameParameterにはログイン画面のユーザー名のパラメータ名を指定します。passwordParameterにはログイン画面のパスワードのパラメータ名を指定します。defaultSuccessUrlはログインが成功したときに実行する処理に置き換えることができます。同様にfailureUrlもログインが失敗したときの処理に置き換えることができます。66~76行目ログインできるユーザー名とそのパスワードを登録しています。Bootの2.0.0.RELEASEからオンメモリのユーザー設定でも暗号化しなくてはならなくなったためここではUser.withDefaultPasswordEncoder()を用いてパスワードを暗号化しています。DirectoryまたはLDAPにすることができます。Securityの簡単なサンプルを紹介しました。実用的なWEBアプリケーションに使うためには次の箇所を目的に合わせて変えます。Securityはサポートしています。雑誌等の執筆依頼を受付しております。役に立たなかった10人がこの投稿は役に立ったと言っています。コメントをキャンセルメールアドレスは表示されません。Reserved.本サイトに掲載されている社名、製品名、サービス名等は各社の商標または登録商標です。プライバシーポリシーお問い合わせ。