2014-02-26 53 views
1

我想将用户配置给Google。因此,我有以下Google admin sdk来实现这一点。如何在没有浏览器重定向的情况下为Google API获取访问令牌

但请求授权的API我没有做一个浏览器重定向和用户要求登录和同意直接的能力。

我想有就是,当管理员创建一个用户在使用公司的IDP创建一个新的用户和的IdP将采取照顾创建一个谷歌帐户的新用户了。

我跟着this解释了不同的场景来获取访问令牌,但我注意到那里没有任何类似于与我的情况匹配的password \ resource_owner授予类型的场景。

有没有一种方法,我可以得到访问令牌没有浏览器重定向?或者有任何解决方法? (Google Apps Directory Sync是不是一个解决方案,因为它仅仅是支持LDAP,但我希望创建这样我们IDP)提前

感谢。

回答

6

会为你的情况下,服务帐户的工作?通过服务帐户,您可以模拟拥有Admin SDK所有权限的超级管理员。由于它是2LO,因此它不会重定向并要求管理员访问。 (注意:初始设置将要求超级管理员专门为管理控制台中的服务帐户授予OAuth访问权限,但这只是一次性)

Drive API文档有一个非常好的示例,使用服务帐户模拟用户。它按照步骤逐步创建服务帐户,还包含多个代码示例。唯一的问题是您必须将范围从Drive API更改为Admin SDK。

https://developers.google.com/drive/web/delegation

+0

谢谢艾米莉。我认为服务帐户的方式适用于我,但它不会允许我使用服务帐户访问目录API,因为它执行与用户相关的操作。我会尝试这种方式.. – DarRay

+0

您也可以使用服务帐户的目录API。 – AMS

+0

我能够列出用户以下的答案,所以我走上了正轨。感谢Emily你的回答是非常有帮助的。 – DarRay

相关问题