保护WCF服务的最佳方法是什么?

时间:2013-04-08 20:16:24

标签: .net wcf

保护WCF服务的最佳方法是什么?我应该在服务调用中添加一个标头,并在客户端上有一个验证标题的消息检查器吗?

我需要确保此人提供正确的用户名和密码才能使用该服务并且所有内容都已加密。它是通过互联网进行的,并将使用HTTP绑定。

3 个答案:

答案 0 :(得分:2)

这取决于你的意思"安全"。您可以从SSL(https)开始,如果要对客户端进行身份验证,则可以使用身份验证技术。你真的需要详细说明你的目标......

答案 1 :(得分:2)

你应该看看this MSDN article,它总结了选项。

与典型的Web应用程序非常相似,您可以通过多种方式保护网站:

  1. 传输安全(SSL)
  2. 邮件安全性(邮件安全标头)
  3. 使用邮件凭据进行传输(合并)
  4. 答案取决于您需要为应用程序使用的安全级别。在许多情况下,运输安全可能就足够了。

答案 2 :(得分:1)

如果您仅限于HTTP,那么它会受到性能影响但更便携 但我认为您可以使用WS-Security加密和保护HTTP。

传输和邮件安全模式

两种主要机制用于在WCF中实现传输安全性:
传输安全模式和消息安全模式。

传输安全模式使用传输级协议(如HTTPS)来实现传输安全性。传输模式具有被广泛采用的优点,可在许多平台上使用,并且计算复杂度较低。但是,它的缺点是只能从点到点保护消息。

另一方面,消息安全模式使用WS-Security(和其他规范)来实现传输安全性。由于消息安全性直接应用于SOAP消息并且包含在SOAP信封中,与应用程序数据一起,因此具有独立于传输协议,更具可扩展性以及确保端到端安全性的优势(相对于点) -to-点);它的缺点是比传输安全模式慢几倍,因为它必须处理SOAP消息的XML特性。

Selecting a Credential Type

How to: Authenticate with a User Name and Password