接口与安全

JWT / OAuth 认证工具

登录接口报错说 token 无效、要拼一个符合 PKCE 规范的授权地址、又或者对接登录时想核对 OIDC 文档字段,这些是认证调试绕不开的环节。JWT 解码解码与验证 JWT token 内容;JWK 转换在 JWK 与 PEM 间转换密钥,算出 RFC 7638 指纹;认证 Header 辅助生成或解码 Basic 认证头,检查 Bearer 令牌格式。

实现 OAuth 授权流程时,PKCE 生成器生成 PKCE Challenge,OAuth / OIDC 授权地址构建组合授权地址,同时生成 state、nonce 和 PKCE 参数。接入第三方身份提供商前,OIDC Discovery 查看与验证检查文档字段是否齐全,也能对比版本差异。排查证书类问题还可以用 SSH 公钥指纹解析公钥算法与位数。

7 个工具

JWT / OAuth / 身份认证工具常见问题

JWT 解码后能看到密钥吗,安不安全?

不能,也不需要。JWT 的 header 和 payload 部分只是 Base64 编码,本身没有加密,JWT 解码解码出来的只是这两部分的明文内容,用来确认里面存了哪些声明字段;真正用于签名验证的密钥并不包含在 token 里,解码操作本身不会泄露服务端的密钥。

为什么现在的 OAuth 授权流程都要加 PKCE?

PKCE 是为了防止授权码在传输过程中被截获后被冒用,尤其是移动端和单页应用这类不能安全保存客户端密钥的场景。用 PKCE 生成器生成一次性的 Challenge,再用 OAuth / OIDC 授权地址构建把它和 state、nonce 一起拼进授权地址,就能补上这层校验。

对接第三方登录前要检查 OIDC Discovery 文档的哪些字段?

至少要确认授权端点、令牌端点、用户信息端点和签名密钥地址这几个核心字段是否存在且可访问。用 OIDC Discovery 查看与验证直接检查文档里的字段是否齐全,服务商更新配置后也能用它对比新旧两版之间具体改了哪里。