【问题标题】:Role Claims when Federating Azure AD联合 Azure AD 时的角色声明
【发布时间】:2014-12-06 02:36:53
【问题描述】:

我们希望使用基于声明的身份验证创建 MVC Web 应用程序,并将角色作为声明之一。我们希望使用 Azure 访问控制服务联合身份验证提供程序来管理此联合。身份验证提供程序之一是我们的 Azure AD。

问题在于 Azure AD 似乎无法生成角色(甚至是组)声明。在 Azure AD 中管理组或角色访问并让 Azure 访问控制服务提供角色声明的适当方法是什么。

谢谢。

编辑:

先前的评论要求提供详细信息:我们希望使用第三方的活动目录向第三方提供对我们云应用程序的访问(以简化他们的用户管理)。我们的应用程序对第​​三方可以配置的信息有几个级别的访问权限。我们希望他们可以在他们的广告中做到这一点(根据我们的指示)。小组似乎是显而易见的选择,但如果有另一种可行的方式,只要我们能提供说明,它就会奏效。

我们希望我们的应用程序能够获得用户访问级别的声明。如果我们只有一个使用 Azure AD 的合作伙伴,我们可以针对该端点使用图形 API,但是随着多个合作伙伴随着时间的推移而变化,我们希望联合它们,因此我们的应用程序只需要信任联合服务器。我们假设我们需要 Azure ACS 来管理联合。

【问题讨论】:

  • 谢谢,不知道。如果我们的应用程序期望使用来自 STS 的声明,包括角色,我们需要使用 ACS(或者放弃使用不符合标准的 Graph API),对吗?但是,我想回到最初的问题,你如何让 Azure AD 在这条链的任何部分都发挥得很好?

标签: azure wif azure-active-directory azure-acs


【解决方案1】:

好消息:我们最近在 Azure AD 中启用了应用程序角色和组声明功能。

在这里快速了解一下:http://blogs.technet.com/b/ad/archive/2014/12/18/azure-active-directory-now-with-group-claims-and-application-roles.aspx

关于应用角色功能的深入了解帖子和视频在这里:http://www.dushyantgill.com/blog/2014/12/10/roles-based-access-control-in-cloud-applications-using-azure-ad/

关于应用角色功能的深入研究帖子和视频在这里:http://www.dushyantgill.com/blog/2014/12/10/authorization-cloud-applications-using-ad-groups/

希望对您有所帮助。

【讨论】:

  • 你知道我们是否能够通过 UI 为应用内的用户分配多个角色吗?我们是否有一个 UI 来管理可用角色列表而不是通过清单文件。
【解决方案2】:

组不是最佳选择,因为它们在每个目录中都是唯一的。除非您让您的客户定义一组具有众所周知的名称并与字符串匹配的组,即(组的对象 ID 在每个目录中是不同的,即使它们具有相同的名称)。我实际上来自 Azure AD 团队,我们正在认真考虑发布一项功能,允许您在应用程序中定义客户可以将其用户分配到的角色。请继续关注这一点。与此同时,不幸的是,团体是唯一的出路。您必须使用 Graph 调用“GetMemberGroups”来检索用户分配到的组。

您发布此应用程序的时间表是什么?您可以直接与我联系,看看我们是否可以处理您的方案。

【讨论】:

    【解决方案3】:

    AAD 确实支持角色/组,您可以从 Azure 门户管理它们。

    但是,这些未在“罐装”声明集中传递。

    您需要使用 Graph API,然后对其进行转换,例如Windows Azure Active Directory: Converting group memberships to role claims.

    更新:

    ACS 需要一些东西来联合。您不能将客户 AD 连接到 ACS - 您需要在他们的 AD 之上使用 ADFS 之类的东西。

    我假设您的云应用程序。在 Azure 中运行?

    然后制作您的应用程序。多租户。如果您的客户有自己的 Azure 租户,它就可以工作。您只需将 Graph API 代码添加到您的应用程序中。不需要 ACS。

    然后您的客户运行 DirSync。这使他们的 Azure 租户保持同步。与他们的 AD 变化。

    所以有两个选择:

    • 客户没有 Azure 租户。他们安装 ADFS 并与 AAD 联合。

    • 拥有 Azure 租户的客户使用 DirSync。

    【讨论】:

    • 谢谢,那么是否可以将 Azure 访问控制服务配置为使用 Graph API 为 ACS 联合的 Azure AD 生成声明?
    • 我对此表示怀疑 - 这是代码而不是配置。你必须做这个客户端。
    • 所以我们需要一个自定义 STS,它使用我们正在与之联合的任何 Azure AD 中的令牌,以生成一个增强令牌,其中包含我们需要的额外声明,然后我们在联合中使用图 API?这似乎很疯狂。
    猜你喜欢
    • 1970-01-01
    • 2020-02-13
    • 2021-10-09
    • 2018-02-07
    • 1970-01-01
    • 2021-07-16
    • 1970-01-01
    • 2016-02-14
    • 1970-01-01
    相关资源
    最近更新 更多