我可以合并委托的GraphServiceClient和应用程序GraphServiceClient的权限吗?

时间:2019-09-13 23:01:47

标签: c# microsoft-graph microsoft-graph-sdks

我正在尝试为使用Microsoft Graph的人们实现搜索算法。我想做的是拥有GraphServiceClient的1个(不是2个)实例,并使用该实例来查询People。然后,如果没有搜索结果出来,我查询用户。

当前,我使用已授权的 GraphServiceClient实例来使用people search,并使用其他的 application GraphServiceClient search Users。但是,当我尝试使用 delegated GraphServiceClient搜索用户时,它给了我一个未授权的错误。

两者都使用在Microsoft中注册的相同App ID,所以为什么我不能只拥有一个实例而不是拥有2个不同的实例?我已经获得读取我们用户的管理员权限。我只想拥有1个Microsoft Graph实例。不是2。

编辑:这是尝试使用委托 GraphServiceClient实例查询用户时收到的错误消息:

  

代码:Authorization_RequestDenied \ n消息:权限不足,无法完成操作。\ n \ n内部错误\ n

1 个答案:

答案 0 :(得分:1)

找到了答案。我刚刚向用户请求了Directory.Read.All的权限,并且能够访问“用户”列表来执行搜索。

我什至不需要应用程序权限!