Azure活动目录 - 允许令牌受众

noo*_*bie 18 azure azure-active-directory

我正在尝试在Azure中找到关于"允许的令牌听众"的文档,但似乎没有.我放在那里的值是随令牌返回的resourceid.

这是什么意思?任何文档链接将不胜感激.

PS.实际页面上的学习链接没有提到这一点,截图似乎较旧,没有此字段.

提前致谢

在此输入图像描述

Lar*_*und 10

我也一直在文档中磕磕绊绊.这是我使用Angular前端应用程序使用后端API应用程序的原因.

在前端应用程序中,用户单击链接并使用Azure目录进行身份验证.令牌在浏览器中保持会话.

接下来,用户想要与API应用程序进行交互.
这是如何做:

  • 转到Azure中的API App的App Service.
  • 导航到身份验证/授权
  • 打开"开"App Service身份验证
  • 在身份验证提供程序下选择"Azure Active Directory"
  • 选择"高级"按钮
  • 在"客户端ID"字段中,从API应用程序的Azure Active Directory应用程序注册中插入"应用程序ID".您应该已经在Azure Active Directory中注册了API应用程序.
  • 在"允许的令牌受众"字段中,从前端应用程序的Azure Active Directory应用程序注册中插入"应用程序ID".您应该已经在Azure Active Directory中注册了前端应用程序.

安全非常重要.我想到文档围绕这些东西是多么令人困惑.Owin/Katana看起来像是在出路.基于此配置,您不需要任何其中任何一个.Owin是一个孤独的另一个标志是与微软/系统IdentityModel相关的巨大突破性变化,似乎无法构建,辨别,修复,yada yada.我希望微软能够创建一个"端点",以显示出来的内容和内容.以及如何执行此特定步骤.如果你可以让你的应用程序这样做,它真的很干净.

在此输入图像描述

  • 出于某种原因,我不断收到"您无权查看此目录或页面".使用基于React的UI应用程序之前获得的access_token调用API时. (4认同)

Gri*_*lse 9

快进到 2020 年,现在对此参数有了一些解释。(2019年新增

https://learn.microsoft.com/en-us/azure/app-service/configure-authentication-provider-aad#-enable-azure-active-directory-in-your-app-service-app

允许的令牌受众

如果这是云或服务器应用程序,并且您希望允许来自 Web 应用程序的身份验证令牌,请在此处添加 Web 应用程序的应用程序 ID URI。配置的客户端 ID 始终隐式地被视为允许的受众。


Aut*_*ant 5

根据我的经验,该字段的值(或其中一个值)必须与发送到您的服务的令牌的“受众”字段中的内容相匹配(juunas 所说的内容与对上述问题的评论一样多) 。上面的 bwmartens 建议使用应用程序 ID URI 听起来似乎可行,但 Azure 门户中 AAD 注册刀片的当前版本没有列出“应用程序 ID URI”值,也没有出现“设置 -> 属性”不再(该网站不断变化)。

就我而言,仅输入应用程序 ID 是行不通的。我发现找到此处所需值的两种最直接的方法是:

  1. 转到您的服务的 AAD 注册,并查看清单中的“identifierUris”字段。根据我的经验,此处的值应与您在“允许的令牌受众”列表中输入的值相匹配。
  2. 获取要发送到服务的 JWT 并对其进行解码(例如使用http://jwt.calebb.net/)并查看“aud”字段的值。将其放入允许的令牌受众列表中。