我在我的网站上使用 adal.js 进行 AAD 身份验证。 解码 AAD token 后,aud 看起来有所不同,它是 AAD 中的应用程序 api。 但是,当我尝试了解 AAD 在不同场景中的工作原理时,几乎所有 AAD token 的文档示例都将 aud 显示为资源 url,例如 http://contoso.com/ .
根据我的理解,aud意味着这个token是为之发行的。对于它的实际情况没有任何限制。
但我很好奇 AAD 的 aud 行为不一致的主要原因是什么。
为什么有时可以是app id,有时可以是url? 为什么不始终使用应用程序 ID 或始终使用 url?
有人可以帮忙分享一些想法吗?
谢谢。
最佳答案
token 中的“AUD”值应与 token 请求中的“资源”值匹配。如果您请求 token 并将资源指定为应用程序 ID,那么您将获得带有 GUID 的 AUD 值。否则,如果您使用 App ID URI,您将获得该 URL。
作为资源开发人员,对 API 进行编程以便接受两种形式的 token 非常重要,因为它们对于访问您的资源都应该有效。我相信OWIN已经为您解决了这个问题。
请告诉我这是否有帮助!
关于azure-active-directory - AAD token : Why aud sometimes shows app id, 有时是应用程序 URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42213979/