我在从代码管理Azure证书方面遇到了一些困难。 实际上,我正在尝试使用Azure REST服务API(例如创建HTTP请求),以便从我的Azure网站了解我的服务状态。
它在本地调试中运行良好,但我的Web角色接缝对证书管理器有一些限制。贝娄是我的工作:
// this method stores a certificate from the resources
// to the local certificates manager
private X509Certificate2 StoreCertificate(Certificates certName)
{
X509Certificate2 newCert = null;
// get certificate from resources
newCert = this.GetCertificateFromResources(certName);
// store it into the local certificate manager
if (newCert != null)
{
var store = new X509Store(
StoreName.TrustedPeople,
StoreLocation.LocalMachine
);
store.Open(OpenFlags.ReadWrite);
store.Add(newCert);
}
// reset ref and try to load it from manager
newCert = null;
newCert = this.GetCertificate(certName);
return newCert;
}
当我尝试添加证书时,拒绝访问错误。
有什么想法吗?我可以将证书存储到Azure VM中吗? 我应该使用特殊的位置存储这些吗?
答案 0 :(得分:1)
您使用的是Cloud Service(网络/工作人员角色)吗?如果是这样,哪个OS系列?我已经看到一些报告,如果使用OS系列3的工作者角色,您需要使用提升的权限运行该角色,以便从本地证书存储区读取证书。不确定这是否也适用于Web角色并添加到证书库。
是否已通过Azure管理门户(或通过REST API或PowerShell)添加服务证书?
答案 1 :(得分:1)
我发现了很多东西:
即使在这种情况下,我在InvalidOperationException中有一个(403)Forbidden错误。
所以这是当前状态:
所以有2个问题:
感谢您的帮助。
答案 2 :(得分:1)