2014-01-16 4 views
1

В приложении Java/Spring/Apache CXF, у меня есть SOAP конечной точки, определенный как это:Как отключить SOAP 1.1 связывание с Apache CXF

<cxf:endpoint 
    id="MessagingService" 
    address="/MessagingService" 
    bindingUri="http://www.w3.org/2003/05/soap/bindings/HTTP/" 
    implementor="mypackage.MessagingServiceImpl" /> 

Атрибут bindingUri="http://www.w3.org/2003/05/soap/bindings/HTTP/" позволяет SOAP 1.2 привязок. Я тестировал, он работает.

Некоторые люди считают, что проблема безопасности с SOAP 1.1 связана с «расширением XML-объектов». Я хотел бы защитить свой WebService от такого рода атак.

Не уверен, что мой вопрос имеет смысл, но: возможно ли «отключить» связывание SOAP 1.1?

NB: с моей точки зрения, какая разница между запросами SOAP 1.1 и SOAP 1.2 - это пространство имен XML http://schemas.xmlsoap.org/soap/envelope/, используемое в запросах SOAP 1.1 и http://www.w3.org/2003/05/soap-envelope, используемых в запросах SOAP 1.2. «Отключение» SOAP 1.1 привязки может означать: отклонить любой запрос SOAP с использованием SOAP 1.1 Namespace

Заранее спасибо

ответ

1

Вы должны были бы добавить перехватчик, который будет проверять версию мыла и бросить ошибку.

Тем не менее, я действительно не понимаю вашу озабоченность. Внутри CXF обе версии обрабатываются точно так же. Любая проблема безопасности с 1.1 также будет присутствовать в 1.2. Таким образом, это не принесет вам никаких преимуществ.

Я не совсем уверен, что вы имеете в виду о «нарастающих сущностях XML», но это, вероятно, одна из двух вещей: расширение объекта

1) XML DTD - это уровень, что XML, который будет затрагивают как 1.1, так и 1.2. Однако CXF отключает его на уровне анализатора.

2) Петли структуры кодирования SOAP и такие, которые должны быть SOAP 1.1, но CXF не поддерживает кодирование мыла, поэтому также не проблема.

+0

Спасибо, Дэниэл, за ваш ответ. Люди, которые говорили со мной о «объектах», ссылались на ваш пункт №1. Как я теперь понимаю, это больше связано с реализацией парсера, чем с версией SOAP. Хорошо знать, что CXF отключает эту «функцию» на уровне анализатора. Мой WS затем защищен от такого рода атак. –

Смежные вопросы