Отказано в доступе при использовании веб-службы по протоколу SOAP

Я создал проект приложения веб-службы .NET 3.5, который будет размещен в IIS 7.5 на сервере Windows Server 2008 R2.

Я могу без проблем использовать службу из приложения ASP.NET, размещенного на том же сервере и другом сервере в нашей сети. Когда другой сотрудник пытается использовать службу по протоколу SOAP, он получает следующую ошибку:

Ошибка синтаксического анализатора XML: номер строки 0, позиция 0, причина: отказано в доступе.

Для конфигурации проверки подлинности задано значение «Встроенная проверка подлинности Windows», и при попытке использования службы потребителю необходимо будет предоставить учетные данные учетной записи службы.

Кто-нибудь еще сталкивался с этой проблемой, и знают ли они, как ее решить?

ОБНОВЛЕНИЕ

После разговора с моим коллегой и службой поддержки поставщика по поводу использования моего веб-сервиса они обнаружили, что на их шаге INVOKE SOAP есть ограничения. По данным производителя:

Объект Invoke SOAP не может интерпретировать WSDL, содержащие параметры ввода / вывода, если определение сообщения WSDL содержит идентичные имена частей для входных и выходных сообщений и идентичные типы данных.

API веб-службы содержит метод и выходной параметр с тем же именем. Если вы посмотрите на метод веб-службы в браузере, он будет иметь следующую структуру в ответе:

<soap:Body>
    <MyServiceResponse>
        <MyServiceResponse>
            <property>...

Теперь вопрос ... Это обычное поведение при использовании протокола SOAP или это ограничивается только тем, как продукт поставщика анализирует сообщение SOAP?


person Michael Kniskern    schedule 26.07.2011    source источник
comment
Я понимаю, что другой сотрудник вызывает его через другое клиентское приложение. Если да, уверены ли вы, что он правильно передает учетные данные аутентификации в своем коде?   -  person mohammedn    schedule 27.07.2011
comment
Подумайте о том, что вы только что спросили: часто ли WSDL (который описывает сервис на основе SOAP) не поддается анализу, или это проблема только одного поставщика?   -  person John Saunders    schedule 29.07.2011
comment
@John Saunders - Когда я использую службу в приложении .NET, у меня не возникало этой проблемы. Я предполагаю, что единственный способ доказать это - заставить приложение использовать службу с использованием протокола SOAP.   -  person Michael Kniskern    schedule 29.07.2011
comment
Когда вы используете службу в приложении .NET, почему вы думаете, что не используете SOAP?   -  person John Saunders    schedule 29.07.2011


Ответы (1)


По всей видимости, это слабость конкретного производителя, а не проблема спецификации SOAP. Вероятно, у них есть наполовину реализованный стек SOAP.

person Scott Hanselman    schedule 19.11.2011