FIX: IIS를 실행 하면 System.NotSupportedException 예외 throw 됩니다 SSL 인증을 위해 클라이언트 인증서를 사용 하는 WCF 서비스를 호스트 합니다.

증상

다음 시나리오를 고려하십시오.

  • 인터넷 정보 서비스 (IIS)에서 호스트 하는 Windows 통신 Foundation (WCF) 서비스를 만듭니다.

  • WCF 서비스에서 WebScriptEnablingBehavior 클래스를 사용 합니다.

  • Secure Sockets Layer (SSL) 인증을 위한 클라이언트 인증서를 사용 하 여 WCF 서비스를 구성 합니다. 이렇게 하려면 인증서를 Web.config 파일에 ClientCredentialType 속성을 설정 합니다.

이 시나리오에서는 WCF 서비스를 실행 하면, System.NotSupportedException 예외가 throw 되 고 오류 메시지가 다음과 유사한:

SSL 설정은 서비스 '없음'와 일치 하지 않습니다 iis 'Ssl, SslNegotiateCert, SslRequireCert, SslMapCert, Ssl128'.

원인

HttpTransportBindingElement 인스턴스에의 일부 속성을 자동으로 생성 된 javascript 프록시 끝점에 복사 되지 않습니다 때문에이 문제가 발생 합니다.

해결 방법

지원 되는 핫픽스를 Microsoft에서 출시 되었습니다. 그러나이 문서에서 설명 하는 문제를 해결 하는 데 사용 됩니다. 이러한 특정 문제가 발생 한 시스템에만 적용 됩니다.

이 문제를 해결 하려면 핫픽스를 얻으려면 Microsoft 고객 지원 서비스에 문의 합니다. Microsoft 고객 기술 지원부 전화 번호 및 지원 비용에 대 한 정보를 전체 목록은 다음 Microsoft 웹 사이트를 방문.

http://support.microsoft.com/contactus/?ws=support참고: 특별 한 경우에 Microsoft 기술 지원 전문가가 특정 업데이트로 문제를 해결할 수 있는지 결정 하는 경우 일반적으로 지원 요청에 따른 비용이 취소 될 수도 있습니다. 추가 지원 질문과 특정 업데이트가 필요 하지 않은 문제에는 일반 지원 비용이 적용 됩니다.

전제 조건

해당.NET Framework 3.5 서비스 팩 1 (SP1)이이 핫픽스를 적용 하려면 설치 되어 있어야 합니다.

다시 시작 요구 사항

핫픽스를 설치한 후 컴퓨터를 다시 시작할 필요가 없습니다.

핫픽스 대체 정보

이 핫픽스는 다른 핫픽스를 대체하지 않습니다.
이 핫픽스의 영어 버전은 다음 표에 열거된 파일 특성 (또는 그 이후의 파일 특성)을 가지고 있습니다. 이러한 파일의 시간과 날짜는 협정 세계시(UTC)로 나열되었습니다. 파일 정보를 볼 때는 로컬 시간으로 변환됩니다. UTC와 로컬 시간의 시차는 제어판의 날짜 및 시간 항목에서 표준 시간대 탭을 사용하여 찾을 수 있습니다.

Windows Server 2000, Windows Server 2003 및 Windows XP의 x86 기반 버전

파일 이름

파일 버전

파일 크기

날짜

시간

플랫폼

System.servicemodel.web.dll

3.5.594.4152

569,344

22-Jul-2009

01:51

x86


Windows Server 2000, Windows Server 2003 및 Windows XP x64 기반 버전

파일 이름

파일 버전

파일 크기

날짜

시간

플랫폼

System.servicemodel.web.dll

3.5.594.4152

491,520

22-Jul-2009

02:13

x64


Windows Server 2000, Windows Server 2003 및 Windows XP의 Itanium 기반 버전

파일 이름

파일 버전

파일 크기

날짜

시간

플랫폼

System.servicemodel.web.dll

3.5.594.4152

491,520

22-Jul-2009

02:26

IA-64


상태

Microsoft는 이 문제가 '적용 대상' 섹션에 나열된 Microsoft 제품의 문제임을 확인했습니다.

해결 방법

이 문제를 해결 하기 위해 자기 대신 IIS에서 서비스를 호스팅하는 WCF 서비스를 호스팅하십시오.

자세한 내용

스택 덤프 정보

System.ServiceModel.dll!System.ServiceModel.Channels.HttpsChannelListener.ApplyHostedContext(System.ServiceModel.Activation.VirtualPathExtension virtualPathExtension, bool isMetadataListener) + 0x1b7 bytes    

System.ServiceModel.dll!System.ServiceModel.Channels.HttpsTransportBindingElement.BuildChannelListener<System.__Canon>(System.ServiceModel.Channels.BindingContext context) + 0x69 bytes

System.ServiceModel.dll!System.ServiceModel.Channels.BindingContext.BuildInnerChannelListener<System.__Canon>() + 0x5f bytes

System.ServiceModel.dll!System.ServiceModel.Channels.MessageEncodingBindingElement.InternalBuildChannelListener<System.__Canon>(System.ServiceModel.Channels.BindingContext context) + 0x66 bytes

System.ServiceModel.Web.dll!System.ServiceModel.Channels.WebScriptMetadataMessageEncodingBindingElement.BuildChannelListener<System.__Canon>(System.ServiceModel.Channels.BindingContext context) + 0x4b bytes

System.ServiceModel.dll!System.ServiceModel.Channels.BindingContext.BuildInnerChannelListener<System.__Canon>() + 0x5f bytes

System.ServiceModel.dll!System.ServiceModel.Channels.Binding.BuildChannelListener<System.__Canon>(System.Uri listenUriBaseAddress, string listenUriRelativeAddress, System.ServiceModel.Description.ListenUriMode listenUriMode, System.ServiceModel.Channels.BindingParameterCollection parameters) + 0xa6 bytes

System.ServiceModel.dll!System.ServiceModel.Channels.Binding.BuildChannelListener<System.__Canon>(System.Uri listenUriBaseAddress, System.ServiceModel.Channels.BindingParameterCollection parameters) + 0x7c bytes

System.ServiceModel.Web.dll!System.ServiceModel.Description.WebScriptEnablingBehavior.AddMetadataEndpoint(System.ServiceModel.Description.ServiceEndpoint endpoint, System.ServiceModel.Dispatcher.EndpointDispatcher endpointDispatcher, bool debugMode) + 0x698 bytes

System.ServiceModel.Web.dll!System.ServiceModel.Description.WebScriptEnablingBehavior.ApplyDispatchBehavior(System.ServiceModel.Description.ServiceEndpoint endpoint, System.ServiceModel.Dispatcher.EndpointDispatcher endpointDispatcher) + 0x60 bytes

추가 도움이 필요하신가요?

기술 향상
교육 살펴보기
새로운 기능 우선 가져오기
Microsoft Insider 참가

이 정보가 유용한가요?

소중한 의견에 감사드립니다.

피드백을 주셔서 감사합니다. Office 지원 에이전트와 연락하는 것이 도움이 될 것 같습니다.

×