重点在要有两套endpoint,一个支持http 一个支持 https

两套 Httpbinding  对应一个支持http 一个支持 https

还有httpsGetEnabled="true"

最终在浏览器访问时都能成功访问到。但实际使用时我调用的还是http方式

2.将客户端绑定多一个https方式,证书使用自签名证书

此时客户端用https访问http的wcf时,出现“跨域错误”
3.在IIS根目录C:\inetpub\wwwroot下放入crossdomain.xm和clientaccesspolicy.xml文件,即可正常使用
附上这两个XML内容clientaccesspolicy.xml

<?xml version="1.0" encoding="utf-8"?>
<access-policy>
  <cross-domain-access>
    <policy>
      <allow-from http-request-headers="*">
        <domain uri="*"/>
      </allow-from>
      <grant-to>
        <resource path="/" include-subpaths="true"/>
      </grant-to>
    </policy>
  </cross-domain-access>
</access-policy>
crossdomain.xml

<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM>
<cross-domain-policy>
<allow-http-request-headers-from domain="*" headers="*"/>
</cross-domain-policy>

这个问题弄了我2天时间。各种纠结最后终于成功。特此记录下开发环境:vs2010客户端:silverlight使用自签名证书的https服务端:wcf我的需求是客户端地址必须为https方式,服务端不限。最终成功解决的方式如下:1.WCF配置为可接受http 和 https请求,代码未改动,配置文件如下: 介绍和目标步骤1:使用 WCF 项目创建一个简单的服务步骤2:在服务的web.config文件中启用传输级安全性步骤3:绑定绑定并指定 HTTPS 配置步骤4:启用Web应用程序 HTTPS 步骤5:在Web应用程序中使用服务步骤6:禁止 HTTPS 错误步骤7:享受成功源代码 介绍和目标 当我们谈论 WCF 安全性时,有两种方式:传输级安全性和消息级安全性。传输级安 选中iis 左侧网站,某一个webside, 去掉web.config 中 system.serviceModel/services/service endpoint指定是http 协议, 修改web.config 添加rewrite pattern, 同时要在iis 添加 url 重定向功能, 安装 url rewrite module <system.webServe.
昨天需要把做好的一个 wcf 服务发布到服务器 站点 下的一个虚拟目录中发布过程遇到了一个 问题 :服务器上的环境是 https ,因此需要多对配置文件修改于是在网上找啊找,遇到一个 问题 找一个 问题 ,可是 问题 依然没 解决 。我在网上找到了一篇文章一步步照着上面写的做。 http://www.codeproject.com/KB/ WCF /7steps WCF .aspxhttp://www.codeproject.com/...
今天客户上线,到了生产环境,才知道客户用的是 https 协议,吼吼,麻烦来了。搞了半晚上,从凌晨1点,。。。。。。。 总结一下,有以下几个地方需要注意: 1.启用 https 协议,需要用域名绑定地址(证书授权给这个域名),比如:如果你访问一个 https 网站,如果IE提醒你,该网站有危险是否继续,如果用域名访问就不会有这个提醒 2.需要有身份认证方式   3.服务端的行为  具体如下:web
的工具生成加密证书。 MakeCert.exe -sr localmachine -ss My -n CN=localhost,OU= https ://localhost -sky exchange -pe -r localhost.cer 2,查看生成好的加密证书的『Thumbprint has... &lt;system.serviceModel&gt; &lt;client&gt; &lt;endpoint address=" https ://evitest.1010bao.com:8891/InternalService/EvidenceService.svc" binding="basicHttpBinding" bindingConfigur...
1. 由于服务器端证书是颁发给主机名,导致ipv4或ipv6无法通过 HTTPS 协议访问 WCF 服务 2. 抛出的异常为 could not establish trust relationship for the SSL /TLS secure channel with authority 3. 可以使用下面代码跳过证书检查 System.Net.ServicePointManager.Se
C# WebConfig 是一个 XML 文件,用于配置 ASP.NET 应用程序的行为和设置。WebConfig 文件通常位于 ASP.NET 应用程序的根目录中,并用于指定应用程序的许多设置,例如数据库连接字符串、身份验证、授权、缓存、错误处理等等。 WCF (Windows Communication Foundation)是一种微软开发的通信框架,可用于构建分布式应用程序和服务。 WCF 可以使用多种协议进行通信,包括 HTTP、TCP 和 HTTPS 等。在 WCF 中, HTTPS 是一种安全的通信协议,可用于确保数据传输的机密性和完整性。 因此,在 C# 应用程序中使用 WCF 时,可以使用 WebConfig 文件来配置 WCF 服务的行为和设置,包括启用 HTTPS 协议、指定证书、配置终结点等等。例如,下面是一个示例 WebConfig 文件中配置 WCF 服务使用 HTTPS 协议的代码: ```xml <system.serviceModel> <services> <service name="MyService"> <endpoint address=" https ://localhost/MyService" binding="basicHttpBinding" contract="IMyService" /> </service> </services> <bindings> <basicHttpBinding> <binding name="SecureBinding"> <security mode="Transport"> <transport clientCredentialType="None" /> </security> </binding> </basicHttpBinding> </bindings> </system.serviceModel> 在上面的示例中,我们配置了一个名为 MyService 的 WCF 服务,它使用基本 HTTP 绑定,并在 HTTPS 协议下使用地址 https ://localhost/MyService 进行通信。我们还定义了一个名为 SecureBinding 的绑定,它使用 Transport 安全模式,并指定客户端凭据类型为 None。同时,我们还可以在 WebConfig 文件中指定证书、身份验证、授权等其他设置,以满足应用程序的需求。