使用GSuite Open ID Connect访问扩展的用户信息

时间:2018-10-29 07:43:07

标签: google-oauth2 gsuite oidc

我正在集成公司的一些内部应用程序,以使用GSuite实例通过GSuite对Open ID Connect的支持来对员工登录进行身份验证。

但是,我们的应用程序使用内部“员工ID”而不是我们的GSuite电子邮件地址来唯一标识用户。我看到it is possible用于在gsuite中存储/管理“员工ID”,但是我不确定用户成功通过身份验证后如何检索此信息。

当前,我正在从userinfo端点获取“声明”列表,但是这些声明仅包括用户的姓名和电子邮件地址。我还需要我们在GSuite上配置的电话号码和员工ID。

是否要求额外的范围开始?还是我需要单独请求以检索其他用户信息?

我看到有一个Admin Directory API,但似乎是用于访问域中所有用户的信息,而我只对CURRENT用户的扩展详细信息感兴趣。

1 个答案:

答案 0 :(得分:0)

最终,我创建了一个范围为https://www.googleapis.com/auth/admin.directory.user.readonly的服务帐户,以调用GET https://www.googleapis.com/admin/directory/v1/users/<current_user>。我必须将域范围的权限委派给该服务帐户,并将其设置为模拟管理员用户。

这似乎有些矫kill过正,因为我只需要 current 用户的扩展详细信息,对此我已经有一个OAuth2访问令牌。

我发现this question对解决该问题很有帮助。

如果任何人都可以提供利用OAuth2访问令牌的答案,我仍然会感激