我有一个WCF在Azure中作为云服务运行(没有SSL)。
我已经在本地实现了相同的项目SSL。(带自签名证书)
我在本地进行了实验,看到一切都很好,我在Go Daddy上购买了真正的证书,现在我需要弄清楚几个点:
我看过几篇介绍如何设置角色配置以便使用HTTPS将WCF发布到云服务的文章。在那些文章中,他们通过从计算机上安装的证书中选择证书来添加证书,然后将证书关联到HTTPS端点。
- 为了将证书关联到WCF,我必须在本地安装证书?
- 在Microsoft Azure Portal的设置下有一个"管理证书"选项来上传证书和管理它们,我需要用这个选项上传证书吗?
- 我是否需要手动安装证书(就像我使用自签名证书一样),在IIS中配置它,然后转到MMC并将证书移动到"中间证书颁发机构"等)
- 如果我需要手动执行(问题3的答案是肯定的),我如何自动扩展我的服务?因为这个过程需要自动化。
谢谢。
进入你的。csdef并添加以下3个标签(相应更改):
<WebRole name="CertificateTesting" vmsize="Small">
...
<Certificates>
<Certificate name="SampleCertificate" storeLocation="LocalMachine" storeName="CA" />
</Certificates>
...
<Endpoints>
<InputEndpoint name="HttpsIn" protocol="https" port="443" certificate="SampleCertificates" />
</Endpoints>
...
<Sites>
<Site name="Web">
<Bindings>
<Binding name="HttpsIn" endpointName="HttpsIn" />
</Bindings>
</Site>
</Sites>
...
</WebRole>
接下来,打开你的。cscfg并添加:
<Role name="Deployment">
...
<Certificates>
<Certificate name="SampleCertificate" thumbprint="9427befa18ec6865a9ebdc79d4c38de50e6316ff" thumbprintAlgorithm="sha1" />
</Certificates>
...
</Role>
将thumbprint和 thumbprintalgalgorithm 替换为您的证书。
最后使用Azure门户上传部署包和证书或将其添加到证书选项卡。您必须导出带有私钥的证书才能工作。
关于这个链接的更多细节:http://azure.microsoft.com/en-us/documentation/articles/cloud-services-configure-ssl-certificate/
回答您的最后一个问题:由于您已经将证书与包一起上传,auto scale将使用此包来配置新服务器。