spring-boot - 需要帮助了解 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());
}
解决方案
推荐阅读
- python - 如何判断python代码的复杂度?
- html - CSS 网格未在 Y 轴上对齐
- c++ - 将对象的原始向量传递给另一个类
- python - QtSvg 忽略单位
- python - 从 django 模型访问数据(DateTimeField)时,它总是返回 None
- c++ - 无法更改类变量
- spring-boot - Spring Controller 测试:Postman 与 JUnit - 字段错误请求被拒绝值 [null]
- hive - 使用 hive 脚本从文件中删除多余的行
- javascript - 在 keyup 后继续触发 keydown 事件
- mongodb - 定义集合时的 MongoDB 产品集合和语法错误