未修改代码与依赖,连接API时突发Unknown issuer错误求助
问题解答
这个错误和自签名SSL证书完全无关,具体分析如下:
错误本质:
Uncaught Jose\Component\Checker\InvalidClaimException: Unknown issuer是JWT校验环节的iss(签发者)声明不匹配导致的——你的应用配置的允许签发者列表,和API返回的JWT里的iss字段值对不上,触发了IssuerChecker.php里的校验逻辑报错。排除SSL的理由:你本地是无SSL环境,SSL相关问题只会引发证书验证失败、握手错误、连接中断这类异常,根本不会触发JWT的声明校验错误。而且其他用户连接API正常,说明API的JWT签发逻辑没有问题,问题出在你本地环境的校验配置或请求链路。
给你几个排查方向:
- 解码API返回的JWT,查看其中的
iss字段值,对比你应用代码里配置的允许签发者列表是否一致 - 检查本地环境的请求链路,比如hosts文件是否被修改、有没有开启代理,导致请求到了错误的服务,拿到了异常的JWT
- 确认本地的JWT校验配置有没有被意外改动(比如配置文件被误编辑)
- 清理本地应用的缓存,排查是否缓存了旧的JWT配置或过期token
内容的提问来源于stack exchange,提问作者Konorr
相关产品推荐
相关产品推荐

