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

运行流水线时AWS CodeCommit Git操作SSL证书报错问题

该报错根因为ZScaler开启SSL解密时,会替换目标站点的SSL证书为ZScaler自签发证书,异常设备的Git工具未信任ZScaler的根CA证书,因此校验证书失败。

定位步骤
  • 对比两台设备的Git全局配置,执行git config --global --list,重点核对http.sslCAInfo、http.sslBackend两个配置项,确认异常设备是否缺失ZScaler根证书路径配置、或SSL后端配置和正常设备不一致
  • 检查系统证书存储:Windows系统打开证书管理器查看「受信任的根证书颁发机构」,macOS打开钥匙串访问查看系统根证书列表,Linux检查/etc/ssl/certs/目录,确认异常设备的ZScaler根证书是否已正确导入系统信任列表
  • 执行git config --global --get http.sslVerify,确认异常设备是否未关闭SSL校验同时未配置CA证书路径
  • 核对两台设备的Git版本,大版本差异会导致SSL后端读取证书的逻辑不同,比如Windows环境下旧版Git默认使用OpenSSL,新版默认使用Schannel(直接读取系统信任证书)
解决方案
  • 方案1(通用推荐):手动配置Git信任ZScaler根证书
    先从正常设备导出ZScaler根证书文件,在异常设备执行命令:
    git config --global http.sslCAInfo /path/to/zscaler-root-ca.crt
    将路径替换为你本地存放ZScaler根证书的实际路径即可
  • 方案2(Windows环境专属):切换Git的SSL后端为系统Schannel,自动读取系统已信任的证书,执行命令:
    git config --global http.sslBackend schannel
  • 临时验证方案:可临时关闭SSL校验执行克隆操作验证问题根源,命令如下:
    git -c http.sslVerify=false clone codecommit://alias@pipeline-name
    注意:该方案仅用于验证问题,不要长期开启SSL校验关闭配置,会存在数据传输被窃听的安全风险
  • 额外修复:如果上述配置均和正常设备一致,检查本地是否配置了GIT_SSL_CAINFO环境变量,该变量会覆盖Git全局配置的证书路径,删除错误的环境变量即可恢复

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 05:24:05