Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google api 使用普通Google帐户作为服务帐户_Google Api_Google Oauth - Fatal编程技术网

Google api 使用普通Google帐户作为服务帐户

Google api 使用普通Google帐户作为服务帐户,google-api,google-oauth,Google Api,Google Oauth,我有一个使用Google Drive的应用程序,它必须(a)不需要用户登录,(b)填充授权用户可以查看的文档 因此,使用常规帐户作为服务帐户似乎是我唯一的选择,如下所述 使用常规Google帐户作为应用程序拥有的帐户 你可以像任何用户一样,通过 通过Google帐户注册流或在上创建帐户 你的谷歌应用程序域。确保它从未被实际用户使用过 个人,但仅限于您的应用程序 要以编程方式访问帐户的驱动器,您需要 手动遍历OAuth 2.0 web服务器流一次,然后存储 或者硬编码用户的凭据,例如刷新令牌,以

我有一个使用Google Drive的应用程序,它必须(a)不需要用户登录,(b)填充授权用户可以查看的文档

因此,使用常规帐户作为服务帐户似乎是我唯一的选择,如下所述

使用常规Google帐户作为应用程序拥有的帐户

你可以像任何用户一样,通过 通过Google帐户注册流或在上创建帐户 你的谷歌应用程序域。确保它从未被实际用户使用过 个人,但仅限于您的应用程序

要以编程方式访问帐户的驱动器,您需要 手动遍历OAuth 2.0 web服务器流一次,然后存储 或者硬编码用户的凭据,例如刷新令牌,以 能够以编程方式访问其驱动器。有关 驱动器的web服务器流,请参阅实现服务器端 授权

虽然它不鼓励用户访问,但并不禁止用户访问。然而,我被这句话弄糊涂了

您需要一次又一次地手动检查OAuth 2.0 web服务器流 然后存储或硬编码用户的凭据


似乎没有一种记录在案的方法可以做到这一点(是的,我已经搜索过了)-有人能帮我看一下吗?

您不使用常规帐户作为服务帐户,这是不同的事情。每个帐户都是一种应用程序拥有的帐户

常规帐户只是应用程序使用的普通Google帐户。由于常规帐户需要手动授权步骤(进入浏览器、登录谷歌并授权您的应用程序),因此您需要在第一次手动执行此操作,然后保存令牌。这里有一些例子。保存令牌后,您的应用程序可以在无需您干预的情况下自行授权

服务帐户是一个与用户无关且不需要手动授权的帐户。您可以在开发人员控制台中创建服务帐户,如下所述。对于这种类型的帐户,您可以使用私钥文件来授权您的应用程序


除非您需要访问将管理您的文件的帐户的web界面(例如,购买更多存储),否则我建议使用服务帐户,因为它不需要手动步骤。

Hi,这是否意味着web界面无法访问服务帐户?我希望有一个应用程序拥有的帐户,供用户下载资料,我通过web界面上传资料,我应该选择常规acc还是服务acc?是的,服务帐户用于以编程方式访问资源(您可以与常规帐户共享资源,这样他们就可以在浏览器中访问资源)。。。我不知道你所说的“用户下载东西的应用程序拥有帐户”是什么意思。嗨,green grass,你找到解决方案了吗?我还想知道如何“手动遍历OAuth 2.0 web服务器流一次,然后存储或硬编码用户的凭据”。。。