如何将TLS添加到WCF服务?

时间:2014-09-26 10:29:55

标签: c# web-services wcf

我一直在尝试将TLS添加到WCF服务中,我创建了。 在我尝试通过https而不是http访问服务之前,一切正常。 将wcf服务添加到wcf测试客户端时,我得到了:

  

错误:无法从[THELINK]获取元数据如果这是Windows(R)   请访问您的Communication Foundation服务   检查您是否已在指定的位置启用元数据发布   地址。有关启用元数据发布的帮助,请参阅   [MS链接]上的MSDN文档Exchange错误URI:[THELINK]
  元数据包含无法解析的引用:'[THELINK]'   在[THELINK]没有可以接受的端点   信息。这通常是由错误的地址或SOAP操作引起的。   有关更多详细信息,请参阅InnerException(如果存在)。远程服务器   返回错误:(403)Forbidden.HTTP GET错误URI:[THELINK]
  下载'[THELINK]'时出错。请求失败了   HTTP状态403:禁止。

很抱歉链接替换,但我是新的,我没有声誉,似乎:)

此致 的Morten

1 个答案:

答案 0 :(得分:0)

你有

吗?

<behaviors> <serviceBehaviors> <behavior name="YourSerivceBehaviourName"> <serviceMetadata httpsGetEnabled="true" /> <-- this bit ? ... ... 被你的

引用

<service name="...." behaviorConfiguration="YourSerivceBehaviourName">

<endpoint address="mex" binding="mexHttpsBinding" contract="IMetadataExchange" />
你的web.config中的

如果证书不是我发现的真实证书,那么测试客户也会抱怨......即一个自我认证的证书。 但403似乎表明,无论您提供的凭据是否不正确,SSL绑定中设置的clientCredentialType是什么?

如果您在关闭客户端的浏览器中点击链接会发生什么? 这可能会为您提供更多有用的信息