Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.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 api?_Google Api_Gmail_Google Oauth_Gmail Api_Service Accounts - Fatal编程技术网

Google api 什么时候应该使用服务帐户访问google api?

Google api 什么时候应该使用服务帐户访问google api?,google-api,gmail,google-oauth,gmail-api,service-accounts,Google Api,Gmail,Google Oauth,Gmail Api,Service Accounts,我正在尝试使用谷歌api从gmail帐户获取新的电子邮件。然而,阅读文档时,我发现有两种类型可以访问api,第一种是未经授权的(使用json凭据),第二种是服务帐户(使用p12证书和secretkey) 无法理解这两者之间的区别是什么?我到底应该用什么 谢谢是您正在查看的第一种类型。使用Oauth2,将向必须批准您访问的用户显示同意屏幕。用法您想要访问用户的Gmail帐户,您想要访问用户的google日历,您想要访问用户的google驱动器 通过获取服务帐户电子邮件地址并将其添加为相关数据的用户

我正在尝试使用谷歌api从gmail帐户获取新的电子邮件。然而,阅读文档时,我发现有两种类型可以访问api,第一种是未经授权的(使用json凭据),第二种是服务帐户(使用p12证书和secretkey)

无法理解这两者之间的区别是什么?我到底应该用什么

谢谢

是您正在查看的第一种类型。使用Oauth2,将向必须批准您访问的用户显示同意屏幕。用法您想要访问用户的Gmail帐户,您想要访问用户的google日历,您想要访问用户的google驱动器

通过获取服务帐户电子邮件地址并将其添加为相关数据的用户,可以预授权访问。用法:如果您希望允许其他用户将文件上载到您的google drive帐户,您可以将服务帐户电子邮件地址添加到google drive上的文件夹中,然后服务帐户将能够上载到该文件夹,而无需提示任何用户请求权限

要访问用户帐户时使用Oauth2,要访问由开发人员控制的帐户时使用服务帐户


如果您想访问用户的Gmail帐户,您需要使用Oauth2,您不能授予其他用户访问您的Gmail的权限,因此无法授予服务帐户访问权限。

谢谢。所以主要的区别是,我将看到弹出窗口,建议在第一个变体中进行授权,而第二个变体已经包含授权。对吧?对。我喜欢按照授权的方式来考虑服务账户。您在设置服务帐户时已授予权限。例如,在谷歌日历上以用户身份添加服务帐户电子邮件地址可以访问日历。如果是用户,则必须弹出“身份验证”窗口,询问他们我是否可以查看您的数据。看看我的谷歌初学者开发系列。可能有助于@DaImTo感谢您的回答:您知道使用服务帐户是否有任何限制吗?不假设您有权预自动启用服务帐户。