使用az login遇SSL证书验证失败问题(代理环境下)
解决Azure CLI代理环境下[SSL: CERTIFICATE_VERIFY_FAILED]错误
你的操作问题出在手动创建certifi路径并单独放置PEM证书的方式不正确:Azure CLI自带独立的Python运行环境,不会读取你新建文件夹里的单独证书文件,且你指定的路径可能并非CLI实际使用的certifi目录。以下是针对性解决方案:
方法1:追加证书到CLI自带的cacert.pem(直接修改证书链)
- 找到Azure CLI实际安装路径:
执行(Get-Command az).Source获取az.exe位置,比如返回C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\wbin\az.exe,则上级目录C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2就是CLI根目录。 - 定位自带的certifi文件夹:
进入{CLI根目录}\Lib\site-packages\certifi,找到其中的cacert.pem文件。 - 合并证书:
用文本编辑器打开cacert.pem,将你从Azure门户导出的PEM格式证书内容追加到文件末尾,保存后重启PowerShell再执行az login。
方法2:通过Azure CLI配置指定证书(推荐,避免更新CLI时被覆盖)
直接在PowerShell中执行以下命令,指定你的代理证书路径:
az config set core.ca_cert="C:\绝对路径\你的证书文件.pem"
设置完成后无需修改任何系统文件,直接执行az login即可。
额外检查:确认代理配置正确
若代理未正确配置,也会导致证书验证失败,执行以下命令设置CLI代理:
az config set proxy.http_proxy=http://你的代理地址:端口 az config set proxy.https_proxy=https://你的代理地址:端口
或确保系统环境变量HTTP_PROXY和HTTPS_PROXY已设置为正确的代理地址。
内容的提问来源于stack exchange,提问作者learner
相关产品推荐
相关产品推荐

