相关疑难解决方法(0)

具有自定义身份验证提供程序的 OAUTH2 用户服务

我是 Spring Security 和 Oauth2 的新手。在我的 Spring Boot 应用程序中,我使用 Oauth2 实现了身份验证,并进行了以下一组更改:

自定义Ouath2用户服务如下:

  @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)

安全配置如下:

@EnableWebSecurity
@Import(SecurityProblemSupport.class)
@ConditionalOnProperty(
        value = "myapp.authentication.type",
        havingValue = "oauth",
        matchIfMissing = true
)
public class SecurityConfiguration extends WebSecurityConfigurerAdapter {
  private final CustomOAuth2UserService customOAuth2UserService;
    
  public SecurityConfiguration(CustomOAuth2UserService customOAuth2UserService) {
    this.customOAuth2UserService = customOAuth2UserService;
  }

  @Override
  public void configure(WebSecurity web) { …
Run Code Online (Sandbox Code Playgroud)

java spring spring-security oauth-2.0 spring-boot

9
推荐指数
1
解决办法
5967
查看次数

标签 统计

java ×1

oauth-2.0 ×1

spring ×1

spring-boot ×1

spring-security ×1