伙计们,我正在构建一个 RESTful 服务,该服务通过在 XML 文档底部提供一个 XMLDSIG XML 签名来保护它。当我将此文档发送到服务器时,WCF 服务正在对 HTTP 有效负载执行 XML 反序列化方法,以便为我提供一个 C# 类。不幸的是,要正确进行这种反序列化,C# 类定义需要具有定义 XML 签名所需的所有属性,即使我只需要这些属性是为了安全。
所以,我想做的是:
- 构建一个 WCF 服务行为,在调用前检查 XML 签名,对其进行验证,然后在常规方法调用的反序列化之前将其从 XML 中剥离。
这可能吗?如果是这样,我可以从哪里开始寻找如何做到这一点?我觉得我很接近我只是没有找到正确的 WCF 注入点。
ps 一切都是 .NET 4.0、Visual Studio 2010、IIS 7+。