2

我正在构建一个需要可供各种潜在平台访问的 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 标头,并且 Visual Studio(或任何客户端)在创建 Web 引用时会获取该信息。也许我只是天真得无可救药。

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

4

1 回答 1

4

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

看看这里

于 2010-01-15T20:02:20.050 回答