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

Identity Server报unsupported_grant_type错误排查求助

问题分析与解决方法

核心误解与错误原因

  • Hybrid授权类型不是通过直接调用/connect/token端点并传入用户名密码来获取令牌的,它属于交互式授权流程,必须分步骤完成,且/connect/token端点本身不支持hybrid作为grant_type的值,这就是你收到“unsupported_grant_type”错误的原因。
  • HybridAndClientCredentials的含义是允许客户端同时使用两种独立的授权类型:Hybrid流程和ClientCredentials流程,并非把两者合并成一种可直接传用户名密码的复合类型。

正确操作方案

方案1:用用户名密码直接获取令牌(密码模式)

如果你的需求是通过用户名密码直接拿到令牌,应该修改客户端配置并使用密码模式:

  1. 修改客户端的AllowedGrantTypes为GrantTypes.ResourceOwnerPasswordAndClientCredentials:
AllowedGrantTypes = GrantTypes.ResourceOwnerPasswordAndClientCredentials,
  1. 在Postman中调用/connect/token时,使用以下参数:
    • grant_type=password
    • username=你的用户名
    • password=你的密码
    • client_id=clientOne
    • client_secret=secret12345
    • scope=api

方案2:正确使用Hybrid流程(交互式授权)

如果确实需要使用Hybrid流程(比如要同时获取id_token和授权码),需遵循两步流程:

  1. 调用授权端点/connect/authorize,携带以下参数(需在浏览器环境中触发,完成用户登录授权):
    • response_type=code id_token(或code token等Hybrid类型的响应组合)
    • client_id=clientOne
    • redirect_uri=https://www.getpostman.com/oauth2/callback
    • scope=api openid(必须包含openid scope才能返回id_token)
      授权完成后,会跳转到指定的redirect_uri,并携带code和id_token参数。
  2. 使用拿到的code调用/connect/token端点,用grant_type=authorization_code换取access_token。

内容的提问来源于stack exchange,提问作者Code Ratchet

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 01:15:35