Google api 如何在没有浏览器重定向的情况下获取Google API的访问令牌

Google api 如何在没有浏览器重定向的情况下获取Google API的访问令牌,google-api,google-oauth,Google Api,Google Oauth,我想为用户提供一个谷歌。因此,我必须采取以下措施来实现这一目标 但请求API授权时,我无法执行浏览器重定向并直接请求用户登录和同意 我想要的是,当管理员创建一个新用户时,该用户应该使用公司的IdP创建,IdP也会关心为新用户创建一个google帐户 我已经按照这一点解释了获取访问令牌的不同场景,但我注意到没有任何场景类似于password\resource\u owner grant类型,这与我的案例相匹配 有没有一种方法可以在没有浏览器重定向的情况下获取访问令牌?或者有解决办法吗?(这不是一个

我想为用户提供一个谷歌。因此,我必须采取以下措施来实现这一目标

但请求API授权时,我无法执行浏览器重定向并直接请求用户登录和同意

我想要的是,当管理员创建一个新用户时,该用户应该使用公司的IdP创建,IdP也会关心为新用户创建一个google帐户

我已经按照这一点解释了获取访问令牌的不同场景,但我注意到没有任何场景类似于password\resource\u owner grant类型,这与我的案例相匹配

有没有一种方法可以在没有浏览器重定向的情况下获取访问令牌?或者有解决办法吗?(这不是一个解决方案,因为它只支持ldap,但我希望为我们的IdP创建类似的解决方案)


提前谢谢。

服务帐户是否适用于您的案例?使用服务帐户,您可以模拟拥有AdminSDK所有权限的超级管理员。因为它是2LO,所以不会重定向并请求管理员访问。(注意:初始设置需要超级管理员在管理控制台中专门为服务帐户授予OAuth访问权限。但这只是一次而已)

驱动器API文档提供了一个关于如何使用服务帐户模拟用户的非常好的示例。它逐步介绍了如何创建服务帐户,还包括多个代码示例。唯一的问题是,您必须将范围从驱动器API更改为AdminSDK


谢谢你,艾米丽。我认为服务帐户的方式适合我,但它不允许我使用服务帐户访问目录API,因为它执行与用户相关的操作。我将尝试这种方法。您也可以将目录API与服务帐户一起使用。我可以根据您的答案列出用户,所以我正在进行中。。谢谢Emily你的回答真的很有帮助。