Folks, Я создаю службу RESTful, которая защищена предоставлением XML-подписи XMLDSIG внизу документа XML. Когда я отправляю этот документ на сервер, служба WCF выполняет метод де-сериализации XML в полезной нагрузке HTTP, чтобы дать мне класс C#. К сожалению, для того, чтобы эта де-сериализация происходила должным образом, определение класса C# должно обладать всеми свойствами, необходимыми для определения XML-подписи, хотя мне это нужно только для обеспечения безопасности.Сбросьте элементы XMLDSIG из входящего XML-сообщения POST в службу WCF RESTful
Итак, что я хотел бы сделать это:
- строить поведение службы WCF, что перед вызовом, анализирует XML-подпись, проверяет ее, а затем удаляет его с XML перед де- сериализация для обычного вызова метода.
Возможно ли это? Если да, где я могу начать искать, как это сделать? Я чувствую, что я близок. Я просто не нашел правильную точку инъекции WCF.
p.s. Все это .NET 4.0, Visual Studio 2010, IIS 7+.
Я понимаю, что это звучит странно похоже на встроенную безопасность уровня WCF на wsHttpBinding ... но помните, что это REST. Мне не нужно шифрование, мне просто нужна подписанная подпись с секретным ключом (стандарт XMLDSIG ... как реализованный .NET SignedXml class ...) упал на конец моей полезной нагрузки, а затем очистился, прежде чем WCF попытается де- сериализуйте полезную нагрузку в класс C#. –