如何将公共证书导入Windows Azure?

时间:2011-05-17 09:52:08

标签: azure azure-web-roles

我将通过SSL从Windows Azure与另一个公共Web服务进行通信。公共Web服务上的证书是自签名的。因此,我需要信任Windows Azure上的公共证书。

如何将证书(.cer)导入Windows Azure?管理门户仅允许导入带有私钥的证书。

4 个答案:

答案 0 :(得分:5)

这实际上是门户网站的问题,而不是azure本身。转到门户中的“添加证书”部分,单击浏览按钮,导航到.cer文件所在的位置。列出的文件被过滤为.pfx文件,因此您不会看到要导入的文件,但是,如果您输入文件的名称,它将起作用。

答案 1 :(得分:1)

这是门户网站的问题。我以为它是固定的 - 显然不是。您也可以将.cer转换为.pfx(使用蹩脚的密码)。我从LINQPad运行它:

void Main()
{
    string file = @"C:\temp\deploy\dunnrydeploy.cer";
    var cert = X509Certificate2.CreateFromCertFile(file);

    var bytes = ((X509Certificate2)cert).Export(X509ContentType.Pfx, "p");

    var fs = File.Create(@"C:\temp\deploy\foo.pfx");

    using (fs)
    {
        fs.Write(bytes, 0, bytes.Length);
        fs.Flush();
    }
}

答案 2 :(得分:0)

关于如何执行此操作的博客很少 - http://blogs.msdn.com/b/jnak/archive/2010/01/29/installing-certificates-in-windows-azure-vms.aspx

这为角色

中的自签名证书使用手动XML条目
   <Certificate name="SelfSigned" storeLocation="CurrentUser" storeName="<enter a value>" />

答案 3 :(得分:0)

这是我从私钥获取公共证书并上传到Azure的方法。

1)使用PowerShell获取证书:

PS C:\MyWebsite> $cert = New-SelfSignedCertificate -DnsName mycompany.com -CertStoreLocation "cert:\LocalMachine\My" -KeyLength 2048 -KeySpec "KeyExchange"
PS C:\MyWebsite> $password = ConvertTo-SecureString -String "mypassword" -Force -AsPlainText
PS C:\MyWebsite> Export-PfxCertificate -Cert $cert -FilePath ".\mycompany.pfx" -Password $password

2)然后将证书上传到门户中:

enter image description here

有关详细信息,请参见https://docs.microsoft.com/en-us/azure/cloud-services/cloud-services-certs-create