动态访问从云服务上载到Azure门户的证书



我想在我的云服务微博中使用证书(通过门户上传到云服务部署)。

我希望在上传证书后,它们将应用于我正在运行的web角色,然后我可以通过他们的拇指指纹找到证书。

我通过门户上传证书,进入我的云服务,选择"证书",然后上传。pfx并提供密码。

这是我用来尝试获得证书的代码:

    var store = new X509Store(StoreName.My, StoreLocation.LocalMachine);
    store.Open(OpenFlags.ReadOnly);
    X509Certificate2 certificate = null;
    foreach (X509Certificate2 cert in store.Certificates)
    {
        string certHash = cert.Thumbprint;
        if (certHash.Equals(binding.SslThumbprint, StringComparison.OrdinalIgnoreCase))
        {
            certificate = cert;
            break;
        }
    }

如果我在.csdef文件中注册证书,则此操作有效,但我需要能够动态加载证书。对.csdef文件的更改需要部署一个新包——这不是一个选项。

在azure网站中有一个类似的功能,你可以在你的应用程序设置中添加一个带有通配符值的WEBSITE_LOAD_CERTIFICATES设置,然后在代码中通过拇指指纹找到它们。基本上,我正在寻找一个类似的功能在云服务。

如果不首先在CSDEF/CSCFG文件中指定证书,则无法动态地将上传到Azure门户的证书加载到云角色中。

你可以,然而,将你的证书上传到一些外部存储(即:Blob存储,SQL Azure数据库等,或如pool提到的密钥库),并从那里加载它们。

HTH

最新更新