zoukankan      html  css  js  c++  java
  • 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]特性可以定义在消息契约中,也可以定义在任何特定的消息头和消息体中。

          

     

  • 相关阅读:
    Android获取屏幕分辨率及DisplayMetrics简介(轉)
    程序员技术练级攻略
    CSDN精选iPhone开发博客
    Java中访问权限修饰符public protected 缺省默认 private的用法总结(转)
    Java中abstract class 和 interface 的解释和他们的异同点(转)
    Code Project精彩系列(转)
    java中重载与重写的区别
    HDU 1024 Max Sum Plus Plus(动态规划,给定一个数组,求其分成m个不相交子段和最大值的问题)
    Triple ACM HDU 3908 (数学题,找多少种组合)
    ACM POJ 1015 Jury Compromise(陪审团的人选,动态规划题,难)
  • 原文地址:https://www.cnblogs.com/taomylife/p/4224598.html
Copyright © 2011-2022 走看看