如何发送管理员帐户的凭据,以便他们可以在谷歌上创建用户帐户?

时间:2014-10-17 17:07:42

标签: php google-oauth google-api-php-client google-admin-sdk google-login

我了解使用Admin SDK仅适用于OAuth2.0协议,该协议要求登录Google并使用在开发者控制台中创建的凭据。我的情况是,我正在实施一个流程,以便在我们的应用程序中招募员工并在Google中创建一个帐户,但并非所有用户都拥有管理员权限才能申请Google帐户。

我使用了我的用户功能并且工作正常(因为我的用户是管理员)但是当将其上传到生产时,另一个用户在创建员工时无法创建用户帐户,发送没有权限使用资源的错误/ API,显然这个人没有管理员权限。

那么如何从服务器端发送管理员帐户的凭据,以便他们可以在谷歌上创建用户帐户?

不是我的意思吗? 用谷歌翻译翻译

2 个答案:

答案 0 :(得分:0)

有两种选择:

1)存储管理员凭据。

在此方法中,您有一个管理员帐户通过特殊授权流程,并将他们的access_tokenrefresh_token存储在您的数据库中。每当您需要发出需要管理员权限的请求时,请使用管理员存储的凭据而不是用户的凭据。

2)使用服务帐户模拟管理员。

服务帐户可以是granted domain-wide authority,允许他们模拟域中的任何用户。当您需要发出需要管理员权限的请求时,请使用服务帐户来模拟域管理员。

选项#1对代码编写要简单得多,但在您的应用程序中需要特殊的管理流程。

答案 1 :(得分:-1)

打开Goog​​le控制台并选择您的项目。你会找到许可菜单。当你必须在那里添加一个成员时,你需要添加一个成员。