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

仅使用Identity Server4做OAuth2授权不含OpenID Connect scope是否可行?

是否可以发起不携带openid scope的OAuth2请求

完全可以。openid 是 OpenID Connect(OIDC)协议在原生 OAuth2 标准基础上新增的必填 scope,仅在你需要获取标识用户身份的 ID Token 时才需要使用,纯 OAuth2 流程本身没有强制要求携带该 scope。


不同场景的处理规则

  • 如果你对接的是纯 OAuth2 授权服务:构造请求时 scope 参数只需要传入你实际需要的业务权限范围即可,比如 user:read、order:write 等,无需添加 openid,授权服务只会返回 access token,部分场景会同时返回 refresh token,不会生成 ID Token,完全满足你的需求。
  • 如果你对接的是默认集成 OIDC 能力的身份提供商(IDP):绝大多数主流 IDP 都兼容纯 OAuth2 模式,你只需要在构造授权请求时不在 scope 中添加 openid 即可,服务端检测到没有该 scope 时会自动按纯 OAuth2 流程处理,不会返回 ID Token。

常见注意事项

  • 部分 IDP 的默认配置会自动给所有应用请求追加 openid scope,这种情况你可以进入对应 IDP 的应用管理后台,关闭「强制 OIDC 模式」「强制携带 openid scope」类的配置开关,即可正常发起不带 openid 的请求。
  • 不带 openid scope 的授权码模式请求示例如下:
GET https://your-idp-domain.com/oauth2/authorize?
client_id=your_app_client_id
&response_type=code
&redirect_uri=https://your-app.com/callback
&scope=user:read order:write
&state=random_anti_csrf_value

你按上述规则构造请求后,后续用授权码兑换 token 时,返回结果只会包含 access_token、expires_in、refresh_token(如果开启了刷新令牌能力),不会出现 id_token 字段。


内容的提问来源于stack exchange,提问作者Kakha Salukvadze

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 15:15:03