管理员访问用户谷歌驱动器文件从安装的应用程序与Oauth2

本文关键字:安装 应用程序 Oauth2 文件 访问 用户 谷歌 驱动器 管理员 | 更新日期: 2023-09-27 18:08:27

我正在编写一组Powershell cmdlet,允许用户在他们的域上运行管理函数。使用gData,我已经能够做配置调用来创建新用户,列表组和其他性质的事情。当试图列出另一个用户的文档(作为管理员)时,我遇到了DocsList api的障碍,所以我转向了Google Drive api。

我已经能够让驱动器API工作,并有一个Cmdlet运行基于他们的快速入门DotNet和文件列表的例子。然而,我似乎不知道如何使它为另一个用户列表文档。到目前为止,我所发现的一切似乎都指向使用服务帐户进行委托或使用旧的DocList api,而不是贬值以支持驱动器api。

我的问题是服务帐户似乎是已安装应用程序的替代品,而不是我可以同时使用的东西。或者,如果我能让它工作,我将不得不让每个用户创建自己的项目和服务帐户,如果我理解的事情。

我如何在不给用户带来不便的情况下做到这一点?他们已经将自己认证为管理员,我不明白为什么他们必须创建一个API项目和服务帐户来实现同样的事情。我要为我的API项目创建一个单独的服务帐户吗?如果是这样,我如何处理它生成并需要访问的公钥?如果我乱扔密钥文件,这似乎不太安全。

管理员访问用户谷歌驱动器文件从安装的应用程序与Oauth2

只能使用服务帐户模拟用户。一旦您为域范围的权限配置了服务帐户,您就可以使用您的管理员帐户发出请求。但是,我不确定Google Apps是否允许多个管理员帐户。如果他们这样做,你所需要的只是设置一个项目和一个服务帐户。