我正在尝试获取我的(顶级)SharePoint 网站的列表。
这适用于Graph Explorer:
https://graph.microsoft.com/v1.0/sites?search=
https://graph.microsoft.com/v1.0/sites?search=*
问题是当我使用
Application Permissions
时它不起作用。根据文档我只需要以下权限:
站点.Read.All、站点.ReadWrite.All
我认为搜索有一个错误,我总是返回一个空数组。
但是,一旦我知道我的
site-id
使用相同的访问令牌,我就可以做其他所有事情,例如https://graph.microsoft.com/v1.0/sites/{site-id}
所以:
更新:
如果有必要,我们使用应用程序注册门户 (apps.dev.microsoft.com) 进行注册。
因此基本上遵循以下应用程序权限步骤:https://github.com/microsoftgraph/microsoft-graph-docs/blob/master/concepts/auth_v2_service.md
更新2: 我已经联系了 ms devchat,MS dev 的租户与我的应用程序 ID 配合得很好(排除了这一点),因此我们尝试使用我的租户与他的应用程序 ID,但它也不想工作。他最终得出结论,这一定是一个具有“Sites.FullControl.All”权限的错误(因为它仍处于预览状态)。
我暂时求助于 SharePoint Online API 只是为了枚举网站,这意味着我必须管理 2 个令牌并生成并拖动证书才能使其正常工作。这确实不太好,但这是我枚举站点的唯一方法......
这是一个过期的访问令牌(在评论中请求):
eyJ0eXAiOiJKV1QiLCJub25jZSI6IkFRQUJBQUFBQUFEWDhHQ2k2SnM2U0s4MlRzRDJQYjdyQlluNjBQM3BhY1Mta1k5QVBiUlJuNEI2TVhrUlE5c1VfdzdfVHQtVHlGTnlXcEdJd0VxLVI0aGtaMmtqaDNFRllrNkItTk9CNk9OaHZYSlNrSFRjdFNBQSIsImFsZyI6IlJTMjU2IiwieDV0IjoiVGlvR3l3d2xodmRGYlhaODEzV3BQYXk5QWxVIiwia2lkIjoiVGlvR3l3d2xodmRGYlhaODEzV3BQYXk5QWxVIn0.eyJhdWQiOiJodHRwczovL2dyYXBoLm1pY3Jvc29mdC5jb20iLCJpc3MiOiJodHRwczovL3N0cy53aW5kb3dzLm5ldC81ZGMxZTg3Ni00NmViLTQ3ZmItYWYyZC0wMTU1Zjk4OTFlMTUvIiwiaWF0IjoxNTMwMTg4NzY4LCJuYmYiOjE1MzAxODg3NjgsImV4cCI6MTUzMDE5MjY2OCwiYWlvIjoiWTJkZ1lHaTcvMTJUMjhhdWU2N28xY1hyTk5UZUF3QT0iLCJhcHBfZGlzcGxheW5hbWUiOiJSZWRzdG9yIENsb3VkIEJhY2t1cCBQcm8gKHRlc3QpIiwiYXBwaWQiOiIyMzYzYjJmMy0zNjhjLTQ0ZGEtODU1NS1jZmMwZjYxMDcxMzAiLCJhcHBpZGFjciI6IjEiLCJpZHAiOiJodHRwczovL3N0cy53aW5kb3dzLm5ldC81ZGMxZTg3Ni00NmViLTQ3ZmItYWYyZC0wMTU1Zjk4OTFlMTUvIiwib2lkIjoiNjZhNzRjMDctOGFhMy00Mjg0LWEyZjctZGQzMGJhN2ZlNGUzIiwicm9sZXMiOlsiTWFpbC5SZWFkV3JpdGUiLCJVc2VyLlJlYWRXcml0ZS5BbGwiLCJQZW9wbGUuUmVhZC5BbGwiLCJEaXJlY3RvcnkuUmVhZFdyaXRlLkFsbCIsIlNpdGVzLlJlYWQuQWxsIiwiU2l0ZXMuUmVhZFdyaXRlLkFsbCIsIkNvbnRhY3RzLlJlYWRXcml0ZSIsIlNpdGVzLk1hbmFnZS5BbGwiLCJGaWxlcy5SZWFkV3JpdGUuQWxsIiwiRGlyZWN0b3J5LlJlYWQuQWxsIiwiVXNlci5SZWFkLkFsbCIsIkZpbGVzLlJlYWQuQWxsIiwiQ2FsZW5kYXJzLlJlYWRXcml0ZSIsIlNpdGVzLkZ1bGxDb250cm9sLkFsbCIsIk5vdGVzLlJlYWRXcml0ZS5BbGwiXSwic3ViIjoiNjZhNzRjMDctOGFhMy00Mjg0LWEyZjctZGQzMGJhN2ZlNGUzIiwidGlkIjoiNWRjMWU4NzYtNDZlYi00N2ZiLWFmMmQtMDE1NWY5ODkxZTE1IiwidXRpIjoidGtHSHZNTVI3RUtLRkVIZ0dYNFhBQSIsInZlciI6IjEuMCJ9.kun-neHPcYAOBFWokBKLLMr5iSjQMEz14xfQMtKbxKUu_1kNZeV7EuSINSRRYwBqSxy0Sts1MFG4ywBLQQ1jdG-cJnjEveReJZxn1fgKRK6D0Y3gZwmj0LgdFvDR9QhpDMrEsfQ7Tl_JYwXsqPTPcDPoI3XnHqy71vS3Z242OwagvTPC2JTayeonje6yK6UGTRa1U8YEZYmUcxN-GJ_zZd6YjMD5UgT_CATTlvHHvqs2y-KfZ-pg6VZR75DfYHrWHDOnZPIHcf7IxfpQBMAFE077OapV2KkbFxEFaFF0Q_zJYdIAXm1iyT9nCikq_ZQ9zgqQqD3NKnYwORWsB83jog
Graph API v1.0 有一个名为“列表站点”的端点:
GET /sites
https://learn.microsoft.com/en-us/graph/api/site-list?view=graph-rest-1.0&tabs=http