-Spring Securityのまとめ *大元の設定 [#ga8ca0ef] WebSecurityConfigurerAdapterを継承したものを定義しておく。 *認証 [#o7ef158c] *認可 [#y7868d8e] *コンポーネント [#o6f1df60] |Authentication-manager|認証処理を行うが、実際の処理はproviderに委譲| |Authentication-provider|実際の認証処理を行う。ユーザー認証はまたUserDetailServiceへ| |UserDetailsService|デフォルト実装としてメモリベースやJDBCが容易されている。| *設定 [#wd0c6fd2] **認証要否 [#g2c1f076] Configでパス単位で設定するか、各クラスで@PreAuthorize |permitAll|認証不要| |isAuthenticated()|認証必須| ***設定例 [#fdaf81ed] http .authorizeRequests() .antMatchers("/css/**", "/fonts/**", "/js/**").permitAll() .anyRequest().authenticated(); **JDBCを使う場合 [#f421079e] ***テーブル定義 [#qb2936f3] CREATE TABLE USERS ( USERNAME VARCHAR_IGNORECASE(50) NOT NULL PRIMARY KEY, PASSWORD VARCHAR_IGNORECASE(50) NOT NULL, ENABLED BOOLEAN NOT NULL ); CREATE TABLE AUTHORITIES ( USERNAME VARCHAR_IGNORECASE(50) NOT NULL, AUTHORITY VARCHAR_IGNORECASE(50) NOT NULL, CONSTRAINT FK_AUTHORITIES_USERS FOREIGN KEY (USERNAME) REFERENCES USERS(USERNAME), CONSTRAINT UK_AUTHORITIES UNIQUE (USERNAME, AUTHORITY) ); INSERT INTO USERS VALUES ('fuga', 'FUGA', true); INSERT INTO AUTHORITIES VALUES ('fuga', 'USER'); **アノテーション [#dd4e4ea0] **XML [#wb7ef0d8] *OAuth2 [#y1aa3135] -OAuth2ClientAuthenticationProcessingFilter