WCF 与 basicHttpBinding、加密、签名和 usernameToken over HTTP
Posted
技术标签:
【中文标题】WCF 与 basicHttpBinding、加密、签名和 usernameToken over HTTP【英文标题】:WCF with basicHttpBinding, encryption, signing and usernameToken over HTTP 【发布时间】:2011-05-16 16:45:08 【问题描述】:我正在尝试配置 WCF 客户端以生成正确的请求。 在该请求中,我需要带有 usernameToken 的安全标头。 另外,我需要加密和签署请求。 所有这些都是通过纯 HTTP 进行通信的。
到目前为止,我已经设法让客户端签名和加密消息。 现在我需要以某种方式将 usernameToken 合并到这个安全标头中。
我该怎么做?
我使用的是 basicHttpBinding,安全模式设置为“Message”,clientCredentialType = “Certificate”作为消息。
我偶然发现了 clearUsernameToken 绑定库,但我认为无法将所有这些(用户名令牌、签名和加密)合并到一个客户端中,并且所有这些都通过 HTTP。
这可能吗?
【问题讨论】:
【参考方案1】:我已经设法使用 WSE 3.0 做到了这一点。
现在在我的 SOAP 请求中,我有 UsernameToken、BinarySecurityToken、数字签名和加密。当然,我必须做一些自定义的 WSE 过滤器,但这并不难。
对我来说奇怪的是,这在 WSE 等旧框架中更容易实现,然后使用 WCF。
【讨论】:
以上是关于WCF 与 basicHttpBinding、加密、签名和 usernameToken over HTTP的主要内容,如果未能解决你的问题,请参考以下文章
WCF系列 - WCF安全系列 - basicHttpBinding
WCF--找不到具有绑定 BasicHttpBinding 的终结点的与方案 https 匹配的基址。注册的基址方案是 [http]。
WCF 4 Web 服务中的 UsernameToken 和 SSL - 但使用 basicHttpBinding
使用 BasicHttpBinding 进行身份验证的 WCF 服务