首页 > 解决方案 > Azure Active Directory JWT 审计值

问题描述

在来自 AAD 的 JWT 中有一个密钥“aud”。https://jwt.io/,说是“观众”。(令牌的用途是谁或什么)'。我的问题是,价值观是否aud特定于网站 - 我可以检查 aud 并期望它与检查令牌是否适用于我的特定网站相同吗?

标签: azureoauthazure-active-directoryazure-web-app-service

解决方案


在 Azure AD 中,受众值始终指示令牌所针对的资源。

您可以使用 API 的客户端 ID 或应用程序 ID URI 获取访问令牌。您使用的将是令牌中的受众。因此,如果您制作 API,您应该检查受众是 API 的客户端 ID 还是应用程序 ID URI。如果令牌用于您的 API,您可以肯定地知道它始终是其中之一。

编辑:以下信息不正确。如果我知道您的 API 标识符 + 您的租户 ID,我可以使用客户端凭据为您的 API 获取访问令牌!令牌将不包含范围或角色,它不能。因此,检查是否存在有效的委派权限(也称为范围)或有效的应用程序权限(在角色声明中)至关重要。

这是错误的:如果我尝试使用您的 API 标识符从我的 AAD 租户获取访问令牌,它不会给我一个令牌。任何通过正确受众传递访问令牌的应用程序都有权在获取令牌时调用您的 API。


推荐阅读