В чем разница между этими классами? Я знаю, что WebSecurityConfigurerAdapter используется для настройки «безопасности» наших приложений.
Что я сделал:
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Autowired
CustomUserDetailsService customUserDetailsService;
@Autowired
private JwtAuthenticationEntryPoint unauthorizedHandler;
Но я не понимаю значения AuthorizationServerConfigurerAdapter.
Я прочитал пару статей, но не понимаю.
да, я использую oauth. я не понимаю цель авторизации serverconfigureradapter




Сначала об одном. OAuth 2 - это среда авторизации. Он позволяет приложению (клиенту) получить ограниченный доступ к HTTP-сервису от имени владельца ресурса (пользователя). OAuth 2 не является протоколом аутентификации.
AuthorizationServerConfigurerAdapter используется для настройки как работает сервер авторизации OAuth.
Вот некоторые аспекты, которые можно настроить:
WebSecurityConfigurerAdapter используется для настройки как защищен сервер авторизации OAuth.
Или, другими словами, как пользователь должен пройти аутентификацию, чтобы предоставить клиенту доступ к своим ресурсам.
Это может быть:
(Я намеренно опустил некоторые детали, чтобы ответить как можно проще.)
Пример конфигурации сервера авторизации с хранилищем токенов в памяти:
@Configuration
@EnableAuthorizationServer
public class AuthorizationServerConfig extends AuthorizationServerConfigurerAdapter {
@Override
public void configure(AuthorizationServerEndpointsConfigurer endpoints) throws Exception {
endpoints.tokenStore(tokenStore());
}
@Bean
public TokenStore tokenStore() {
return new InMemoryTokenStore();
}
...
}
Пример конфигурации безопасности с входом в форму:
@Configuration
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests()
.antMatchers("/login").permitAll()
.antMatchers("/oauth/authorize").authenticated()
.and()
.formLogin();
}
...
}
Очень простое объяснение. Хороший.
если вы хотите использовать сторонний аутентификатор, это означает, что одновременно OAuth, тогда вы должны использовать AuthorizationServerConfigurerAdapter с WebSecurityConfigurerAdapter на стороне сервера OAuth. Если это не так, то для обычной аутентификации достаточно WebSecurityConfigurerAdapter.
Вы используете OAuth2? Что ты не понимаешь? Что ты уже понимаешь? Какие статьи вы читали?