环境
SpringSecurity6.1版本
SpringBoot3.1版本
常见问题
- oauth2客户端请求oauth授权端,响应401
检查spring.security.oauth2.client.registration.login-client.client-secret
的值很spring.security.oauth2.authorizationserver.client.login-client.registration.client-secret
的值是否一样。
注意:
{noop}
这种格式的密钥secret只有授权服务器端需要配置。
- oauth2授权服务器重定向到oauth2客户端的时候,给出authorization_request_not_found错误内容。
检查oauth2授权服务器和oauth2客户端的访问的地址是否是一样的(排除端口),也就是说127.0.0.1:8080
和127.0.0.1:8081
这种方式不行,会导致客户端请求服务器的凭据找不到。
如果是本地调试开发,可以使用127.0.0.1
和localhost
的方式进行区分oauth2授权服务器和oauth客户端的地址。
如果有多台服务器,可以使用windows的hosts文件进行本地host映射。
配置的文件目录为:C:\Windows\System32\drivers\etc\hosts文件,需要使用管理员身份打开编辑器哦。否则无法保存写入修改的内容。
文档
SpringSecurity关于OAuth2客户端和资源服务器的配置
SpringSecurity关于OAuth2授权服务器的配置