Я использовал Visual Studio 2010 (wsdl.exe, который, как мне кажется, используется для этого) для создания .NET 2.0-совместимой веб-ссылки на основе WSDL ( не клиент WCF). Когда я использую прокси для вызова метода службы, я получаю следующее исключение:
Обнаружена ошибка при обработке заголовка
В подробностях исключения указан код InvalidSecurity .
Я проверил документацию для веб-службы, и она определяет использование элемента wsse: Security в заголовке SOAP.
<wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<wsse:UsernameToken>
<wsse:Username>Username</wsse:Username>
<wsse:Password>Password</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
Я попробовал следующий код, чтобы добавить имя пользователя и пароль перед вызовом метода:
service.Credentials = new NetworkCredential («Имя пользователя», «Пароль»);
Но это не помогает. Используя Fiddler2, я вижу, что сервисный вызов никогда не передается по проводам.
Мой вопрос: что я могу сделать в своем коде, чтобы удовлетворить требования для вызова службы с помощью элементов wsse: Security?