WCF之安全
- 传输安全.
- 点对点,对整个消息进行加密,性能损失,当中间者不安全时,消息也就不安全了.
- WCF中支持传输安全和消息安全模式。
- 通过配置和绑定来设置。<Security Mode =Transction/Message/TranandMess>.
- 消息安全.
- 对消息的最终接受者保证安全,即使中间者不安全,消息不受影响,可选择对部分消息进行加密.
- 数据处理效率低于传输安全.
- 保护级别.
- 默认是EncryptAndSign,但需要绑定的支持.
- 当C/S间级别不同时,协商并使用两者的最小者进行保护.
- 证书.
- 由于密码不是很安全,密码过短,易破解。过长,不容易记忆。对于程序与程序间的交互,使用密码,缺乏规范。带来混乱。所以使用证书.
- 在企业内网内,使用令牌,不会使用身份扮演.
- 在Intenet上,由于用户过多,记住他们太大,所以使用少量的用户名来扮演。
- 在Intranet上,用户数量少,且可确定,所以不使用扮演.
- 使用身份扮演,也是一种安全机制,可以使得用户扮演为一个权限较低的角色,来限制访问的资源.
- 非内网,但是可信。数量有限。所以使用颁发证书的方法。互认证.
- Peer Trust: Peer to Peer的信任。当没有权威的CA时。证书的来源不可靠。但是由于业务伙伴被我们信任。所以可以认为证书在没有CA时,仍然可信.
- 在线撤销:在整个认证流程中。系统对证书的细节进行检查。不合法时,撤销它.
- 当C/S在传输前要进行协商。
- 一次登陆,N次使用时也要使用协商.
- 对于多次调用才能完成请求的,要使用安全会话。
- 降低开销. 单次调用,不需要使用安全会话.
- 在Internet上无法使用令牌(无法知道客户来之那里,是否属于域)。证书对于有些用户没法要求其安装。只能使用用户名密码.
- 基于角色的授权.
- 系统基于角色来授权,而不直接与用户进行交互。
- 对于一个调用栈,向上递归检查是否有权限进行调用,直到查到某一次调用有权限时终止.
- 但是当移植到第3方时,可能无法映射到某个角色上,就事论人.
- 基于许可的授权.
- 为系统中的每一个操作特性都创建许可,然后两者关联。新特性,创建新许可。
- 非内建,当跨平台时,出现问题。
- 2个系统的许可的交互当名字不同时会产生权限分配上的问题,当名字一样儿权限不同时,更有问题.
- 基于声明的授权:.
- 对于各种的凭证类型,都被归为一种验证。
- 声明能够包含很多的有用信息。由发布者保证信任关系.
- 安全令牌:可以跨平台。
- 由于其被保存到SOAP的消息安全头中.安全令牌被WCF映射到声明中.
WCF之安全的更多相关文章
- WCF学习之旅—第三个示例之四(三十)
上接WCF学习之旅—第三个示例之一(二十七) WCF学习之旅—第三个示例之二(二十八) WCF学习之旅—第三个示例之三(二十九) ...
- 【WCF】使用“用户名/密码”验证的合理方法
我不敢说俺的方法是最佳方案,反正这世界上很多东西都是变动的,正像老子所说的——“反(返)者,道之动”.以往看到有些文章中说,为每个客户端安装证书嫌麻烦,就直接采用把用户名和密码塞在SOAP头中发送,然 ...
- 【WCF】错误协定声明
在上一篇烂文中,老周给大伙伴们介绍了 IErrorHandler 接口的使用,今天,老周补充一个错误处理的知识点——错误协定. 错误协定与IErrorHandler接口不同,大伙伴们应该记得,上回我们 ...
- 【WCF】自定义错误处理(IErrorHandler接口的用法)
当被调用的服务操作发生异常时,可以直接把异常的原始内容传回给客户端.在WCF中,服务器传回客户端的异常,通常会使用 FaultException,该异常由这么几个东东组成: 1.Action:在服务调 ...
- [WCF]缺少一行代码引发的血案
这是今天作项目支持的发现的一个关于WCF的问题,虽然最终我只是添加了一行代码就解决了这个问题,但是整个纠错过程是痛苦的,甚至最终发现这个问题都具有偶然性.具体来说,这是一个关于如何自动为服务接口(契约 ...
- 【原创经验分享】WCF之消息队列
最近都在鼓捣这个WCF,因为看到说WCF比WebService功能要强大许多,另外也看了一些公司的招聘信息,貌似一些中.高级的程序员招聘,都有提及到WCF这一块,所以,自己也关心关心一下,虽然目前工作 ...
- Ajax使用WCF实现小票pos机打印源码
通过ajax跨域方式调用WCF服务,实现小票pos机的打印,源码提供web方式,客户端方式测试,服务驻留右侧底部任务栏,可控制服务开启暂停,用户可自定义小票打印模板,配合零售录入. qq 22945 ...
- C# 用SoapUI调试WCF服务接口(WCF中包含用户名密码的验证)
问题描述: 一般调试wcf程序可以直接建一个单元测试,直接调接口. 但是,这次,我还要测试在接口内的代码中看接收到的用户名密码是否正确,所以,单一的直接调用接口方法行不通, 然后就想办法通过soapU ...
- WCF基础
初入职场,开始接触C#,开始接触WCF,那么从头开始学习吧,边学边补充. SOA Service-Oriented Architecture,面向服务架构,粗粒度.开放式.松耦合的服务结构,将应用程序 ...
- Mono下的WCF的Bug?
最近一段时间,一直在折腾Mono,折腾Linux.让我无比痛苦的是Mono下的WCF的坑真的是太多了,这不又遇到了一个莫名其妙的问题. 环境:mono 3.2.1,Jexus 5.4.3,OS Cen ...
随机推荐
- 通过输入方式在Android上进行微博OAuth登录
在微博认证方式里,基本的OAuth认证是必须要调整到跳转到第三方页面上进行授权的,例如下面的例子: 1.从http://open.weibo.com/wiki/index.php/SDK#An ...
- iOS开发——UI篇Swift篇&UIProgressView
UIProgressView override func viewDidLoad() { super.viewDidLoad() titleLabel.text = titleString // Do ...
- poj 2688 状态压缩dp解tsp
题意: 裸的tsp. 分析: 用bfs求出随意两点之间的距离后能够暴搜也能够用next_permutation水,但效率肯定不如状压dp.dp[s][u]表示从0出发訪问过s集合中的点.眼下在点u走过 ...
- 一、List的扩展
前言 List的三个扩展方法 1.处理符合in()格式的扩展方法 2.处理符合SelectListItem类型的扩展方法(SelectListItem类型是下拉框要用到的类型) 3.Distinct方 ...
- Ogre Addon之Paged Geometry
还是OGRE好啊,无尽的Addon,无尽的宝藏.既有SkyX,Hydrx这样的天空水体渲染库可供学习,还有Paged Geometry这样的“大规模海量geometry管理系统”.它通过batch,s ...
- AllJoyn Bundled Daemon 使用方式研究
关于AllJoyn不多做介绍,请看官网:www.alljoyn.org/ 0. 问题来源: 应用程序要使用AllJoyn库,就必须启动deamon. 目前有两种方式: 使用standalone形式,单 ...
- WPF 之 TreeView右键选中节点及节点重命名
下面的TreeView节点是通过数据双向绑定的方式,绑定到TextBlock控件和TextBox控件的Text属性上,并且让两者绑定相同的属性,同时使TextBox控件刚好完全覆盖TextBlock控 ...
- web 项目 布在tomcat服务器上出现的问题小记
1.mysql 安装前需要安装.net framework 框架 mysql 无法安装 最后一布,start server 服务起不来. 原因,为上一次mysql没有删除,干净,导入无法安装. ...
- nodejs 安装 postgresql module
# npm -gd install node-gyp # export PATH=$PATH:/usr/local/pgsql/bin # npm -gd install pg for test: # ...
- Swift 2.0学习
前几天在苹果官方文档学习iOS9 3D Touch的时候,发现苹果关于3D Touch的smaple code,竟然是用Swift语法写的,并且根本没有OC版本的. 看来学习Swift语法是势在必行了 ...