2月20日(金)1、2コマ目
今日、やったこと Spring Securityで認証アプリケーション作成(前回からのつづき) 今日のホワイトボード 前回は 前回 は 認証を使えるようにした(ユーザーはデフォルトの”user”のみ) 認証が必要なページ、不要なページを分けた まで作成。 DBのユーザー情報を使って認証 DBに作ったSEC_ユーザーマスタテーブルを使って認証をする。 いくつかクラスを作ったが、以下の関係。 図 DBでユーザー認証を行うためのクラスたち entity/User.java SEC_ユーザーマスタ情報受け渡し用クラス。 repository/UserRepository.java JpaRepositoryインタフェースを継承したSEC_ユーザーマスタテーブルアクセス用クラス。 ログイン名列(User.javaではloginnameフィールド)で検索するためのfindByLoginname()メソッドを追加。 JpaRepositoryでは、 findBy + 列名 で、指定列を引数で検索するメソッドを生成してくれる。 config/LoginUserDetails.java UserDetailsクラス継承クラス。 SpringSecurityはユーザー情報をUserDetails型で扱う。 config/LoginUserDetailsService.java UserDetailsServiceクラス継承クラス。 SpringSecurityはユーザー情報の取得をUserDetailsService型のインスタンスで行う。 config/SecurityConfig.java DBに格納されているパスワードはBCryptでハッシュ化されている。 認証時に入力パスワードをハッシュ化する際に利用するpasswordEncoderを用意。 ログイン名からユーザー情報を取得 LoginUserDetailsServiceクラスでは、findByLoginname()でログイン名か...