Spring boot OAuth2 - 此资源的范围不足

时间:2016-10-10 08:28:22

标签: spring spring-security-oauth2

我有一个具有必要范围的访问令牌。我也成功访问了资源服务器。当资源服务器尝试从授权服务器获取用户Principal时,会发生此错误。我真的希望我能得到一些提示或帮助我如何解决这个问题

  • 访问令牌:

    {"的access_token":" 65ce0f1a-192F-4ad2-b7bb-cb9c7cbf0be9"" token_type":"承载"&# 34; refresh_token":" f1e2a49d-5b24-4e9c-b9da-567eb47d6ab7"," expires_in":149,"范围":"读写信任"}

  • 资源服务器调用:

    curl -H"授权:Bearer 65ce0f1a-192f-4ad2-b7bb-cb9c7cbf0be9" http://localhost:9001/resource/hello

  • 通话后的资源服务器输出:

    2016-10-10 10:10:06.144 INFO 411 --- [nio-9001-exec-5] o.s.b.a.s.o.r.UserInfoTokenServices:从以下网址获取用户信息:http://localhost:9000/auth/user

端点(localhost:9000 / auth / user)被执行但我总是得到以下对我的curl请求的响应:

{"error":"insufficient_scope","error_description":"Insufficient scope for this resource","scope":"read"}

1 个答案:

答案 0 :(得分:1)

我通过从资源服务器属性中删除用户信息uri来解决此问题。由于我使用了jdbc令牌存储,资源服务器可以从数据库验证令牌的真实性,而不再依赖于auth服务器。