Auth0 刷新访问令牌时省略范围

问题描述 投票:0回答:0

我正在使用

auth0-react
来管理我的 SPA 中的身份验证,并且它已经工作了好几个月。但是,最近它停止支持使用刷新令牌。

我相信我的应用程序使用的是相当标准的结构,如 v1.12.1 的文档中所定义。当我最初登录时一切都很好:

/authorize
端点返回预期的内容并触发对
/token
的立即调用,负载中有
grant_type=authorization_code
。这成功了:HTTP 200 和包含
refresh_token
scope
以及其他字段的响应。

但是,当我在访问令牌过期后进行 API 调用时,会触发对

/token
的调用,它会接收到带有正文的 HTTP 400:
{"error":"invalid_scope","error_description":"User is not authorized to the audience for those scopes"}
。一些实验表明,
/token
请求在其负载中只有以下四个字段:
client_id
redirect_uri
refresh_token
grant_type=refresh_token
。当我使用相同的详细信息进行手动调用但添加
scope
时,请求成功。

因此,我相信我的问题是:有没有办法强制执行

getAccessTokenSilently
函数以在带有
scope
/token
请求中包含
grant_type=refresh_token
参数?或者,有人能猜出几周前意外出现这个问题可能发生了什么变化吗? (我相信我没有做任何可能相关的代码更改:事实上,这段时间我几乎没有对我的 Javascript 进行任何更改,并且问题仍然存在于恢复到旧代码时。)

我不是身份验证流程方面的专家,所以如果我的问题不清楚或者您能想到任何进一步的检查,请告诉我。

reactjs auth0
© www.soinside.com 2019 - 2024. All rights reserved.