WCF Transport&消息级别安全性

时间:2014-04-09 14:02:27

标签: wcf security

我是wcf的新手并寻求基本帮助。我听说安全可以在两个级别的wcf中给出。那是transport & message level.

我想知道传输级安全性和安全性是什么意思消息级安全性。运输级别安全与运输之间的区别是什么?消息级安全性以及何时优先使用。

我如何理解在哪个级别给出的安全性?

我有两个配置条目

<bindings>
    <wsHttpBinding>
        <binding name="TransportSecurity">
            <security mode="Transport">
                <transport clientCredentialType="None"/>
            </security>
        </binding>
    </wsHttpBinding>
</bindings>

<bindings>
<wsHttpBinding>
<binding name="wsHttpEndpointBinding">
<security>
<message clientCredentialType="Certificate" />
</security>
</binding>
</wsHttpBinding>
</bindings>

只看到上面的两个配置xml并告诉我为什么没有像消息一样使用的单词但是有一个叫做transport的单词用法?

某些时候模式用于安全标记,有些时候没有用于安全标记。模式可以是消息而不是传输吗?

请帮助讨论。感谢

1 个答案:

答案 0 :(得分:3)

在WCF中,您提供的两个安全模型会影响两个不同的东西,您可以保护传输(tcp或http)或消息(协议)。

传输安全性取决于所选的绑定,但是在wsHttpBinding的情况下,您可以使用SSL来保护传输安全。传输安全性提供了有限的身份验证选择,如基本,证书,摘要,窗口和ntlm,但还有更多,它们完全依赖于传输。

另一方面,邮件安全性使您能够获得完整的端到端安全性(具有传输安全性),增强的灵活性,如仅安全的部分邮件,它支持多种传输以及各种凭据和声明。 / p>

还有第三种类型的安全模式,称为TransportWithMessageCredential,它包含两者。

运输安全具有以下优势:

  • 不要求通信方理解XML级别 安全概念。这可以改善互操作性 例如,当使用HTTPS来保护通信时。
  • 一般性能提升。
  • 提供硬件加速器。
  • 可以流式传输。

运输安全具有以下缺点:

  • 只有跳到跳。
  • 有限且不可扩展的凭证集。
  • 运输相关的。

邮件安全性具有以下缺点:

  • 性能
  • 无法使用消息流。
  • 需要实现XML级安全机制和支持 用于WS-Security规范。这可能会影响到 互操作性。

我的建议是访问Developer Network security section for WCF

那里有很多例子,网上也有很多帮助。

如果您需要进一步了解详情,我希望这能为您解释。