【问题标题】:Microsoft Graph API, Get SharePoint Site Admin/MembersMicrosoft Graph API,获取 SharePoint 站点管理员/成员
【发布时间】:2022-02-03 15:51:38
【问题描述】:

尝试使用 Microsoft 的 Graph API 来遍历 Sharepoint 站点,以便在用户出国时查找并删除对站点的访问。

图形/Sharepoint API 文档:https://docs.microsoft.com/en-us/graph/api/resources/site?view=graph-rest-1.0

我使用 Get Sites 端点获得了所有网站的列表:

https://graph.microsoft.com/v1.0/sites

然后我过滤掉个人/OneDrive 站点,并尝试使用 List Site Permissions 端点来尝试获取管理员/成员:https://docs.microsoft.com/en-us/graph/api/site-list-permissions?view=graph-rest-beta&tabs=http

不幸的是,我得到一个空的 value 数组来响应所有网站:

{'@odata.context': "https://graph.microsoft.com/v1.0/$metadata#sites('<domain>.sharepoint.com%asdfasdgsdf-ca8f-4ec1-bb3e-sdfsdfsdgsdf%2Cbed949c3-3f83-47c2-a263-sdfsdfsdgasdf')/permissions", 'value': []}

我知道查询没问题,因为如果我将其更改为点击站点列表端点,我会得到一个包含各种值的响应:

{'@odata.context': "https://graph.microsoft.com/v1.0/$metadata#sites('<domain>.sharepoint.com%sdfsdfsdgsd-7dce-4564-9de8-eb2dfc02eb86%sdfsdgsdfsdf-ab8c-464f-a77d-sdfsdfsdgsdg')/lists", 'value': [{'@odata.etag': '"sfwsdgsdg-aff1-4295-8443-sdfsdgasdf,7"', 'createdDateTime': '2020-08-26T16:17:41Z', 'description': 'This library contains items that have been modified or deleted but must remain available due to eDiscovery holds. Items cannot be modified...
...

因此,我传递给权限请求的站点 ID 必须正确。那么这是错误的端点吗?或者,Graph API 是否缺少此功能,而我唯一的解决方案是通过 SP Powershell 模块?

我已经尝试过 API 的 v1.0beta 版本。

谢谢!

【问题讨论】:

标签: microsoft-graph-api


【解决方案1】:

根据this,这看起来像是 Graph API 中的一个错误。

【讨论】:

  • 叹息——看起来和听起来都不错。我在使用 MS Graph API 时遇到了麻烦。没有实现随机端点,或者需要提供 select 参数来获取任何数据。这有点让人生气,因为你永远不知道出了什么问题……感谢你看一看!
猜你喜欢
  • 2021-12-01
  • 1970-01-01
  • 2017-02-05
  • 2020-10-07
  • 1970-01-01
  • 1970-01-01
  • 2020-03-30
  • 1970-01-01
  • 2017-09-26
相关资源
最近更新 更多