我有一个使用Google云端硬盘的应用程序,必须(a)不要求用户登录,(b)填写授权用户可以查看的文档。
因此,使用常规帐户作为服务帐户似乎是我唯一的选择,如此处所述https://developers.google.com/drive/web/service-accounts
将常规Google帐户用作应用程序拥有的帐户
您可以像往常一样创建常规Google帐户 通过Google帐户注册流程或创建帐户 您的Google Apps域名。确保它从未被实际使用过 这个人,但仅限于你的申请。
要以编程方式访问帐户的云端硬盘,您需要这样做 手动完成一次OAuth 2.0 Web服务器流程,然后存储 或硬编码用户的凭据,例如刷新令牌 能够以编程方式访问其驱动器。有关的更多信息 Drive的Web服务器流程,请参阅实施服务器端 授权。
虽然它不鼓励用户访问,但它并没有禁止它。但是我对这条线感到困惑
您需要手动完成一次OAuth 2.0 Web服务器流程 然后存储或硬编码用户的凭证
似乎没有记录的方法来做到这一点(是的,我已经搜索过了) - 有人可以引导我吗?
答案 0 :(得分:1)
您不会将常规帐户用作服务帐户,这些是不同的事情。每种都是应用程序拥有的帐户。
常规帐户只是您的应用使用的普通Google帐户。由于常规帐户需要手动授权步骤(访问浏览器,登录Google并授权您的应用),您需要在第一次手动执行此操作,然后保存令牌。 this page中有一些例子。保存令牌后,您的应用可以在没有您干预的情况下进行授权。
服务帐户是一个与用户无关且不需要手动授权的帐户。您可以按照here所述在开发人员控制台中创建服务帐户。使用此类帐户,您可以使用私钥文件来授权您的应用。
除非您需要访问管理文件的帐户的网络界面(例如,购买更多存储空间),否则我建议您使用服务帐户,因为它不需要手册步骤