WCF& Azure:使用真实证书替换自签名证书

时间:2015-05-19 00:39:00

标签: wcf azure ssl azure-web-roles azure-cloud-services

我有一个在Azure中作为云服务运行的WCF(没有SSL)。

我在同一个项目SSL上实现了本地化。 (带自签证书)

在我在本地进行实验并看到一切正常后,我在Go Daddy购买了真正的证书,现在我需要弄清楚几点:

我看了几篇文章,展示了如何设置角色的配置,以便使用HTTPS将WCF发布到Cloud Service。 在这些文章中,他们通过选择计算机上安装的证书然后将证书与HTTPS端点相关联来添加证书。

  1. 为了将证书与WCF相关联,我必须在本地安装证书吗?
  2. Microsoft Azure Portal上的“管理证书”选项位于“设置”下以上载证书并对其进行管理,是否需要使用此选项上载证书?
  3. 我是否需要手动安装证书(就像我使用自签名证书一样',在IIS中配置它并转到MMC并将证书移到“中级证书颁发机构”等)
  4. 如果我需要手动完成(问题3的答案是肯定的),我该如何自动扩展我的服务?因为这个过程需要自动化。
  5. 谢谢。

1 个答案:

答案 0 :(得分:0)

转到.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>

指纹 thumbprintAlgorithm 替换为您的证书。

最后使用Azure门户上载部署包和证书,或将其添加到证书选项卡。您必须使用私钥导出证书才能工作。

此链接的更多详细信息: http://azure.microsoft.com/en-us/documentation/articles/cloud-services-configure-ssl-certificate/

回答上一个问题:当您使用软件包上传证书时,自动扩展将使用此软件包来配置新服务器。