我是否可以仅使用makecert.exe为Windows Azure创建自签名SSL证书?

Mic*_*out 7 ssl azure makecert

背景:我需要在Windows Azure上测试WebRole的https端点.为此,我需要上传自签名证书,将证书的指纹添加到WebRole的配置中,最后将端点与配置的证书相关联.

我使用makecert.exe可以通过Visual Studio命令提示符创建自签名证书.我使用以下命令:

makecert.exe -r -pe -n "CN=test.cloudapp.net" -sky exchange -ss my -len 2048 test.pfx
Run Code Online (Sandbox Code Playgroud)

该命令成功,我可以将证书文件上载到Windows Azure托管服务.但部署WebRole失败,出现以下错误:

带有指纹6AB的证书...与HTTPS输入端点关联的Endpoint2不包含私钥.

我必须从我的商店导出证书,并选择包含私钥并提供密码.如果我上传此导出的证书文件并使用其指纹,则部署成功.

我想创建一个包含私钥的证书文件,而不先将证书保存到任何商店并从商店中导出.这有可能用makecert.exe吗?

San*_*tia 14

要创建证书而不将其保存到任何商店,您需要使用pvk2pfx.exe(可通过Visual Studio命令提示符获得).

它的工作原理如下:

makecert.exe -sv CertKey.pvk -n "CN=My Azure Certificate" CertKey.cer
pvk2pfx.exe -pvk CertKey.pvk -spc CertKey.cer -pfx MyPFX.pfx -po yourPasswordHere
Run Code Online (Sandbox Code Playgroud)

运行makecert.exe将要求您输入私钥的密码.您需要输入pvk2pfx.exe命令的-po参数的密码.

最后,您将拥有一个名为MyPFX.pfx的pfx文件(包含私钥)