Auth0 /authorize 端点不返回 JWT

Posted

技术标签:

【中文标题】Auth0 /authorize 端点不返回 JWT【英文标题】:Auth0 /authorize endpoint not returning a JWT 【发布时间】:2016-10-21 04:32:09 【问题描述】:

我正在尝试将以下 enpoint 用于 auth0 的社交身份验证。

https://YOUR_NAMESPACE/authorize

文档明确指出,鉴于response_type=token,我们应该在哈希片段中收到access_tokenid_token

https://auth0.com/docs/api/authentication#!#get--authorize_social

但无论出于何种原因,我只取回了access_token。登录似乎工作正常,并通过 google 进行身份验证,但是当重定向到回调时,id_token 只是丢失了。 access_tokenstatetoken_type 至少存在。

我已经尝试使用/oauth/access_token 端点来接收id_token,因为我已经有了access_token,但是发出这个请求(我已经三次检查我做得正确)总是产生@987654336 @。

Auth0 显然是一个值得的产品,所以我非常怀疑它直接不起作用。谁能指出我正确的方向?到目前为止,谷歌搜索没有帮助。

【问题讨论】:

【参考方案1】:

我不确定文档在哪里说response_type=token 会在片段中同时提供access_tokenid_token,但OAuth 2.0/OpenID Connect 规范本身说token 应该只返回一个@ 987654325@ 而不是 token id_token 响应类型将同时提供两者。我想这值得一试。还要确保在授权请求中包含范围 openid

【讨论】:

以上是关于Auth0 /authorize 端点不返回 JWT的主要内容,如果未能解决你的问题,请参考以下文章

请求 Auth0-Authorization 扩展中的组列表但返回 403:Insufficient 范围错误

在 Auth0 的 /userinfo api 端点中发送的不记名令牌是不是会过期?

PHP中的Auth0 JWT令牌验证

Auth0 端点 API 的自定义实现?

带有自定义登录页面的 Auth0 授权代码流

Apache Superset 和 Auth0 返回“意外的关键字参数‘范围’”