Azure 模拟器中带有 Ssl 证书的 WCF 服务

标签 wcf azure ssl localhost ssl-certificate

我已经使用以下方法设置了我的云 http://azure.microsoft.com/en-us/documentation/articles/cloud-services-configure-ssl-certificate/

和使用以下 http://msdn.microsoft.com/en-us/library/ms731074%28v=vs.110%29.aspx 的网络角色

我的问题是当我使用模拟器时出现错误在这种情况下证书和网站之间存在名称不匹配 (127.0.0.1) 可以做些什么来解决它。

最佳答案

因此您可以采用两种方法:

  1. 为每个环境创建一个单独的云项目 - 这样您就可以为您的开发环境创建一个自签名证书并接受证书不受信任的警告。
  2. 为您的应用程序获取通配符证书 - 这是我们为我们的应用程序所采用的方法(以及第一种方法)。基本上我们采用通配符 SSL 证书并在我们的应用程序中使用该证书。然后我们在位于 C:\Windows\System32\drivers\etchosts 文件中添加了一个条目,如下所示:

127.0.0.1 dev.cloudportam.com

接下来,我们在开发云项目的 csdef 文件中添加了主机 header 。

<Sites>
  <Site name="Web">
    <Bindings>
      <Binding name="Endpoint1" endpointName="Endpoint1" hostHeader="dev.cloudportam.com" />
      <Binding name="Endpoint2" endpointName="SSL" />
    </Bindings>
  </Site>
</Sites>
<Endpoints>
  <InputEndpoint name="Endpoint1" protocol="http" port="8080" />
  <InputEndpoint name="SSL" protocol="https" port="8082" certificate="SSL" />
</Endpoints>

现在当我们启动应用程序时,它会打开 https://localhost:8082/ 我们只需将地址更改为 https://dev.cloudportam.com:8082 一切正常。

关于Azure 模拟器中带有 Ssl 证书的 WCF 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26709780/

相关文章:

ssl - 强制使用 SSL 进行托管

php - 在 XAMPP 中启用 OpenSSL

java - 为 tls 握手指定密码套件

asp.net - WCF 说它超过了最大查询字符串值,但实际上没有

azure - 我不知道我的 worker 角色重启

wcf - 为 Windows Phone 创建 WCF

azure - 负载中的属性文件夹具有与架构不匹配的值

.net - 具有绑定(bind)表达式的函数应用程序未触发

c++ - 为什么win32线程不自动退出?

c# - 如何解码 WCF 中的多部分/相关响应?