将管理证书与 azure REST API 一起使用

2024-04-09

我在我的应用程序中使用 azure 服务管理 REST API。我在azure上上传了管理证书,并在本地有一份副本。 我将认证保存在应用程序本身的单独文件夹 (AzureCertificate) 中并引用该位置。 例如:

字符串证书路径 = Server.MapPath("~/AzureCertificate/") + 证书名称;

X509Certificate2 证书 = 新 X509Certificate2(certificatePath);

AzureCertificate -- 文件夹名称certificateName - 我的证书名称.cer

当我在本地开发环境中运行应用程序时,它工作正常。但是当我在天蓝色网站中部署相同的内容时,出现以下错误。

远程服务器返回错误:(403) Forbidden

这就是我提出请求的方式

字符串 uri = apiURL + 订阅Id + "/services/hostedservices";

HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(uri);

X509Certificate2 证书 = 新 X509Certificate2(certificatePath);

req.ClientCertificates.Add(证书);

req.Headers.Add("x-ms-version", "2009-10-01"); HttpWebResponse 资源 =

(HttpWebResponse)req.GetResponse();

但它在最后一行(req.GetResponse())抛出上述异常。

我们可以这样使用管理证书吗?

我的要求是开发一个使用azure REST API 的应用程序并在azure 中部署。


我还发现,以与管理 API 一起使用的正确方式创建证书非常重要 - 在我使用此脚本创建证书之前,我收到了 403 错误:

makecert -r -pe -a sha1 -n "CN=Windows Azure Authentication Certificate" -ss my -len 2048 -sp "Microsoft Enhanced RSA and AES Cryptographic Provider" -sy 24 ManagementApiCert.cer

我在这里得到了:http://blogs.msdn.com/b/davidhardin/archive/2013/08/27/azure-management-certificate-public-key-private-key.aspx http://blogs.msdn.com/b/davidhardin/archive/2013/08/27/azure-management-certificate-public-key-private-key.aspx这是几年前的产品,但对我有用,而我尝试过的其他较新的产品却没有。

另外,请确保您在门户的“设置”中的“管理证书”下上传证书,它不是 SSL 或远程访问证书。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将管理证书与 azure REST API 一起使用 的相关文章

随机推荐