【问题标题】:Access extended user information using GSuite Open ID Connect使用 GSuite Open ID Connect 访问扩展的用户信息
【发布时间】:2018-10-29 07:43:07
【问题描述】:

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

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

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

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

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

【问题讨论】:

    标签: google-oauth google-workspace openid-connect


    【解决方案1】:

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

    这似乎有点矫枉过正,因为我只需要 当前 用户的详细信息,我已经有一个 OAuth2 访问令牌。

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

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

    【讨论】:

      猜你喜欢
      • 2023-03-10
      • 2019-09-20
      • 2020-03-19
      • 1970-01-01
      • 1970-01-01
      • 2018-08-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多