WCF NetTcpBinding Transport安全模式(5) ClientCredentialType证书验证模式—-None验证模式…

WCF NetTcpBinding Transport安全模式(5) ClientCredentialType证书验证模式—-None验证模式…

大家好,又见面了,我是全栈君。

WCF NetTcpBinding Transport安全模式(5)   ClientCredentialType证书验证模式—-None验证模式

需要说明的是,和服务器端证书配置在<serviceBehaviors>节中,而客户端配置在endpointBehaviors中。在代码清单11-19的服务端配置和代码清单11-23的客户端配置中,都将certificateValidationMode属性设置为“None”。protectionLevel设置为“EncryptAndSign“,由于证书验证采用的是SSL加密,仅支持EncryptAndSign的保护级别。

此时启动服务端进行监听,然后启动客户端,得到如图11-11所示的异常信息。

WCF NetTcpBinding Transport安全模式(5) ClientCredentialType证书验证模式----None验证模式...

图11-11               DNS匹配错误

出现这种异常的原因在于服务端采用证书验证之后,默认会将证书名(这里为“XuanhunServer”)作为服务提供的域名。解决方案也很简单,只需在客户的<endpoint>配置节下配置标识属性,指定DNS即可,如代码清单11-24所示。

代码清单11-24  配置DNS

<endpoint name=“helloEndPoint“ address=“net.tcp://127.0.0.1:64567/HelloService“

          binding=“netTcpBinding“ bindingConfiguration=“netTcpBinding“

          contract=“WcfSecurityExampleServiceLibrary.IHelloService“  behaviorConfiguration=“ForListen“>

        <identity>

          <dns value=“XuanhunServer“/>

        </identity>

      </endpoint>

在以上代码中,通过设置<dns value=”XuanhunServer”/>指定该终结点请求的域名为“XuanhunServer”。修改之后再次运行客户端,结果如图11-12所示。

WCF NetTcpBinding Transport安全模式(5) ClientCredentialType证书验证模式----None验证模式...

图11-12        凭据为证书(客户端和服务端互不验证)的运行结果

将图11-12的运行结果,与之前采用Windows验证对比,用户名变成了客户端证书的名称和证书序列号的组合,凭据类型为“X509”。通过TcpTrace截获的信息,可以给我们更多的启示,如图11-13所示。

WCF NetTcpBinding Transport安全模式(5) ClientCredentialType证书验证模式----None验证模式...

图11-13        TcpTrace截获的凭据为证书(客户端和服务端互不验证)部分传输信息

图11-13所示的信息为服务端返回的部分信息,我们从中可以看到信息中附加了当前用户证书存储区的证书信息。

———————-注:本文部分内容改编自《.NET 安全揭秘》

 



本文转自玄魂博客园博客,原文链接:http://www.cnblogs.com/xuanhun/archive/2012/06/24/2560077.html,如需转载请自行联系原作者

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/108696.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • [牛客经典必刷算法题] LC5-链表的插入排序

    [牛客经典必刷算法题] LC5-链表的插入排序牛客经典笔刷算法题-LC5-链表的插入排序题目描述示例思路解答本题链接题目描述使用插入排序对链表进行排序。示例输入{30,20,40}返回值{20,30,40}思路通过虚拟头节点处理链表排序插入排序算法描述:步骤一:从第一个元素开始,该元素可以认为已经被排序;步骤二:取出下一个元素,在已经排序的元素序列中从后向前扫描;步骤三:如果该元素(已排序)大于新元素,将该元素移到下一位置;步骤四:重复步骤3,直到找到已排序的元素小于或者等于新元素的位置;步骤五:将新元素插

    2022年7月24日
  • 一个依赖搞定 Spring Boot 反爬虫,防止接口盗刷!

    点击上方“全栈程序员社区”,星标公众号 重磅干货,第一时间送达 责编:乐乐 链接:oschina.net/news/112586/kk-anti-reptile-released …

    2021年6月24日
  • 微商城分销系统:微商运营管理系统搭建介绍

    微商城分销系统:微商运营管理系统搭建介绍“互联网+”时代背景下,计算机信息处理技术的数据技术已经无法满足日益增长的数据存储需求。因此,工作人员要大力发开计算机信息处理技术的数据存储功能,促进存储技术发展,推动计算机信息处理技术在“互联网”时代中进步与发展。计算机信息处理技术的信息存储技术,是计算机在对信息数据进行加工后,将其保存在计算机系统的空间中,为使用者后期调取和查看做准备。微商城分销系统能够准确即时管理分销商,掌握分销商的销售情况,从而了解产品的销售情况,重要的是不仅实现了产品的销售与推广,还可以根据消费者的需求来改变产品的供求,了解市场

    2022年5月16日
  • Ios frida_frida

    Ios frida_frida一、FridaFrida是一款基于Python+javascript的hook框架,通杀android\iOS\linux\win\osx各平台。Frida原理是手机端安装一个server程序把手机端的端口转到PC端写的python脚本进行通信,而Python脚本中采用javascript语言编写hook代码。①installfridaondeviceStartCydiaandaddFrida’srepositorybynavig

    2022年10月30日
  • 浏览器报错400系列总结「建议收藏」

    浏览器报错400系列总结「建议收藏」 

    2022年5月18日
  • NPS是什么?「建议收藏」

    NPS是什么?「建议收藏」当谈到客户体验管理时,NPS就是一个绕不开的话题。今天就来聊聊NPS落地应用必须了解的8个关键点:一、NPS是什么二、NPS如何计算三、NPS得分如何评估四、NPS如何帮助企业做增长五、如何提升NPS六、NPS问卷设计七、NPS问卷发放八、NPS问卷分析一、NPS是什么NPS(NetPromoterScore),中文名为净推荐值,是客户对品牌/产品的忠诚度得分。由美国贝恩公司FredReichheld(2003)提出,是最流行的顾客忠诚度分析指标,专注于研究客户口碑如何为企业带来良

    2022年6月10日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号