【问题标题】:Microsoft graph api permissions for reading Birthday and Hire date用于读取生日和入职日期的 Microsoft graph api 权限
【发布时间】:2018-06-15 13:09:57
【问题描述】:

我正在尝试使用 Microsoft 图形 API 读取和写入生日和雇用用户属性。我在下面配置了应用和委派权限。

我作为普通用户收到拒绝访问错误,但为 azure 管理员工作。

委托 User.Read、User.ReadBasic.All、User.ReadWrite、Directory.AccessAsUser.All(仅限管理员)、Directory.Read.All(仅限管理员)、Directory.ReadWrite.All(仅限管理员)、User.Read.All(仅限管理员),User.ReadWrite.All(仅限管理员),

应用 Directory.Read.All、Directory.ReadWriteAll(仅限管理员)、User.Read.All(仅限管理员)、User.ReadWrite.All(仅限管理员)

请帮助我为普通用户读取和写入生日和雇用日属性的应用程序需要哪些权限。

【问题讨论】:

  • 您能分享一下您如何尝试读/写birthdayhiredate 的代码吗? User.ReadWrite(以用户身份登录时)和User.ReadWrite.All(以应用身份登录时)应该足以访问/修改这些数据
  • 嗨,我正在使用下面的 url 来使用带有承载令牌的 ajax 请求读取 azure 用户数据。我正在在线使用共享点,并在管理员同意graph.microsoft.com/v1.0/…

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


【解决方案1】:

您不能在同一个令牌中同时激活 Application 和 Delegated 范围。使用哪些完全基于您用于获取令牌的 OAuth 授权。您可能会发现这篇文章对您有所帮助:Application vs Delegated Scopes

您还选择了几个需要管理员同意才能在租户中使用的范围。在您获得此同意之前,普通用户将无法进行身份验证。您可能会发现这篇文章很有帮助:v2 Endpoint & Admin Consent

就范围而言,为了读取用户的个人资料(其中包含这些属性),您应该只需要User.Read。您可以并且应该删除您请求的所有其他范围。在权限范围方面,越多越好

注意:我上面提到的两篇文章都是我写的。此外,虽然它们处理 v2 端点,但其中的概念适用于 AAD v1 和 v2 OAuth 端点

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-11-04
    • 1970-01-01
    • 2012-02-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-07
    • 1970-01-01
    相关资源
    最近更新 更多