LoginSignup
0
0

Spring Security備忘録

Last updated at Posted at 2023-06-20

20220502メモ

※現時点では写経Onlyなので基本記事見て作成しましょう。

要素

UserDetails、UserDetailsServiceの実装クラス
GrantedAuthority
JdbcTemplate
queryForMap
SimpleGrantedAuthority
UsernameNotFoundExceptionからBadCredentialsException への変換
認証例外情報の隠蔽
DaoAuthenticationProvider
ritrieveUser
LoadByUsername
DataAccessException
@NotBlank…任意の文字と全角空白のみ入力可能で、Null空文字半角空白は不可。
securityContext
Authentication
AnonymousAuthenticationToken

流れ

1.spring securityの導入
プロジェクト作成時にspring securityのチェックボックスにチェックを入れるか、
pom.xmlにspring securityの記述。

2.以降やること↓
・dbへのdatabase登録とユーザ情報登録とgrantで認証設定(記事見て)
application.propertiesと情報合わせる&spring securityの記述。
パスワードはハッシュ化の必要あり。Eclipse上でシスアウトしてハッシュ値表示。
・各クラスの実装。Config、UserDetails、UserDetailsService。
・messages.propertiesはMavenフォルダ内のspring-security-conf?内のものコピると楽。
・application.propertiesで指定した以下のsqlファイルには、
schema-locationでTable定義を、
data-locationでデータ定義を行う。

発生した問題(解決済)

1.認証可能ユーザーでログインした際に、エラーメッセージ画面に遷移
原因は静的リソースへのリクエストが失敗したため
→cssフォルダが存在しないのに参照しようとしていた
→cssフォルダ作成で解決

2.実行の際に接続エラーが発生
原因はコマンドプロンプトで設定したユーザ情報とapplication.propertiesに記述したユーザ情報の不一致。
→新たなユーザ情報をコマンドプロンプトにて作成し、application.propertiesに記述のユーザ情報と一致させる。
→代替案:コマンドプロンプトにてユーザ情報を変更する。application.propertiesを修正が発生しないため、効率アップ。

3.Beanがサイクルしてしまう
原因はどのBeanを使えばよいかEclipseが判断できないため(?)
Bean同士の循環参照が禁止となったらしい。
起動時にBeanCurrentlyInCreationException発生。
→spring.main.allow-circular-referencesをtrueで記述

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0