WCF basicHttpBinding使用用户名&进行身份验证密码,如ASMX Web服务

时间:2009-12-27 05:44:24

标签: wcf

我在IIS中使用 basicHttpBinding 实现wcf web服务托管,这些应该可以通过.net 2.0客户端访问,例如访问ASMX服务。

任何机构都可以提供详细信息和帮助几个示例/示例代码。

感谢
NRK

1 个答案:

答案 0 :(得分:5)

WCF比ASMX更安全,并且坚持基本的事实,它永远不允许您在不加密的情况下发送纯文本凭据。

你需要问自己一些问题:

  • 如何保护从客户端到服务器的邮件,以便用户名/密码不以纯文本形式发送?
  • 如果邮件到达服务器,如何检查用户名/密码的有效性?

首先,你可以做很多事情:

  • 保护传输层,例如使用HTTPS(使用SSL)来保护从客户端到服务器的整个管道。在这种情况下,您不必做太多其他事情 - 整个通信渠道都受到保护

  • 使用加密保护邮件(至少是用户名/密码部分)。在这种情况下,您需要在服务器上至少拥有一个服务证书,以便调用客户端具有加密消息的共享密钥 - 或者您需要在客户端上安装证书(如果您需要,通常不是一个好主意每个人都打电话给你服务)

对于身份验证部分,您需要决定:

  • 使用已拥有用户表的ASP.NET成员资格子系统,您可以使用该表验证所提供的凭据

  • 或从头开始自己动手 - 除非你真的需要并且有非常特殊的需要,否则不推荐

WCF安全性不是一个简单的主题 - 您可以在此处找到有关如何执行某些操作的有用信息和方案:

只提供您提供的少量信息,就无法真正给出“做到这一点和那样”的答案。您需要阅读WCF安全性并确定要实现的方案。如果您的问题更侧重于特定问题/问题,我相信这里的人可以帮助您解决有关如何在WCF安全性中实现某些事情的更具体问题。