OAuth2 流调试器
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/oauth2-flow-debugger。
技能介绍
问题背景
OAuth 2.0 的授权流一旦出错,返回的信息往往很笼统:redirect_uri 参数拼写偏差、PKCE 的 code_verifier 没有随回调正确提交、设备码授权在轮询与兑换之间时序错位,授权服务器大多只回一个 invalid_request,单看响应很难判断根因。手动排查意味着在浏览器里走一遍流程,再拿工具逐个检查令牌,过程碎片化,中间环节也容易被漏看。
核心能力
这个技能围绕三类常见的授权场景展开:
- 授权码 + PKCE:校验
code_challenge与回调携带的code_verifier是否匹配,追踪整条重定向链 - 客户端凭证授权:检查
access_token的签发与使用是否符合预期 - 设备码授权:梳理设备码换取、用户确认、轮询与令牌兑换之间的调用顺序
工作方式分三步:先用 node-fetch 发起请求或拦截实际的回调流量;再通过 jose 库解析 JWT 格式的令牌,解码其中的 claims,确认签发者、受众、过期时间等字段;最后把重定向链串联起来,定位问题出在客户端配置、授权端点参数,还是令牌校验环节。
适用边界
技能文档没有附带自动提取出的安装与使用说明,上游参考来自 https://oauth.net/2/ 的规范资料。使用前建议先通读上游项目,确认它覆盖的授权类型与你的实现是否匹配。涉及生产环境或敏感流程时,应先在隔离环境中验证,再决定是否对真实身份提供商运行调试逻辑。另外,它只解决定位问题,不会替你修代码——找到根因之后,修改实现仍是开发者自己的事。
使用场景
- 接入第三方身份提供商时授权回调失败,需要追踪重定向链并定位是哪个参数出错
- 客户端凭证授权签发的 access_token 校验失败,需要解码 JWT claims 确认签发者与过期时间
- 设备码授权流程在用户确认后的轮询或兑换环节卡住,需要梳理完整调用时序
- 线上授权请求频繁返回 invalid_request,需要重放流程并检查 PKCE 校验值是否随回调正确提交
适合人员
- 后端工程师:正在为应用接入第三方登录,回调报错却定位不到是哪个参数出错
- 安全工程师:需要审计客户端凭证授权的令牌签发过程,验证 access_token 的 claims 是否符合规范
- 客户端开发者:在 CLI 工具或电视设备上实现设备码授权,流程卡住需要逐环节排查
- 平台集成工程师:负责对接多个授权服务器,需要快速判断问题出在客户端配置还是令牌校验