You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取GitLab OpenID ID Token?已有AccessToken的获取方式

GitLab OpenID权限下的ID Token获取说明

基础背景

  • 携带授予OpenID scope的GitLab Access Token调用https://gitlab.com/oauth/userinfo?access_token=<bearer token>接口时,返回的用户信息仅包含用户名、所属用户组等有限字段,无法直接获取用户邮箱地址。
  • 根据GitLab官方OpenID Connect提供方的规则说明:

sub、sub_legacy、email、email_verified 这几类声明(claims)均包含在ID Token中,其余所有声明可从OIDC客户端使用的/oauth/userinfo端点获取。

核心问题

在已持有Access Token的前提下,如何获取对应的ID Token?

现状说明

  • 该问题属于GitLab OpenID能力的已知待迭代优化项,官方仓库已开通对应专题issue跟踪讨论进度。
  • 目前不存在仅通过已生成的Access Token反向兑换ID Token的公开可用接口。

可行解决路径

  • 调整授权链路:从OAuth授权发起环节就按照标准OIDC流程提交请求,申请包含openid、email的scope权限,在授权码模式或混合模式的令牌交换阶段,会直接返回绑定的ID Token,无需在持有Access Token后再单独申请。
  • 若仅需获取用户邮箱信息:确认当前持有的Access Token已被授予email scope权限,重新调用/oauth/userinfo接口即可直接获取邮箱字段,无需依赖ID Token。

内容的提问来源于stack exchange,提问作者d-cubed

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.24 14:06:04