私はREST APIを公開する簡単なSpringブートアプリケーションを持っています。 @PreAuthorize( "hasRole( 'ROLE_4')")アノテーションを使用して、残りのAPIのすべてのメソッドをROLEに従って保護するためのスプリングセキュリティを正しく設定しました。Spring Security:@PreAuthorizeが指定されていない場合、デフォルトでリクエストを拒否する方法
私は気付きました@PreAuthorize注釈をまったく入れないと、フレームワークは認証されたユーザーにこの要求を許可します。私はこの振る舞いを逆にしたい。したがって、プログラマの1人が@PreAuthorizeアノテーションを追加することを忘れると、このメソッドに対するリクエストは自動的に拒否されます。ここで
は私の設定です:
@Configuration
@EnableGlobalMethodSecurity(prePostEnabled = true)
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
//Disable HTTP Basic authentication
http.httpBasic().disable();
//Add the filters
http.addFilterBefore(new AuthenticationFilter(authenticationManager()), BasicAuthenticationFilter.class);
}
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
auth.authenticationProvider(securityServiceAuthenticationProvider());
}
@Bean
public AuthenticationProvider securityServiceAuthenticationProvider() {
return new SecurityServiceAuthenticationProvider();
}
}
おかげ ガイHudara
ありがとうございました。私はこれを試してみる。 –