WCF中安全的那些事!!!
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中安全的那些事!!!相关推荐
- 【WCF】WCF中的InstanceContext与ConcurrencyMode【转】
一.前言 最近忙于公司的在线升级项目,一个人要负责公司四大产品的在线升级,这四个产品是在Revit中以插件形式存在的,目前基于WCF来实现.等客户总量突破5万了,再重新用socket实现. 由于有服务 ...
- 在WCF中实现双工通信(转载)
首先声明此文章是转载博客园蒋老师之作:http://www.cnblogs.com/artech/archive/2007/03/02/661969.html 双工(Duplex)模式的消息交互方式体 ...
- WCF中的序列化[上篇]
SOA 和Message Windows Communication Foundation (WCF) 是基于面向服务架构(Service Orientation Architecture--SOA) ...
- 数字证书及在WCF中的应用
一 概念 1.内容 证书的发布机构 证书的有效期 证书所有者(Subject) 签名所使用的算法 指纹以及指纹算法 公钥 私钥 2.存储区 3.有效性 二 作用 ...
- 在WCF中使用Flag Enumerations
在WCF中使用Flag Enumerations 请看MSDN示例: [DataContract][Flags] public enum CarFeatures { None = 0, ...
- Entity Framework在WCF中序列化的问题
问题描述 如果你在WCF中用Entity Framework来获取数据并返回实体对象,那么对下面的错误一定不陌生. 接收对 http://localhost:5115/ReService.svc 的 ...
- 视觉平衡与物理平衡_怎样做好摄影中“视觉平衡”的那些事
一张好的摄影作品,通常在布局.构图.色彩等方面看起来使人舒适,没有违和感,这就达到了视觉上的平衡.今天,我们就简单聊聊摄影中"视觉平衡"的那些事! 其实,视觉平衡大部分是由场景中的 ...
- wcf中的使用全双工通信(转)
wcf中的使用全双工通信 wcf中的契约通信默认是请求恢复的方式,当客户端发出请求后,一直到服务端回复时,才可以继续执行下面的代码. 除了使用请求应答方式的通信外,还可以使用全双工.下面给出例子: 1 ...
- WCF技术剖析之十一:异步操作在WCF中的应用(上篇)
按照操作执行所需的资源类型,我们可以将操作分为CPU绑定型(CPU Bound)操作和I/O绑定型(I/O Bound)操作.对于前者,操作的执行主要利用CPU进行密集的计算,而对于后者,大部分的操作 ...
最新文章
- python logger日志工具类
- java I/O之装饰者模式
- ACM第一名:基于轨迹感知多模态特征的视频关系检测
- python2中的unicode_python2中的unicode()函数在python3中会报错:
- mysql存储过程调试学习总结
- 图像处理之图像特征匹配
- LeetCode 463. Island Perimeter
- 常见的网站布局方式---左固定右自适应、左右固定中自适应等
- 大数据(2)---Hadoop由哪几部分组成?
- 漫画:什么是字符串匹配算法?
- 【OCR技术】字符识别技术总览
- 内网渗透(一)——本机信息收集
- bochs运行xp_使用Bochs模拟器瞬间安卓变XP教程
- i2cdetect i2cdump i2cget i2cset用法
- [渝粤教育] 中南大学 分子生物学 参考 资料
- as3.0 当fla里面有TLF文本的时候,加载声音会出现错误
- 操作系统语言包在c盘哪里,win10系统通过卸载语言包释放c盘空间的具体教程
- C 语言fseek, ftell调用失败(fseek返回非零值,ftell返回-1)
- “@” Java中的特殊符号——注解(Java中’@‘符号是什么意思?)
- 最新利用腾讯快捷登录协议截取QQ ClientKey实战课程【详细教学-源码共享】