【问题标题】:Authorization_RequestDenied getting Group MembersAuthorization_RequestDenied 获取组成员
【发布时间】:2019-06-24 19:42:53
【问题描述】:

我在我的代码中使用 GraphServiceClient 来访问数据的多个端点。

我有一个具有以下范围的 GraphServiceClient(具有委派权限):Group.Read.All

我还有一个具有以下范围的 GraphServiceClient(具有应用程序权限):User.Read.All, Mail.Read

我首先获得了第一个客户的组 ID,这里没有问题。然后我在以下代码中使用 Group id:

var users = await client
    .Groups[id]
    .Members
    .Request()
    .GetAsync();

现在需要以下范围 Application - User.Read.All 我的第二个客户端,但是当我使用此客户端获取该组的成员时,它会给出以下消息:

Code: Authorization_RequestDenied 
Message: Insufficient privileges to complete the operation.

是的,权限由 AD 中的管理员授予,我使用“graphresource”/.default 范围(仅用于获取列表用户)。

我还需要Directory.Read.All(现在无法测试)还是我错过了其他东西?

【问题讨论】:

    标签: c# azure azure-active-directory microsoft-graph-api microsoft-graph-sdks


    【解决方案1】:

    因为您已经拥有User.Read.All 权限。 Group.Read.All 申请权限足以让您的第二个客户获得该组的成员。

    【讨论】:

    • 所以他们网站上的文档不正确?
    • @NLErik 当然Directory.Read.Al 可以。它比User.Read.AllGroup.Read.All 拥有更多的权限。
    • @NLErik User.Read.All 权限不够。我已经对此进行了测试。如果您还有任何疑虑,请告诉我。
    • 但是为什么页面上提到了这个权限,如果它不授予你访问权限?
    • @NLErik 你提到docs.microsoft.com/en-us/graph/api/…了吗?
    猜你喜欢
    • 1970-01-01
    • 2022-01-03
    • 1970-01-01
    • 2017-07-25
    • 2015-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多