【问题标题】:Microsoft GraphAPI: How do I retrieve the assigned groups of an azure user?Microsoft Graph API:如何检索 azure 用户的分配组?
【发布时间】:2019-01-18 23:29:56
【问题描述】:

正如您在上面看到的问题,我想知道是否可以通过 Microsoft GraphAPI 检索基于 Azure Active Directory (AAD) 的用户的分配组。

我的情况是,我有一个启用了 Microsoft Azure 的 ASP.NET MVC 项目。我的目标是,Azure 用户可以使用其 Azure 帐户登录我的网站。

想法是,azure 用户是管理员或用户(取决于 azure 组),并且根据此角色组,用户可以或多或少地查看我的网页。

例如:

当彼得在我的网页上使用他的 azure 帐户登录时,他应该只能看到: Add new Document Edit Document Remove Document 因为他在 Azure Active Directory 中仅被分配为“用户”。

但是当 Sabrina 在我的网页上使用她的 azure 帐户登录时,她应该可以做和 Peter 一样的事情,但她也可以看到: Manage Products Add new customer etc. 因为她在 Azure Active Directory 中被分配为管理员。

我的问题是,我不知道如何使用 Microsoft GraphAPI 检索分配的用户组。在我获得角色后,用户可以看到或看不到的部分并不重要。

我已经尝试过这个 API 调用:

https://graph.microsoft.com/v1.0/me/

但似乎此调用的响应不包括该用户的实际分配组。

您认为可以检索分配给 azure 用户的组吗?这甚至可能吗?还是我必须做其他事情来检索这些信息?

我希望你能理解我的观点,我也期待任何回应。提前致谢!

【问题讨论】:

标签: azure azure-active-directory microsoft-graph-api


【解决方案1】:

将 /memberOf 添加到 URL 以接收用户所属的组。

https://graph.microsoft.com/v1.0/me/memberOf

【讨论】:

    【解决方案2】:

    这里是特定图形 api 的链接 - https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/api/user_getmembergroups

    在 Github 上查看这个示例应用程序。它与任务跟踪器应用程序非常相似,不同的用户可以根据他们所属的组执行不同的操作 - https://github.com/Azure-Samples/active-directory-dotnet-webapp-groupclaims/blob/master/README.md

    此外,如果用户是太多组的成员,您会收到一个超额指示器,并且必须单独调用以获取所有组。在此处阅读“hasgroups”和“groups:src1”声明 - https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-id-and-access-tokens

    【讨论】:

      【解决方案3】:

      根据您的系统架构,如果某个用户加入的群组过多,APIhttps://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/api/user_getmembergroups 将返回过多的群组。

      但是如果你系统中权限的组不是太多,你可以使用这个API:https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/api/user_checkmembergroups来检查当前用户是否是指定组的成员。

      使用此 API 不是一个好主意:https://graph.microsoft.com/v1.0/me/memberOf。因为它只返回用户是直接成员的组,但安全组可以是安全组的成员。

      【讨论】:

        猜你喜欢
        • 2021-02-08
        • 1970-01-01
        • 2020-12-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-08-19
        • 1970-01-01
        相关资源
        最近更新 更多