如何为azure cli命令行工具设置代理?

如何为azure cli命令行工具设置代理?,azure,Azure,我在公司防火墙后面,无法使用命令行界面进行连接,该界面可能无法从系统配置中获取代理信息,但是我找不到设置正确选项的方法。您可以使用HTTP\u PROXY或HTTPS\u PROXY环境变量来设置代理。另一个答案中提到的环境变量是解决方案的一部分,因此您确实需要在登录之前运行这些命令来设置它们。注意(至少在我的例子中)两个URL都以http开始,而不是https 设置HTTP\u代理http://my-proxy-details 设置HTTPS\u代理http://my-proxy-detail

我在公司防火墙后面,无法使用命令行界面进行连接,该界面可能无法从系统配置中获取代理信息,但是我找不到设置正确选项的方法。

您可以使用HTTP\u PROXY或HTTPS\u PROXY环境变量来设置代理。

另一个答案中提到的环境变量是解决方案的一部分,因此您确实需要在登录之前运行这些命令来设置它们。注意(至少在我的例子中)两个URL都以http开始,而不是https

设置HTTP\u代理http://my-proxy-details

设置HTTPS\u代理http://my-proxy-details

或者,要永久设置它们:

[Environment]::SetEnvironmentVariable(“HTTP\U代理服务器”)http://my-proxy-details“,”机器“

[Environment]::SetEnvironmentVariable(“HTTPS\U代理”)http://my-proxy-details“,”机器“

如果这能帮你解决问题,你可以停止在这里阅读。如果没有,并且您看到一个证书错误,那么额外的步骤是查找Azure CLI的私有Python安装,并将您的根证书添加到其
cacert.pem
文件中。虽然Python本身使用Windows证书存储,但有些软件包(尤其是certifi)不使用

您将需要PEM格式的代理的根证书,也就是说,作为base64文本而不是二进制文件。它很可能有
.cer
扩展名


在Azure CLI的程序文件夹中查找site packages文件夹。对我来说,它是
C:\ProgramFiles(x86)\Microsoft SDK\Azure\CLI2\Lib\site packages
。搜索名为
cacert.pem
的文件。我找到了三个。复制证书的内容并将其粘贴到每个文件的底部。保存它们并重试。

现在我收到一个错误。。。SSL证书不受信任。。。有没有一种方法可以创建类似NPM strict ssl属性的东西?今天,不幸的是,您只能通过代码来实现它。尝试在客户端对象中设置strictSSL=false。设置环境变量会以什么方式改变任何事情?已尝试:根本不起作用。请将AZURE\u CLI\u DISABLE\u CONNECTION\u VERIFICATION设置为1,以避免在使用SSL拦截HTTP代理时出现SSL问题