WCF与Http基本身份验证

时间:2010-01-15 19:53:54

标签: wcf authentication web-services http-authentication

我正在构建一个需要可供各种潜在平台访问的Web服务,包括许多旧的ASP和ASP .NET应用程序。经过一些研究,我选择了一个带有REST(webHttpBinding)和SOAP(wsHttpBinding)端点的WCF服务(这样,我可以支持各种各样的平台,并且仍然让.NET编码员感到高兴。)

为了安全起见,我在我自己的用户名/密码数据库中使用SSL和HTTP Authentication Basic。所以我编写了一个HttpModule来处理用户名和密码并检查SSL。现在,REST设置工作正常,但我遇到SOAP端点问题。无论我使用什么设置,SOAP客户端都不会向我发送可用于进行身份验证的WWW-Authorization标头。我假设设置<message clientCredentialType="UserName" />之类的东西应该告诉WCF我期望一个Authorization标头,并且当它创建一个Web引用时,Visual Studio(或任何客户端)将获取该信息。也许我只是无助地天真。

总结一下这个问题:有什么方法可以告诉WCF向我发送WWW-Authorization标题(即HTTP基本标题)以及soap消息?

1 个答案:

答案 0 :(得分:3)

您可以为身份验证创建自定义标头。

看看here