2011-07-26 3 views
3

Windows Server 2008 R2 서버에서 IIS 7.5에서 호스트되는 .NET 3.5 웹 서비스 응용 프로그램 프로젝트를 만들었습니다.SOAP를 통해 웹 서비스를 사용할 때 "액세스가 거부되었습니다"

네트워크를 통해 동일한 서버 및 다른 서버에서 호스팅되는 ASP.NET 응용 프로그램에서 문제없이 서비스를 사용할 수 있습니다. 인증 구성이 Windows 통합 인증으로 설정하고 소비자에게하려고 할 때 소비자가 서비스 계정의 자격 증명을 제공해야합니다

XML Parser failed at linenumber 0, lineposition 0, reason is: Access is denied.

: 다른 직원은 SOAP 프로토콜을 사용하여 서비스를 소비하려고 할 때, 다음과 같은 오류가 나타날 수 있습니다 서비스.

누구든지이 문제를 경험했으며 해결 방법을 알고 있습니까?

UPDATE

내 동료 내 웹 서비스 소비에 대한 공급 업체의 고객 서비스와 말하기 후에, 그들은 그들의 INVOKE의 SOAP 단계에서 제한이 밝혔다. 공급 업체에 따르면 :

The Invoke SOAP object cannot interpret WSDL's containing In/Out parameters if the WSDL message definition contains identical part names for the input an output messages and identical data types.

웹 서비스 API에는 동일한 이름의 메서드와 출력 매개 변수가 들어 있습니다. 브라우저에서 웹 서비스 방식을 보면, 그것은 응답에서 다음과 같은 구조를 가지고 :

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

지금 문제 .... SOAP 프로토콜을 사용하거나이 그냥 제한하는 동안이 일반적인 동작입니다 벤더의 제품이 SOAP 메시지를 어떻게 분석 하는가?

+0

나는 다른 직원이 다른 클라이언트 응용 프로그램을 통해 그것을 호출한다는 것을 알고 있습니다. 그렇다면 코드에서 인증 정보를 올바르게 전달했는지 확인하십시오. – mohammedn

+0

방금 ​​물었던 것에 대해 생각해보십시오. SOAP 기반 서비스를 설명하는 WSDL이 파싱하기 어렵거나 한 공급 업체에서만 문제가됩니까? –

+0

@ John Saunders - .NET 응용 프로그램 내에서 서비스를 사용할 때이 문제가 발생하지 않았습니다. 응용 프로그램이 SOAP 프로토콜을 사용하여 서비스를 사용하도록 강제하는 것이 유일한 방법이라고 생각합니다. –

답변

0

이것은 벤더 특정 취약점 인 것처럼 보입니다. SOAP 사양 문제는 아닙니다. 그들은 아마도 절반 구현 된 SOAP 스택을 가지고있을 것입니다.

관련 문제