WCF默认绑定

WCF预先为所有绑定都定义了能满足大多数情形的配置模式,这样的话,只要没有修改某个配置参数,WCF就使用默认的安全模式。

先上一张默认的安全设置表格

绑定 设置
wsHttpBinding 使用消息安全和windows验证(NTLM或Kerberos)
basicHttpBinding 无安全设置
wsFederationHttpBinding 使用消息安全和联合验证(Issue Token)
netTcpBinding 使用传输安全和Windows验证(NTLM或Kerberos)
netNamedPipeBinding 使用传输安全和Windows验证(NTLM或Kerberos)
netMsmqBinding 使用传输安全和Windows验证(NTLM或Kerberos)

WCF安全模式

任何服务的安全模式设置均决定了安全的俩个基本方面:

1):消息保护的安全模型 2):受支持的客户端验证模式。

安全模式可以用配置文件中Security元素的Mode属性进行设置。

模式 描述
None 此服务对任何人有效,并且消息在传输过程中不收任何保护,使用这种模式时,消息容易受到任何类型的攻击
Transport 用传输安全模式验证客户端和保护消息。
Message 用消息安全模式验证客户端和保护消息
Both 同时用传输安全模式和消息安全模式验证服务的使用者和保护消息。此模式只得到MSMQ绑定的支持,要求俩个模式必须使用同一个证书
TransportWithMessageCredentials 消息保护由传输提供,而且用来验证服务使用者的证书将作为消息的一部分在网络上传输,此模式提供如下灵活性:在消息验证时可以使用任何类型的证书和令牌,而在传输级执行服务验证和消息保护。
TransportCredentialOnly 用传输安全验证客户端。服务没有经过验证,消息和客户端证书以普通文本格式通过传输层。此安全模式可用于如下情形:在客户端与服务之间传送的数据不属于敏感信息,证书向网络中的任何人公开。

WCF保护级别

默认时,为了提供数据的机密性和完整性,WCF会对网络传送的所有数据进行加密和签名。对于某些

情形,如果通过传输层发送的消息不包含敏感信息,则可能想禁用加密特性,而用签名保证数据的完整性--不需要担心数据的机密性。对于这些情形,WCF提供了灵活性,可以修改使用消息安全模式时默认的保护级别。

保护级别可以在数据契约的服务级配置,也可以在操作级配置,以对消息进行更精确的控制。如果同时在操作级和服务级定义保护级别,则操作级的保护级别会覆盖原来服务级的。

消息契约还支持一种方法,可以覆盖操作级的保护级别。[ProtectionLevel]特性可以定义在消息契约中,也可以定义在任何特定的消息头和消息体中。

转载于:https://www.cnblogs.com/taomylife/p/4224598.html

WCF中安全的那些事!!!相关推荐

  1. 【WCF】WCF中的InstanceContext与ConcurrencyMode【转】

    一.前言 最近忙于公司的在线升级项目,一个人要负责公司四大产品的在线升级,这四个产品是在Revit中以插件形式存在的,目前基于WCF来实现.等客户总量突破5万了,再重新用socket实现. 由于有服务 ...

  2. 在WCF中实现双工通信(转载)

    首先声明此文章是转载博客园蒋老师之作:http://www.cnblogs.com/artech/archive/2007/03/02/661969.html 双工(Duplex)模式的消息交互方式体 ...

  3. WCF中的序列化[上篇]

    SOA 和Message Windows Communication Foundation (WCF) 是基于面向服务架构(Service Orientation Architecture--SOA) ...

  4. 数字证书及在WCF中的应用

    一 概念 1.内容 证书的发布机构     证书的有效期     证书所有者(Subject)     签名所使用的算法     指纹以及指纹算法 公钥     私钥 2.存储区 3.有效性 二 作用 ...

  5. 在WCF中使用Flag Enumerations

    在WCF中使用Flag Enumerations 请看MSDN示例: [DataContract][Flags] public enum CarFeatures {     None = 0,     ...

  6. Entity Framework在WCF中序列化的问题

    问题描述 如果你在WCF中用Entity Framework来获取数据并返回实体对象,那么对下面的错误一定不陌生. 接收对 http://localhost:5115/ReService.svc 的 ...

  7. 视觉平衡与物理平衡_怎样做好摄影中“视觉平衡”的那些事

    一张好的摄影作品,通常在布局.构图.色彩等方面看起来使人舒适,没有违和感,这就达到了视觉上的平衡.今天,我们就简单聊聊摄影中"视觉平衡"的那些事! 其实,视觉平衡大部分是由场景中的 ...

  8. wcf中的使用全双工通信(转)

    wcf中的使用全双工通信 wcf中的契约通信默认是请求恢复的方式,当客户端发出请求后,一直到服务端回复时,才可以继续执行下面的代码. 除了使用请求应答方式的通信外,还可以使用全双工.下面给出例子: 1 ...

  9. WCF技术剖析之十一:异步操作在WCF中的应用(上篇)

    按照操作执行所需的资源类型,我们可以将操作分为CPU绑定型(CPU Bound)操作和I/O绑定型(I/O Bound)操作.对于前者,操作的执行主要利用CPU进行密集的计算,而对于后者,大部分的操作 ...

最新文章

  1. python logger日志工具类
  2. java I/O之装饰者模式
  3. ACM第一名:基于轨迹感知多模态特征的视频关系检测
  4. python2中的unicode_python2中的unicode()函数在python3中会报错:
  5. mysql存储过程调试学习总结
  6. 图像处理之图像特征匹配
  7. LeetCode 463. Island Perimeter
  8. 常见的网站布局方式---左固定右自适应、左右固定中自适应等
  9. 大数据(2)---Hadoop由哪几部分组成?
  10. 漫画:什么是字符串匹配算法?
  11. 【OCR技术】字符识别技术总览
  12. 内网渗透(一)——本机信息收集
  13. bochs运行xp_使用Bochs模拟器瞬间安卓变XP教程
  14. i2cdetect i2cdump i2cget i2cset用法
  15. [渝粤教育] 中南大学 分子生物学 参考 资料
  16. as3.0 当fla里面有TLF文本的时候,加载声音会出现错误
  17. 操作系统语言包在c盘哪里,win10系统通过卸载语言包释放c盘空间的具体教程
  18. C 语言fseek, ftell调用失败(fseek返回非零值,ftell返回-1)
  19. “@” Java中的特殊符号——注解(Java中’@‘符号是什么意思?)
  20. 最新利用腾讯快捷登录协议截取QQ ClientKey实战课程【详细教学-源码共享】

热门文章

  1. vuex 实现vue中多个组件之间数据同步以及数据共享。
  2. nth-child和nth-of-type
  3. VS2012 打包部署程序
  4. http协言和web本质
  5. QQ 互联审核不通过问题的解决方法
  6. (转)标准I/O缓冲:全缓冲、行缓冲、无缓冲 .
  7. asp.net 返回超时的解决方法
  8. POJ 2653 Pick-up sticks (线段相交)
  9. python学习笔记5—数据类型转换
  10. 最小生成树--prim+优先队列优化模板