Azure 即使将accessTokenAcceptedVersion更改为2,Microsoft JWT iss也会设置为sts.windows.net
我创建了一个新的应用程序服务,并在manifest.json中将accessTokenAcceptedVersion设置为2,因为我正在寻找类似的v2令牌。但是,Microsoft生成的accessToken在解码时的iss值始终为sts.windows.net。我希望它是login.microsoftonline.com。请给我一些建议 这是我的实现: 这是我解码时的令牌: 请给出建议。请查看(仅在您共享的链接中): 资源始终拥有自己的令牌(那些具有Azure 即使将accessTokenAcceptedVersion更改为2,Microsoft JWT iss也会设置为sts.windows.net,azure,azure-web-app-service,access-token,Azure,Azure Web App Service,Access Token,我创建了一个新的应用程序服务,并在manifest.json中将accessTokenAcceptedVersion设置为2,因为我正在寻找类似的v2令牌。但是,Microsoft生成的accessToken在解码时的iss值始终为sts.windows.net。我希望它是login.microsoftonline.com。请给我一些建议 这是我的实现: 这是我解码时的令牌: 请给出建议。请查看(仅在您共享的链接中): 资源始终拥有自己的令牌(那些具有audclaim的令牌)并且 唯一可以更
aud
claim的令牌)并且
唯一可以更改其令牌详细信息的应用程序。这就是为什么
更改客户端的访问令牌可选声明不会
更改请求令牌时接收的访问令牌
user.read
,由Microsoft图形资源拥有
这意味着accessTokenAcceptedVersion
设置应该在服务端应用程序注册中配置,而不是在客户端应用程序注册中配置
对于Microsoft Graph令牌,我们无法在服务端进行配置,因为Microsoft Graph应用程序注册由Microsoft正式管理
在客户端配置accessTokenAcceptedVersion
不会将令牌版本更改为2。这是意料之中的
此功能主要用于调用自己的受AAD保护的web API,而不是Microsoft官方API
更新: 如果您想调用自己的API,您应该通过创建服务端应用程序注册,并在其中设置
accessTokenAcceptedVersion
这是的完整文档。这是否意味着我需要创建两个appservices?一个用于UI,一个用于ApI?@a2441918您访问的令牌是调用Microsoft Graph。在这种情况下,您不需要为API创建应用程序注册,因为API是Microsoft Graph。@a2441918换句话说,我们无法将Microsoft Graph access令牌版本设置为2。但我不想调用Microsoft Graph?是默认的吗?我所需要做的就是将令牌作为承载身份验证发送到我的Api,并在Api上验证令牌,然后将OID与我的数据库进行比较。@a2441918是。两个应用程序注册。在服务端应用程序注册(API)中设置
accessTokenAcceptedVersion
。