当前位置: 首页 > 知识库问答 >
问题:

如何通过自定义守护进程和graph REST API访问多个用户的OneDrive文件?

郑嘉悦
2023-03-14

我们正在开发一个守护程序服务,该服务将定期自动连接到Microsoft Graph API,以列出所有用户驱动器中带有敏感内容的任何文件。我们已经在我们的Azure/Office365租户帐户中设置了一个自定义应用程序,该应用程序启用了许多特权(为了测试起见,所有Graph和Sharepoint privs(以及其他一些))。

使用Graph Explorer工具和我的个人登录帐户,我可以使用/me/drive/root/childrementendpoint和/users(' ')/drive/root/childrement endpoint(当用户ID是我自己的时)列出自己驱动器帐户中的文件。当我尝试使用curl和client_credentialsclient_idclient_secretgrant_type连接时,/users(' ')/drive 返回正确的驱动器id,但/users(' ')/drive/root/childrement 只返回一个空的子级列表。

是不是有一些许可,我错过了,我们需要设置在某个地方?

这是对图API当前状态的限制吗?

这是client_credentials授权类型的限制吗?

共有1个答案

陆栋
2023-03-14

这是Graph API当前状态的一个限制--不存在一个仅适用于应用程序的权限范围,用于客户端凭据流,这将允许应用程序访问任何用户的驱动器/文件。files.*作用域只能用作委托权限-请参见https://graph.microsoft.io/en-us/docs/authorization/permission_scopes。

 类似资料:
  • 我了解到Microsoft Graph是访问所有个人商业账户的方式。 > 所以我用我的OneDrive凭据myname@yandex.com登录了Azure(免费)门户,登录后用mynameyan...@onmicrosoft.com作为主体用户创建了一个Azure默认目录。 遵循教程,在应用程序注册下创建应用程序,授予它所有的权限,还通过门户管理同意,生成客户端秘密,并从门户->Azure目录-

  • 问题内容: 我已经添加了 到/ etc / default / docker以使Docker API在我的主机上可访问(我在Ubuntu VM上的Virtualbox中运行Docker)。但是,当我尝试立即运行任何Docker命令时,我只会收到以下错误消息: 我尝试了sudo service docker restart,并重新启动了机器,但没有任何反应。知道是什么问题吗? 问题答案: 要通过tc

  • 守护(Daemon)进程 我们可以认为守护进程就是后台服务进程,因为它会有一个很长的生命周期提供服务,关闭终端不会影响服务,也就是说可以忽略某些信号。 实现守护进程 首先要保证进程在后台运行,可以在启动程序后面加&,当然更原始的方法是进程自己fork然后结束父进程。 if (pid=fork()) { exit(0); // Parent process } 然后是与终端、进程组、会话(Ses

  • Daemonset可以确保全部(或者某些)节点上运行一个Pod的副本。 Daemonset可以确保全部(或者某些)节点上运行一个Pod的副本。当有节点加入集群时,也会为他们新增一个Pod。当有节点从集群移除时,这些Pod也会被回收。删除DaemonSet将会删除它创建的所有Pod。 Daemonset典型用法如下: 在每个节点上运行集群存守护进程 在每个节点上运行日志收集守护进程 在每个节点上运行

  • 建议使用 systemd 管理我们的服务进程。 可以参考swoole官方文档 使用方法 请确保cabal.php配置文件中的swoole.daemonize配置为关闭状态(0或false)! 'swoole' => [ // ... 'daemonize' => 0, // ... ], 在 /etc/systemd/system/目录中,创建一个 cabal.