【问题标题】:Graph API: "Insufficient privileges to complete the operation"Graph API:“权限不足,无法完成操作”
【发布时间】:2023-08-20 21:38:01
【问题描述】:

Graph API 应用程序的权限存在问题,

  1. 在 Azure 门户的“应用注册”中,我正在注册新应用。

  2. 接下来我要为其添加“永不过期”键。

  3. 接下来我要设置权限:添加 - Microsoft Graph 并检查“应用程序”和“委托”的“读取和写入所有用户的完整配置文件”(实际上是“User.ReadWrite.All”)权限。

根据这个文档应该足够了:https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/api/user_list

  1. 接下来我尝试通过此应用获取所有用户:https://github.com/AzureADQuickStarts/B2C-GraphAPI-DotNet 并收到此错误:

    调用图形 API 时出错: { “odata.error”:{ "code": "Authorization_RequestDenied", “信息”: { "lang": "en", "value": "权限不足,无法完成操作。" } } }

有趣的事情#1:如果我选择所有“Microsoft Graph”和“Windows Azure Active Directory”的权限,则可以检索所有用户然后(不是立即,而是在 5 分钟之后,这也很奇怪)

有趣的事情 #2: 如果我取消选择所有权限并将其设置回“User.ReadWrite.All”,现在所有用户也可以在没有“权限不足以完成操作”的情况下检索。”

有人可以解释一下这种奇怪的行为吗?

一般来说,这里创建了类似的主题,但仍然不清楚,应该限制哪些权限才能通过 Graph API 获取用户。

【问题讨论】:

    标签: azure-ad-b2c


    【解决方案1】:

    您需要 Windows Azure Active Directory 中的“Read and write directory data”。

    B2C 租户与普通 Azure AD 租户在一些细微的方面有所不同,因此适用于 Azure AD 的文档可能不适用于 B2C。

    【讨论】:

      最近更新 更多