【问题标题】:Azure AppService with user AD Authentication具有用户 AD 身份验证的 Azure 应用服务
【发布时间】:2020-05-27 08:33:11
【问题描述】:

想象这样一个场景: 我将 Web API 应用程序部署为 tu azure 作为应用程序服务。我想做的是在这个 Web API 中实现基于角色的操作。问题是此 API 将从其他 MS 产品(如 Dynamics CRM、Sharepoint Online 等)调用,并且操作应作为来自此其他产品的经过身份验证的用户调用。所以为了简化:

  1. 用户登录到 Dynamics CRM
  2. 将从 Web API 调用某些操作
  3. 我需要在 Web API 代码中获取有关调用操作的信息,以验证用户是否有权实际调用此操作

你有一些关于如何实现这一点的材料、教程吗?我们花了很多时间对此进行研究,但没有找到任何关于这种简单案例的信息。

【问题讨论】:

  • 您可以使用 azure API 管理来处理安全概念
  • 嗨,你有机会看看我的回答吗?有用吗?
  • 您好,抱歉回复晚了,仍在调查中

标签: c# azure-active-directory dynamics-crm sharepoint-online azure-web-app-service


【解决方案1】:

我相信您正在寻找group claimapp roles

对于组声明,您可以将用户添加到不同的安全组中,并在您的令牌中包含组声明。您只需要修改应用清单中的“groupMembershipClaims”字段:

"groupMembershipClaims": "SecurityGroup"

然后 ID 令牌将包含用户所属组的 ID,如下所示:

{
  "groups": ["{group id}"]
}

那么你就可以通过group id在你的代码中实现代码逻辑了。

对于应用角色,我认为它可能更适用于你。你可以add app roles in your application and receive them in the token。配置完成后,您将在授权用户的 id 令牌中获得应用角色声明。然后就可以根据它执行判断语句了。

更多信息在这里:Using groups vs using application roles for authorization in Azure AD apps

【讨论】:

    猜你喜欢
    • 2022-11-03
    • 2018-08-15
    • 2016-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多