0

我使用 azure service management rest API 做了一个控制台应用程序来管理 azure 服务器。我按照http://msdn.microsoft.com/en-us/library/windowsazure/gg651127.aspx的说明创建证书,在订阅级别上传到 azure。导入到本地我的(个人)文件夹。一切正常。我可以获得托管服务。创建新的主机服务。

但是当我在我的机器上使用网络代理时。响应始终是 403 Forbidden。我试图在 HttpWebRequest 中设置代理,但仍然是同样的错误。

另外,我在 aws EC2 中运行这个控制台应用程序并且有相同的 403 Forbidden 错误(也许 EC2 也使用代理?)。

假设代理服务器应该将 Web 请求转发到带有证书的 azure management rest API 服务器,但我想不是。有人告诉我,这个证书可能只是自己生成的并且无效。所以代理服务器拒绝了它。不确定这是否是原因。

4

1 回答 1

0

Azure 管理 API 需要签名标头。一些代理会更改(添加/修改)标头标签,这会使签名无效并导致 403。

wrt EC2 - 您是否在 VM 上安装了管理证书?没有它,请求将失败并返回 403。

建议之一是使用 Fiddler 比较代理前后的请求。这会告诉你什么(如果有的话)正在改变。

于 2013-01-30T23:20:47.980 回答