我正在尝试验证从azure active directory获取的访问令牌。
我从https://login.microsoftonline.com/{{my tennant guid}}/v2.0
获得令牌
返回的令牌中的发行者是https://sts.windows.net//{{my tennant guid}}/
,这不匹配。
如果我在.well-known/openid-configuration
检查配置,则颁发者如预期的那样为https://login.microsoftonline.com/....
我在git hub上发现了类似的问题https://github.com/AzureAD/microsoft-authentication-library-for-js/issues/560
建议是在AAD中的应用程序注册中手动编辑清单的json并设置"accessTokenAcceptedVersion": 2
。
我已经做了,但它没有任何区别。为什么?为什么?
3条答案
按热度按时间vbkedwbf1#
因此,在清单中将acceptedTokenVersion更改为2似乎确实发生了变化,但需要时间才能生效。
是的,观众总是基于我在v2令牌中的测试的客户端ID。
relj7zay2#
如果您正在验证一个API,则在启动类中添加以下代码:
上面的代码,通知正确的
Issuer
。svmlkihl3#
将
acceptedTokenVersion
改为2
的公认答案是正确的。然而,还有一点细微差别:authorityMetadata
。在写这篇文章的时候,说明书是不完整的,而且有误导性,很容易犯这个错误。