具有 Http 基本身份验证的 WCF

标签 wcf authentication web-services http-authentication

我正在构建一个 Web 服务,该服务需要可供各种潜在平台访问,包括许多较旧的 ASP 和 ASP .NET 应用程序。经过一番研究后,我选择了同时具有 REST (webHttpBinding) 和 SOAP (wsHttpBinding) 端点的 WCF 服务(这样,我可以支持广泛的平台,并且仍然能让 .NET 编码人员满意)。

为了安全起见,我对我自己的用户名/密码数据库使用 SSL 和 HTTP 基本身份验证。因此,我编写了一个 HttpModule 来处理用户名和密码并检查 SSL。现在,REST 设置工作正常,但 SOAP 端点出现问题。无论我使用什么设置,SOAP 客户端都不会向我发送可用于身份验证的 WWW-Authorization header 。我假设设置类似 <message clientCredentialType="UserName" />应该告诉 WCF 我需要一个授权 header ,并且 Visual Studio(或任何客户端)在创建 Web 引用时将拾取该信息。也许我只是太天真了。

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

最佳答案

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

看看here

关于具有 Http 基本身份验证的 WCF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2074361/

相关文章:

java - 各种风格的 Web 服务在性能上是否存在差异?

delphi - Wininet SSL 客户端验证异常

express - 使用 expressjs + socket.io + redis + express-session 登录系统

.net - WCF ExceptionShielding 错误 ID 与传递给处理程序的 HandlingInstanceId 不匹配

WCF DAL 组件

node.js - 是否有一个简单的基于文本文件的数据库来保存基本 node.js/Passport 身份验证的帐户信息?

java - 是否可以在 Android 设备上运行 Tomcat 服务器和一些 Web 应用程序? (即平板电脑)

jquery - 使用 jQuery AJAX 通过 Web 服务从数据库中获取数据

wcf - 我需要在客户端和服务器上都配置绑定(bind)吗?

asp.net - 云上的 HTTPS WCF Web 服务