由于权限更改,如何获取 Graph API 增量更改?

How do I get Graph API delta changes due to permissions changes?

我有一个 azure AD 注册应用程序。借助具有 AllSites.FullControl 的用户的委派权限,我能够在图表 API.

中获得 drive/root/delta

我作为委托用户进行增量调用时遇到的问题是:

以上问题是我的主要问题。

在这里抓住救命稻草,但请让我知道如果我能通过 app-only 身份验证获得更好的运气。如果是这样,如何使用我现有的 Azure AD 注册应用程序进行设置,而无需访问 Powershell 或 Windows(例如,如果我需要使用证书而不是 client_id/client_secret,因为有关信息存在冲突这个,并且只有关于如何使用 Powershell 完成它的说明)。我已经开始尝试对此进行测试,但尚未成功找到有关如何在 multi-tenant use-case 中使其正常工作的信息,其中我正在尝试从外部租户访问 Sharepoint一个 Azure AD 注册 app-only 认证应用程序。到目前为止我看到的所有现有说明都不是 multi-tenant 并在他们自己的 Azure AD 门户中授予自己权限。

事实证明,确实需要使用仅应用程序的客户端凭据身份验证才能在响应中获得 @microsoft.graph.sharedChanged,尽管这在任何地方都没有记录。此外,deltas 现在一直在 returned。据推测,Microsoft 正在做一些尝试 return 仅与委托用户相关的增量,尽管我认为这不足以解释某些情况下缺少增量的原因。不过,我使用仅限应用程序的客户端凭据得到了我需要的响应。

关于证书的使用——如果访问我自己注册应用程序的租户则没有必要,但如果访问第 3 方租户,则需要证书而不是 client_secret。