Microsoft graph api 如何对AAD租户中所有服务主体的导出进行分区?

Microsoft graph api 如何对AAD租户中所有服务主体的导出进行分区?,microsoft-graph-api,Microsoft Graph Api,我们需要定期导出有关AAD租户的所有服务主体的信息。我们希望这个数字会很大,所以我们需要对导出进行分区。当从Microsoft Graph导出用户时,我们可以使用StartWithMail昵称作为筛选器,基于Mail昵称的第一个字母进行分区,但在appId和id上尝试此操作时,ServicePrincipals出错,请求\u UnsupportedQuery。有没有其他方法可以用来并行化数据导出 请求前:https://graph.microsoft.com/beta/servicePrinci

我们需要定期导出有关AAD租户的所有服务主体的信息。我们希望这个数字会很大,所以我们需要对导出进行分区。当从Microsoft Graph导出用户时,我们可以使用StartWithMail昵称作为筛选器,基于Mail昵称的第一个字母进行分区,但在appId和id上尝试此操作时,ServicePrincipals出错,请求\u UnsupportedQuery。有没有其他方法可以用来并行化数据导出


请求前:https://graph.microsoft.com/beta/servicePrincipals?$filter=accountEnabled eq true和startswithappId,'0'&$select=id,appId,displayName&$top=999

您尝试的方法与我在此处分享的方法类似请随意试用该代码:

图资源通常不支持对ID进行筛选。在我的简短实验中,我能够使用servicePrincipal的displayName对集合进行分区

但是请注意,这种方法不能保证统一分区。另外,在您的场景中,是否需要定期完全导出此优化

建议:考虑使用图的delta查询进行一次完全导出,然后只收增量变化。如果您希望大量但有限的资源流失,那么这可能是一个更好的优化

https://graph.microsoft.com/beta/servicePrincipals/delta


谢谢我试试看。Delta在处理用户时有很多限制,但是服务主体的查询比较简单,所以可能已经足够好了。