确定通过Oauth2登录的Google Apps用户的角色,组或组织单位

时间:2013-08-07 02:01:57

标签: google-api oauth-2.0 google-apps google-oauth google-api-php-client

我有一个PHP网络应用程序,它已经使用我们的Google Apps帐户实施了OAuth2身份验证。这是在开发人员控制台中设置APP并使用google-api-php-client授权用户,并检查他们的电子邮件是否与我的谷歌应用程序域匹配的简单任务。

虽然OAuth2授权为我提供了用户的基本信息,但我还要检查用户是否具有特定角色或组织单位OR成员组。

如果我可以查询/检查其中任何一项,我可以根据Google Apps帐户中的用户配置启用/禁用我的网络应用程序中的功能 - 而不是在网络中存储用户列表和访问级别应用

任何人都可以告诉我如何让我的应用程序请求此附加信息。我一直在寻找Provisioning(已弃用)和更新的Directory API,但我认为登录用户(而不是APP)需要具有完全管理员权限才能实际查询用户或组信息。

2 个答案:

答案 0 :(得分:2)

您的印象是正确的。用户无需API调用即可确定自己的组成员身份或orgUnit。

您可以考虑创建一个委派的管理员帐户,该帐户只有通过API读取组和orgUnit的权限,并在您需要为用户确定此信息时以该用户身份进行身份验证。

答案 1 :(得分:0)

user.get 请求返回一个“orgUnitPath”,其中包含整个组织单位路径,包括父单位。