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

问题描述 投票:3回答:1

我正在整合我们公司的一些内部应用程序,使用我们的GSuite实例在他们登录时验证我们的员工,使用GSuite对Open ID Connect的支持。

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

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

是否要求开始使用其他范围?或者我是否需要单独请求检索其他用户信息?

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

google-oauth2 gsuite oidc
1个回答
0
投票

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

这似乎有点过头了,因为我只需要当前用户的扩展细节,我已经有了OAuth2访问令牌。

我发现this question在解决问题方面非常有帮助。

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

© www.soinside.com 2019 - 2024. All rights reserved.