我是Azure新手,我正在尝试从我的计算机(mac OS)运行命令行。我通过自制软件安装了azure-cli,当我执行az login
时,出现以下错误:
请求中发生错误。,SSLError:HTTPSConnectionPool(host =' management.azure.com',port = 443):使用url:/ tenants超出最大重试次数?/ api-version = 2016-06- 01(由SSLError引起(SSLError("错误握手:错误([(' SSL例程',' ssl3_get_server_certificate','证书验证失败')] )&#34 ;,))) Traceback(最近一次调用最后一次): 文件" /usr/local/Cellar/azure-cli/2.0.25/libexec/lib/python3.6/site-packages/urllib3/contrib/pyopenssl.py" ;,第441行,在wrap_socket中 cnx.do_handshake() 文件" /usr/local/Cellar/azure-cli/2.0.25/libexec/lib/python3.6/site-packages/OpenSSL/SSL.py" ;,第1806行,在do_handshake中 self._raise_ssl_error(self._ssl,result) 文件" /usr/local/Cellar/azure-cli/2.0.25/libexec/lib/python3.6/site-packages/OpenSSL/SSL.py" ;,第1546行,在_raise_ssl_error中 _raise_current_error() 文件" /usr/local/Cellar/azure-cli/2.0.25/libexec/lib/python3.6/site-packages/OpenSSL/_util.py" ;,第54行,在exception_from_error_queue中 提出exception_type(错误) OpenSSL.SSL.Error:[(' SSL例程',' ssl3_get_server_certificate','证书验证失败')]
我尝试了以下内容:
导出ADAL_PYTHON_SSL_NO_VERIFY = 1 export AZURE_CLI_DISABLE_CONNECTION_VERIFICATION = 1
按照:https://github.com/Azure/azure-cli/issues/2267
这让我可以登录,但是当我执行az acr login --name <registry name>
时,我又遇到了类似的错误:
HTTPSConnectionPool(host =&#39; registryName.azurecr.io&#39;,port = 443):使用url:/ v2 /超出了最大重试次数(由SSLError引起(SSLError(&#34;错误的握手:错误( [(&#39; SSL例程&#39;,&#39; ssl3_get_server_certificate&#39;,&#39;证书验证失败&#39;)],)&#34;,),)) Traceback(最近一次调用最后一次): 文件&#34; /usr/local/Cellar/azure-cli/2.0.25/libexec/lib/python3.6/site-packages/urllib3/contrib/pyopenssl.py" ;,第441行,在wrap_socket中 cnx.do_handshake() 文件&#34; /usr/local/Cellar/azure-cli/2.0.25/libexec/lib/python3.6/site-packages/OpenSSL/SSL.py" ;,第1806行,在do_handshake中 self._raise_ssl_error(self._ssl,result) 文件&#34; /usr/local/Cellar/azure-cli/2.0.25/libexec/lib/python3.6/site-packages/OpenSSL/SSL.py" ;,第1546行,在_raise_ssl_error中 _raise_current_error() 文件&#34; /usr/local/Cellar/azure-cli/2.0.25/libexec/lib/python3.6/site-packages/OpenSSL/_util.py" ;,第54行,在exception_from_error_queue中 提出exception_type(错误) OpenSSL.SSL.Error:[(&#39; SSL例程&#39;,&#39; ssl3_get_server_certificate&#39;,&#39;证书验证失败&#39;)]
我有什么办法可以解决这个问题吗?提前谢谢。
答案 0 :(得分:0)
我认为问题在于Python库无法正确执行握手。从错误来看,当SSL脚本发出请求时,OpenSSL似乎不想信任该请求。
https://pyopenssl.org/en/stable/api.html该站点提供有关OpenSSL库的信息。 Python脚本似乎无法正确实现SSL功能。
答案 1 :(得分:0)
如此处文档所述,尝试设置REQUESTS_CA_BUNDLE: https://github.com/Azure/azure-cli/blob/dev/doc/use_cli_effectively.md#working-behind-a-proxy