0

我正在编写一组允许用户在其域上运行管理功能的 Powershell Cmdlet。使用 gData,我已经能够进行配置调用来创建新用户、列出组和其他类似的东西。当试图列出另一个用户的文档(作为管理员)时,我遇到了 DocsList api 的障碍,所以我转而使用 Google Drive api。

我已经能够让 Drive API 工作,并根据他们的QuickStart for DotNetFile List Example运行 Cmdlet 。但是,我似乎无法弄清楚如何让它为另一个用户列出文档。到目前为止,我发现的所有内容似乎都指向使用服务帐户进行委派使用旧的 DocList api ,无论如何,它已被贬低以支持 Drive API。

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

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

4

1 回答 1

1

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

于 2013-04-10T19:35:59.000 回答