首页 > 解决方案 > 需要帮助了解 OAuth2

问题描述

我正在尝试通过使用此工作教程https://www.devglan.com/spring-security/spring-boot-security-oauth2-example来介绍 OAuth2

这个教程很好解释,但是我们必须在两个地方定义用户/密码,但是为什么呢?

这是我不明白的...

AuthorizationServerConfig 中的第一名:

        configurer
            .inMemory()
            .withClient(CLIEN_ID)
            .secret(CLIENT_SECRET)
            .authorizedGrantTypes(GRANT_TYPE_PASSWORD, AUTHORIZATION_CODE, REFRESH_TOKEN, IMPLICIT )
            .scopes(SCOPE_READ, SCOPE_WRITE, TRUST)
            .accessTokenValiditySeconds(ACCESS_TOKEN_VALIDITY_SECONDS).
            refreshTokenValiditySeconds(FREFRESH_TOKEN_VALIDITY_SECONDS);

尤其是给

            .withClient(CLIEN_ID)
            .secret(CLIENT_SECRET)

DB第二名:

@Service(value = "userService")
public class UserServiceImpl implements UserDetailsService, UserService {

@Autowired
private UserDao userDao;

public UserDetails loadUserByUsername(String userId) throws UsernameNotFoundException {
    User user = userDao.findByUsername(userId);
    if(user == null){
        throw new UsernameNotFoundException("Invalid username or password.");
    }
    return new org.springframework.security.core.userdetails.User(user.getUsername(), user.getPassword(), getAuthority());
}

标签: spring-bootoauth-2.0

解决方案


推荐阅读