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

WCF & Azure: Replace Self-Sign Certificate with a Real Certificate

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

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

我在本地试验后发现一切正常,我在GoDaddy上购买了真正的证书,现在我需要弄清楚两点:

我看到几篇文章介绍了如何设置角色配置以便使用 HTTPS 将 WCF 发布到云服务。 在那些文章中,他们通过从安装在计算机上的证书中进行选择来添加证书,然后将证书关联到 HTTPS 端点。

  1. 为了将证书关联到 WCF,我必须在本地安装证书吗?
  2. Microsoft Azure 门户的“设置”下有一个 "Management Certificate" 选项可以上传证书并管理它们,我需要使用这个选项上传我的证书吗?
  3. 我是否需要手动安装证书(就像我使用自签名证书一样,在 IIS 中配置它并转到 MMC 并将证书移动到 "Intermediate Certificate Authorities" 等)
  4. 如果我需要手动执行(问题 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>

thumbprintthumbprintAlgorithm 替换为您的证书之一。

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

更多详情link: http://azure.microsoft.com/en-us/documentation/articles/cloud-services-configure-ssl-certificate/

回答你最后一个问题:当你用包上传证书时,自动缩放将使用这个包来配置新服务器。