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

时间:2017-03-07 04:20:35

标签: azure azure-active-directory

我正在尝试在Azure中找到关于“允许的令牌听众”的文档, 但似乎没有。我放在那里的价值 是与令牌一起返回的resourceid。

这是什么意思?任何文档链接都将非常感激。

PS。实际页面上的学习链接没有提到这个,以及 屏幕截图似乎较旧,没有此字段。

提前致谢

enter image description here

4 个答案:

答案 0 :(得分:9)

我也一直在文档中磕磕绊绊。以下是我使用Angular Front-end应用程序时使用的后端API应用程序。

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

接下来,用户想要与API应用程序进行交互 方法如下:

  • 转到Azure App中的API应用服务。
  • 导航至身份验证/授权
  • 启用“开启”应用服务验证
  • 在身份验证提供程序下选择“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。我希望微软能够创建一个“端点”,以显示出来的内容和内容。以及如何执行此特定步骤。如果你可以让你的应用程序这样做,它真的很干净。

enter image description here

答案 1 :(得分:1)

根据我的经验,此字段的值(或其中一个值)必须与要发送给您的服务的令牌的“受众群体”字段中的值匹配(juunas说了很多关于上面的问题)。上面的bwmartens建议使用应用程序ID URI听起来像是可行的,但是Azure门户中的AAD注册刀片的当前版本未列出“应用程序ID URI”值,也没有出现“设置->属性”不再(网站不断变化)。

就我而言,仅放置应用程序ID无效。我发现在这里找到所需值的两种最直接的方法是:

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

答案 2 :(得分:0)

错误:JWT验证失败:IDX10214:听众验证失败。观众:.... 表示需要更正您的App Service上的allowedAudiences ARM配置。

如何更正: 最简单的方法是通过https://resources.azure.com/。深入到App Service资源> config> authsettings并按如下所示更正值:

"allowedAudiences":[
"https://<site>.azurewebsites.net"
  ]

OR

您可以导航到门户网站,然后单击身份验证的“高级”部分,并使用Web应用程序的值更新“允许的令牌受众”。 随着当前应用服务的更改,它可以自动完成,但是可以很好地检查此配置。

答案 3 :(得分:0)

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

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

允许令牌观众

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