如何使用Spring Security with Java Configurations定义自定义身份验证提供程序?我想在我自己的数据库上执行登录检查凭据.
我是 Spring Security 和 Oauth2 的新手。在我的 Spring Boot 应用程序中,我已经为一个租户实现了 OAuth2 身份验证。现在我正在尝试在我的 Spring Boot 应用程序中进行多租户。从上一篇文章的答案:OAUTH2 user service with Custom Authentication Providers,我实现了两种安全配置以支持两个租户:Tenant1如下Tenant2:
自定义OAuth2用户服务如下:
@Component
public class CustomOAuth2UserService extends DefaultOAuth2UserService {
private UserRepository userRepository;
@Autowired
public void setUserRepository(UserRepository userRepository) {
this.userRepository = userRepository;
}
public OAuth2User loadUser(OAuth2UserRequest userRequest) throws OAuth2AuthenticationException {
...
}
}
Run Code Online (Sandbox Code Playgroud)
租户1安全配置如下:
@Configuration
public class Tenant1SecurityConfiguration extends WebSecurityConfigurerAdapter {
private final CustomOAuth2UserService customOAuth2UserService;
public SecurityConfiguration(CustomOAuth2UserService customOAuth2UserService) {
this.customOAuth2UserService = customOAuth2UserService;
}
public void configure(HttpSecurity …Run Code Online (Sandbox Code Playgroud)