天天看点

Microsoft 365 开发篇:如何在SPO中获取一套完整的权限变化

51CTO博客地址:https://blog.51cto.com/1396817

博客园博客地址:https://www.cnblogs.com/bxapollo

Microsoft Graph 是一个RESTful web API,可以通过它来访问Microsoft 云服务器资源,注册应用程序并获取用户或服务的身份验证令牌后,可以向Microsoft Graph API请求。

默认的情况下,Deltalinks(Token)是一个用户范围的API,可用于类似同步的行为,比如可以获取一个完整的权限枚举来验证,Delta尝试将基于权限的更改范围限定为Caller相关的更改,如果caller的访问权限没有因权限更改而改变,则该项可能不会包含在增量结果中。

获取权限的前提条件:确保遵守aca.ms/scanguidance中的建议,否则将导致获取权限更改范围的缩小。

获取权限的方法:

对sites.fullcontrol使用使用仅适用于应用程序的身份验证

所有范围和pass header “preferred"="deltashowsharingchanges.hierarchicalsharing"

实现步骤:

1. 在AAD创建一个应用程序,并且有sites.fullcontrol等如下权限

Microsoft 365 开发篇:如何在SPO中获取一套完整的权限变化

 2. 采用如下powershell脚本生成access token和delta token link:

3. 从上面的脚本复制access token 和deltauri值输出,并在下面的示例powershell脚本中使用它们来检索完整的权限更改集。

相关参考资料:

Use the Microsoft Graph API

Track Changes for a Drive