首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >访问令牌没有openid作用域

访问令牌没有openid作用域
EN

Stack Overflow用户
提问于 2016-05-20 19:34:31
回答 3查看 4.8K关注 0票数 3

我正在做sso示例(travelocity.com)示例。当我试图使用oauth访问令牌访问用户信息时,

curl -k -H“授权:无记名b68ba941c9da3d2644d8a63154d28”https://localhost:9443/oauth2/userinfo?schema=openid

我得到了一个错误

{“错误”:“insufficient_scope”,“error_description”:“访问令牌没有openid作用域”}

请帮忙,谢谢

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-05-21 06:47:39

当您向授权端点发出第一个请求时,必须在openid请求参数中包含scopeOpenID连接核心1.0,3.1.2.1。认证请求如下所示。

范围 必需的。OpenID连接请求必须包含openid作用域值。如果不存在openid作用域值,则完全不指定行为。可能存在其他作用域值。应该忽略不被实现理解的作用域值。有关本规范定义的附加作用域值,请参见第5.4和11节。

票数 2
EN

Stack Overflow用户

发布于 2022-11-19 06:17:54

对于那些试图将scope放入请求param但它不起作用的人,请将其放在POST /token请求中的请求体中。

代码语言:javascript
复制
curl --location --request POST 'http://keycloak.local.webapp/realms/WordSpreads/protocol/openid-connect/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'client_id=word-spreads-web' \
--data-urlencode 'username=bob' \
--data-urlencode 'password=king' \
--data-urlencode 'grant_type=password' \
--data-urlencode 'scope=openid'

我认为这种变化发生在钥匙斗篷-1902-释放

票数 0
EN

Stack Overflow用户

发布于 2016-05-21 09:52:47

默认情况下,travelocity.com sso示例web应用程序不会在其访问令牌请求中发送openid作用域。这就是您遇到错误的原因。

为了发送openid作用域以及Tra速尔示例中的访问令牌请求,您可以尝试以下操作:

  1. 在样例web应用程序中打开travelocity.properties1文件(您可以在the ocity.com/WEB/classe中找到它)
  2. 取消注释并编辑QueryParams属性,如下所示 QueryParams=scope=openid
  3. 保存属性文件并重新部署web应用程序,现在尝试在userinfo端点上生成的访问令牌:)

1

更新

看起来QueryParams中的范围设置不起作用,有一个解决办法

您能按下面的方式更改OAuth2.TokenURL中的travelocity.propeties并试用吗?我在本地测试了这个,应该可以工作。

#OAuth2令牌端点URL

代码语言:javascript
复制
OAuth2.TokenURL=https://localhost:9443/oauth2/token?scope=openid
票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37354555

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档