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

API Gateway mTLS配置异常:非信任CA证书可通过请求

API Gateway mTLS验证失效问题诊断与解决

核心原因

你在curl请求中错误地使用了**证书签名请求(CSR)**而非CA签发完成的客户端证书,这是导致非信任CA签发的请求被放行的关键。

错误操作分析

你的curl命令传入的是.csr文件(如john.csr、marta.csr):

curl --cert john.csr --key john.key myapi.com/test

CSR只是用于向CA申请签名的请求文件,本身不包含CA的有效签名,不属于合法的客户端证书。API Gateway的mTLS验证逻辑在收到无效的"证书"(CSR)时,没有触发完整的信任链校验,导致请求被意外放行。

正确操作步骤

使用CA签发后的客户端证书文件(.pem)作为--cert参数的值:

  1. 对于John的合法证书,执行:
curl --cert john.pem --key john.key myapi.com/test

此时请求会正常通过,因为John的证书由信任库中的RootCA签发。

  1. 对于Marta的证书,执行:
curl --cert marta.pem --key marta.key myapi.com/test

此时请求会被拒绝,因为Marta的证书由未在信任库中的RootCA-2签发,符合预期的mTLS验证逻辑。

额外验证建议

可以先检查证书文件的有效性,确认是已签名的证书而非CSR:

openssl x509 -in john.pem -text -noout

该命令会输出证书的完整信息(包括签发CA、有效期等),而如果是CSR文件,执行openssl req -in john.csr -text -noout才会输出内容,以此区分两种文件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 18:33:09