Gmail API访问没有域范围授权的单个用户

时间:2016-06-21 20:57:44

标签: gmail-api

我们遇到了一些困境,我们遇到了几个试图读取给定用户电子邮件但没有用户交互授权的应用程序。这种方法的关键是我们不需要用户交互,并希望使用从Google Developer Console下载的适当JSON凭据加载客户端服务器应用程序。

我有这种方法适用于我们在Developer Console中创建服务帐户的程序,然后将域范围权限委派给具有适当范围访问权限的帐户。但是我们希望的是,我们不必委托域范围的权限,只需阅读创建此开发人员控制台项目的用户电子邮件。我为此尝试了许多不同类型的解决方案,但总是遇到我必须授予域范围访问权限的相同限制。

我想知道的是,是否有任何方法可以使用服务器到服务器类型方法访问单个用户邮箱,而不必授予域范围访问权限?

感谢您对此问题的帮助!

2 个答案:

答案 0 :(得分:0)

您没有支持的授权流程。您必须使用已委派域范围权限的服务帐户,或者必须使用涉及用户同意的3LO流程。

答案 1 :(得分:-1)

看来你正在寻找OAuth for Server to Server Application。您还将使用服务帐户。但是,授予服务帐户的域范围权限是可选的。如果您不想,则不必启用它。

  

要支持服务器到服务器的交互,请先创建服务   开发人员控制台中的项目帐户。如果你想   访问Google Apps域中用户的用户数据,然后委派   域范围内对服务帐户的访问。

     

然后,您的应用程序准备使用以进行授权的API调用   服务帐户的凭据,用于从中请求访问令牌   OAuth 2.0 auth服务器。

     

最后,您的应用可以使用访问令牌来呼叫Google   的API。