VSCode安装Snyk扩展遇证书错误,不愿禁用代理或关闭SSL严格校验
解决VSCode安装Snyk扩展时的本地证书错误
问题描述
安装Snyk VSCode扩展时,输出窗口弹出以下错误:
[Error] Failed to download or update Snyk dependencies. {"code":"UNABLE_TO_GET_ISSUER_CERT_LOCALLY","message":"unable to get local issuer certificate","stack":"Error: unable to get local issuer certificate\n at Function.AxiosError.from (c:\Users\XYZ\.vscode\extensions\snyk-security.snyk-vulnerability-scanner-2.16.0\node_modules\axios\dist\node\axios.cjs:841:14)
需求为保留代理配置,且不设置"http.proxyStrictSSL": false。
解决方案
- 导出代理使用的根CA证书:
- 若用浏览器代理,可从浏览器证书管理器导出根证书,保存为PEM格式文件(如命名为
proxy-root-cert.pem) - 若用系统代理,可从系统证书存储(Windows证书管理器、macOS钥匙串访问)导出对应根证书为PEM格式
- 若用浏览器代理,可从浏览器证书管理器导出根证书,保存为PEM格式文件(如命名为
- 配置VSCode信任该证书:
- 打开VSCode设置(快捷键
Ctrl+,) - 搜索框输入
http.proxyCaCertificate - 将导出的证书文件路径填入输入框,Windows路径需转义反斜杠,示例:
C:\\Users\\XYZ\\Documents\\proxy-root-cert.pem
- 打开VSCode设置(快捷键
- 重启VSCode,重新尝试安装或更新Snyk扩展
原理说明
该错误是因为VSCode默认不识别代理使用的自签名/私有根证书,通过指定http.proxyCaCertificate,让VSCode信任该根证书,即可在保留SSL严格校验的前提下,正常通过代理下载依赖。
内容的提问来源于stack exchange,提问作者Kajal Bhandare
相关产品推荐
相关产品推荐

