2016-06-21 47 views
3

我们有一点,我们正在运行到与尝试读取无需用户交互给定用户的电子邮件授权一对夫妇应用的困境。这种方法的关键在于我们不需要用户交互,并且希望使用从Google Developer Console下载的适当JSON证书加载客户端服务器应用程序。Gmail的API访问单用户没有域宽代表团

我有这种方法对于我们开发者控制台创建一个服务帐户的程序工作,然后委托域广泛的权力与适当范围访问该帐户。然而,我们希望的是,我们不必委托域范围的权限,只需阅读创建此开发人员控制台项目的用户电子邮件。我为此尝试了许多不同类型的解决方案,但始终遇到同样的限制,我必须授予域范围的访问权限。

什么我不知道是如果有任何方式来获得访问单个用户邮箱使用服务器到服务器类型的方法,而不必授予域范围内的访问?

我很欣赏这个问题您的帮助!

回答

0

有没有支持你想要做什么样的认证流程。您必须使用已委派域名权限的服务帐户,否则您必须使用涉及用户同意的3LO流程。

+0

好的非常感谢。这是我的想法,但我只是想确保我没有忽略任何选项。谢谢。 –

+0

@Jamesconnor这个问题有任何更新吗? – omittones

-1

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

要支持服务器到服务器的交互,请先在Developers Console中为您的项目创建一个服务 帐户。如果您想要 访问Google Apps域中用户的用户数据,请将 授权给域服务帐户。

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

最后,您的应用程序可以使用访问令牌调用谷歌 的API。