Labojums: System.NotSupportedException tiek pieļauts izņēmums, palaižot IIS hosted WCF pakalpojumu, kas izmanto klienta sertifikātu SSL autentifikāciju

Pazīmes

Apsveriet šādu situāciju:

  • Jūs izveidojat Windows Communication Foundation (WCF) pakalpojumu, kas atrodas interneta informācijas pakalpojumos (IIS).

  • WCF pakalpojuma izmanto WebScriptEnablingBehavior klases.

  • Varat konfigurēt pakalpojumu WCF izmantot klienta sertifikātu autentifikācija (Secure Sockets Layer — SSL). Lai to izdarītu, iestatiet rekvizīta ClientCredentialType sertifikātufailā Web. config.

Šādā gadījumā palaišanas pakalpojumu WCF, tiek pieļauts izņēmums System.NotSupportedException un tiek parādīts kļūdas ziņojums, ir atspoguļota šāda informācija:

Drošligzdu slāņa (SSL) iestatījumi pakalpojuma 'None' neatbilst tiem IIS "Ssl, SslNegotiateCert, SslRequireCert SslMapCert, Ssl128".

Iemesls

Šī problēma rodas, jo rekvizītos HttpTransportBindingElement instancē netiek nosūtīti uz automātiski ģenerēts javascript starpniekservera galapunktu.

Risinājums

Pašlaik korporācija Microsoft piedāvā atbalstītu labojumfailu. Tomēr tas ir paredzēts tikai šajā rakstā aprakstītās problēmas novēršanai. Izmantojiet to tikai tām sistēmām, kurām ir radusies tieši šī problēma.

Lai novērstu šo problēmu, sazinieties ar Microsoft klientu atbalsta pakalpojumu sniedzēju, lai iegūtu labojumfailu. Pilnīgu sarakstu ar Microsoft klientu atbalsta pakalpojumu sniedzēju tālruņu numuriem un informāciju par atbalsta izmaksām, apmeklējiet šo Microsoft Web vietu:

http://support.microsoft.com/contactus/?ws=supportPiezīme. Īpašos gadījumos standarta izmaksas par atbalsta zvaniem nav jāsedz, ja Microsoft atbalsta speciālists nosaka, ka šo problēmu novērsīs noteikts atjauninājums. Parasti atbalsta izmaksas tiek piemērotas jautājumiem par papildu atbalstu un problēmām, kas neskar specifisko atjauninājumu apspriešanu.

Priekšnosacījumi

Jums ir jābūt .NET Framework 3.5 1. servisa pakotni (SP1, lai lietotu šo labojumfailu).

Restartēšanas nepieciešamība

Nav pēc šī labojumfaila instalēšanas restartējiet datoru.

Informācija par labojumfaila aizstāšanu

Šis labojumfails neaizstāj nevienu citu labojumfailu.
Šī labojumfaila versijai angļu valodā ir faila atribūti (vai jaunāki faila atribūti) Šajā tabulā sniegtie. Šo failu datumi un laiki ir norādīti atbilstoši universālajam koordinētajam laikam (UTC). Skatot faila informāciju, tā tiek pārvērsta atbilstoši vietējam laikam. Lai noskaidrotu atšķirību starp UTC un vietējo laiku, izmantojiet vadības paneļa vienuma Datums un laiks cilni Laika josla.

x86 bitu versijas Windows Server 2000, Windows Server 2003 un Windows XP

Faila nosaukums

Faila versija

Faila lielums

Datums

Laiks

Platformas

System.servicemodel.web.dll

3.5.594.4152

569,344

22-Jul-2009

01:51

x86


Windows Server 2000, Windows Server 2003 un Windows XP x64 platformas versija

Faila nosaukums

Faila versija

Faila lielums

Datums

Laiks

Platformas

System.servicemodel.web.dll

3.5.594.4152

491,520

22-Jul-2009

02:13

x64


Windows Server 2000, Windows Server 2003 un Windows XP versija pamatā ir Itanium

Faila nosaukums

Faila versija

Faila lielums

Datums

Laiks

Platformas

System.servicemodel.web.dll

3.5.594.4152

491,520

22-Jul-2009

02:26

IA-64


Statuss

Korporācija Microsoft ir apstiprinājusi, ka šī problēma pastāv Microsoft produktos, kas ir minēti sadaļā "Attiecas uz".

Risinājums

Lai novērstu šo problēmu, sevi resursdatora WCF pakalpojuma nevis viesošanas pakalpojumu IIS.

Papildinformācija

Steka izmete informācija

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

Vai nepieciešama papildu palīdzība?

Paplašiniet savas prasmes
Iepazīties ar apmācību
Esiet pirmais, kas saņem jaunās iespējas
Pievienoties Microsoft Insider

Vai šī informācija bija noderīga?

Paldies par jūsu atsauksmēm!

Paldies par atsauksmēm! Šķiet, ka jums varētu būt noderīgi sazināties ar kādu no mūsu Office atbalsta speciālistiem.

×