无法修补Azure AD用户的businessPhones,没有足够的权限来完成操作

时间:2017-07-27 07:27:11

标签: azure-active-directory microsoft-graph

我正在编写一个后端应用程序,通过调用Microsoft Graph来更新Azure AD中的用户。该应用程序已授予权限Directory.ReadWrite.AllUser.ReadWrite.all

当我发送补丁请求以更新特定用户的businessPhones时,如果businessPhones参数是空集合,即204,则会返回成功的响应代码{"businessPhones":[]}

如果参数不为空,例如{"businessPhones":["+86 (321) 456789"]},返回响应代码403,并显示消息"没有足够的权限来完成操作"。

我试图为另一个用户进行修补,没有空的和非空的businessPhones参数的问题。

我发现此SO questionDirectory.AccessAsUser.All是委托权限,不适用于我的申请。

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

感谢您报告此约翰尼。我们去调查一下。通常,通过委派权限,授权基于已授予应用已登录用户具有的权限(基于用户角色)的权限的交集。这在此处描述:https://developer.microsoft.com/en-us/graph/docs/concepts/permissions_reference#delegated-permissions-application-permissions-and-effective-permissions

登录用户的角色是什么?如果他们是全局管理员,他们应该能够更改任何其他用户的信息。如果他们是受限管理员(如用户帐户管理员),他们只能更改常规用户的用户个人资料信息(否则这将是一个特权提升。普通用户只能更改自己的photo和{{ 1}}数字。

基于评论更新:如果应用使用的是应用权限,则应用可以更新大多数属性。但是,你看到的行为很奇怪。我们需要调查 - 我将回到主题。这可能是一个错误。

更新8/26 :这确实是一个错误。该修复程序现已部署。

希望这有帮助,