WCF之安全

时间:2022-07-22 00:57:47
  • 传输安全.
    • 点对点,对整个消息进行加密,性能损失,当中间者不安全时,消息也就不安全了.
    • 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之安全的更多相关文章

  1. WCF学习之旅—第三个示例之四(三十)

           上接WCF学习之旅—第三个示例之一(二十七)               WCF学习之旅—第三个示例之二(二十八)              WCF学习之旅—第三个示例之三(二十九)   ...

  2. 【WCF】使用&OpenCurlyDoubleQuote;用户名&sol;密码”验证的合理方法

    我不敢说俺的方法是最佳方案,反正这世界上很多东西都是变动的,正像老子所说的——“反(返)者,道之动”.以往看到有些文章中说,为每个客户端安装证书嫌麻烦,就直接采用把用户名和密码塞在SOAP头中发送,然 ...

  3. 【WCF】错误协定声明

    在上一篇烂文中,老周给大伙伴们介绍了 IErrorHandler 接口的使用,今天,老周补充一个错误处理的知识点——错误协定. 错误协定与IErrorHandler接口不同,大伙伴们应该记得,上回我们 ...

  4. 【WCF】自定义错误处理(IErrorHandler接口的用法)

    当被调用的服务操作发生异常时,可以直接把异常的原始内容传回给客户端.在WCF中,服务器传回客户端的异常,通常会使用 FaultException,该异常由这么几个东东组成: 1.Action:在服务调 ...

  5. &lbrack;WCF&rsqb;缺少一行代码引发的血案

    这是今天作项目支持的发现的一个关于WCF的问题,虽然最终我只是添加了一行代码就解决了这个问题,但是整个纠错过程是痛苦的,甚至最终发现这个问题都具有偶然性.具体来说,这是一个关于如何自动为服务接口(契约 ...

  6. 【原创经验分享】WCF之消息队列

    最近都在鼓捣这个WCF,因为看到说WCF比WebService功能要强大许多,另外也看了一些公司的招聘信息,貌似一些中.高级的程序员招聘,都有提及到WCF这一块,所以,自己也关心关心一下,虽然目前工作 ...

  7. Ajax使用WCF实现小票pos机打印源码

    通过ajax跨域方式调用WCF服务,实现小票pos机的打印,源码提供web方式,客户端方式测试,服务驻留右侧底部任务栏,可控制服务开启暂停,用户可自定义小票打印模板,配合零售录入. qq  22945 ...

  8. C&num; 用SoapUI调试WCF服务接口(WCF中包含用户名密码的验证)

    问题描述: 一般调试wcf程序可以直接建一个单元测试,直接调接口. 但是,这次,我还要测试在接口内的代码中看接收到的用户名密码是否正确,所以,单一的直接调用接口方法行不通, 然后就想办法通过soapU ...

  9. WCF基础

    初入职场,开始接触C#,开始接触WCF,那么从头开始学习吧,边学边补充. SOA Service-Oriented Architecture,面向服务架构,粗粒度.开放式.松耦合的服务结构,将应用程序 ...

  10. Mono下的WCF的Bug?

    最近一段时间,一直在折腾Mono,折腾Linux.让我无比痛苦的是Mono下的WCF的坑真的是太多了,这不又遇到了一个莫名其妙的问题. 环境:mono 3.2.1,Jexus 5.4.3,OS Cen ...

随机推荐

  1. libvirt 网络手册(一)

    如果选择网络类型 在一个专用的服务器上,虚拟机常常需要被从公网访问(也就是每个虚拟机都需要公网地址),这时就需要桥接网络,它使得每个虚拟机有自己的IPV4和IPV6地址.如果桥接不可用,可以创建一个R ...

  2. asp&period;net core 通过 TeamCity 实现持续集成笔记

    0x00 很早之前就想体验一把持续集成的快感,然后刚好手头上有个 asp.net core 的项目,就想来部署一下持续集成.一开始我是想用 Jenkins 的,弄了好半天,git 仓库没法同步下来,我 ...

  3. 团队项目——站立会议 DAY1

    团队项目--站立会议 DAY1        团队成员介绍(5人):张靖颜.何玥.钟灵毓秀.赵莹.王梓萱        今日(2016/5/6)为站立会议的第一天,一起对团队项目进行讨论,并对每个人的 ...

  4. Eclipse中使用git把项目导入到osc&commat;git中

    方便Eclipse用户使用Git把项目导入到osc@git中进行管理. Eclipse Git osc@git 一.原有项目:  项目名为TestGit 二.在osc@git上面创建一个新项目库. 填 ...

  5. linux ftp批量上传和下载文件

    一.登录ftp 输入 ftp 192.168.1.111 输入用户名:ftpuser 输入密码:aaa123 二.转到目标目录 输入:cd   test   ----test为文件夹 三.批量上传 输 ...

  6. Python冒泡算法和修改配置文件

    先学习之前未完成的冒泡算法 li = [13,22,6,99,11] 从小到大 从第一个数字比较把大的往后移位 for m in range(4): num1 = li[m] num2 = li[m+ ...

  7. 【Spark调优】数据倾斜及排查

    [数据倾斜及调优概述] 大数据分布式计算中一个常见的棘手问题——数据倾斜: 在进行shuffle的时候,必须将各个节点上相同的key拉取到某个节点上的一个task来进行处理,比如按照key进行聚合或j ...

  8. pip安装其他包报错

    pip安装时报错  Unknown or unsupported command 'install 一.是否配置了路径 配置了看下面的方法. 二.有多个pip系统不知道调用哪个. 1.where pi ...

  9. &period;net core 3&period;0中可以使用gRPC了

    今天发现.net core下有gRPC模板了,这个可是补全了.net core下高性能RPC框架缺失这一大短板了. 使用模板创建了工程后,发现连客户端的示例也创建了. 更加给力的是,IDE是能直接识别 ...

  10. Selenium如何支持测试Windows application

    很长一段时间大家都支持Selenium是只支持测试Web应用程序的. 纵观Selenium的成长历程,不难解释这个原因.Selenium开始的时候是作为一个Firefox中的插件出现的,而且做得是纯J ...