Oauth2身份验证失败

时间:2016-01-21 09:39:45

标签: authentication oauth spring-security single-sign-on

我试图在我的应用程序(客户端)中使用已安装的oauth2提供程序的spring OAUTH2sso。在oauth2提供程序中配置客户端,并在客户端配置clientIcret,clientSecret,accessTokenUri和userAuthorizationUri,当用户通过身份验证并授权客户端时,客户端显示身份验证错误,因为springOauth2sso库没有得到用户的详细信息。

  

Whitelabel错误页面此应用程序没有明确的映射   /错误,所以你看到这是一个后备。 1月21日星期四10:28:28 CET   2016出现意外错误(type = Unauthorized,status = 401)。   身份验证失败:无法从令牌

获取用户详细信息

我使用其他oauth2库测试了我的提供程序,它非常好,但我不确定在这种情况下发生了什么。

1 个答案:

答案 0 :(得分:1)

这个错误可能有很多不同的含义,因为它是 InvalidTokenException 的包装器。

您的令牌可能无效,已过期或客户端可能存在问题,甚至在检索UserDetails时出现问题。

要获得有关此问题的更多信息,我建议调试并将调试点直接放到此错误的来源OAuth2ClientAuthenticationProcessingFilter。在第99行,此过滤器尝试从 ResourceServerTokenServices 实施加载身份验证,如果您进入该调用,您将找出导致错误的原因。

此外,我不确定我是否正确理解您的配置,但我想您可能需要以下两个属性中的一个:

security.oauth2.resource.token-info-uri
security.oauth2.resource.user-info-uri

此处有更多信息:Spring Boot Docs