Accedi con Microsoft
Accedi o crea un account.
Salve,
Seleziona un altro account.
Hai più account
Scegli l'account con cui vuoi accedere.

INTRODUZIONE

Windows Communication Foundation (WCF) non dispone di funzionalità per inviare messaggi protetti e ricevere le risposte non protette, o di inviare messaggi non protetti e ricevere risposte protette. L'hotfix descritto in questo articolo viene aggiunto un nuovo attributo enableUnsecuredResponse . Il valore predefinito dell'attributo enableUnsecuredResponse è false. Se si imposta il valore di questo attributo su true, le seguenti nuove funzionalità sono attivate in WCF:

  • Anche se i messaggi in uscita vengono protetti tramite il protocollo Secure Socket Layer (SSL) per firmare il corpo del messaggio, client WCF può accettare le risposte non protette.

  • I servizi WCF possono inviare risposte protette di alcuna intestazione di protezione in SOAP Envelope, anche se la richiesta è protetto.

Nota: L'attributo enableUnsecuredResponse si applica solo al tipo di CustomBinding .

Risoluzione

Se si utilizza la versione.NET Framework 3.0, installare l'hotfix descritto nell'articolo Microsoft Knowledge Base:

967105 FIX: un hotfix che consente a WCF di ricevere messaggi protetti non protette le risposte e di inviare messaggi non protetti e ricevere risposte protette, è disponibile per.NET Framework 3.0Se si utilizza.NET Framework 3.5 Service Pack 1 su Windows 7 o Windows Server 2008 R2, installare l'hotfix descritto nell'articolo Microsoft Knowledge Base:

977420 un hotfix cumulativo è disponibile per risolvere i problemi in Windows Communication Foundation in.NET Framework 3.5 SP1 per Windows 7 e Windows Server 2008 R2
Se si utilizza.NET Framework 3.5 Service Pack 1 su altri sistemi operativi, installare il seguente hotfix per risolvere il problema.

Un hotfix supportato è ora disponibile da Microsoft. Tuttavia è destinato esclusivamente alla risoluzione del problema descritto in questo articolo. Applicarlo solo ai sistemi in cui si verificano questo problema specifico. Questo hotfix potrebbe essere sottoposto ad ulteriori test. Pertanto, se il problema non causa gravi difficoltà, consiglia di attendere la versione successiva del Service pack contenente tale hotfix.

Per risolvere immediatamente questo problema, contattare il supporto tecnico clienti Microsoft per ottenere l'hotfix. Per un elenco completo dei numeri di telefono supporto tecnico clienti Microsoft e informazioni sui costi dell'assistenza, visitare il seguente sito Web Microsoft:

http://support.microsoft.com/contactus/?ws=supportNota: In casi particolari, le spese normalmente addebitate per le chiamate di supporto potrebbero essere annullate qualora un addetto al supporto Microsoft determina che uno specifico aggiornamento risolverà il problema. I costi di supporto normale verranno applicati per eventuali ulteriori domande e problemi che non dovessero rientrare nello specifico aggiornamento in questione.

Prerequisiti

Per applicare questo hotfix è necessario disporre di.NET Framework 3.5 Service Pack 1.

Richiesta di riavvio

Non è necessario riavviare il computer dopo avere applicato questo hotfix se non viene utilizzata alcuna istanza di.NET Framework.

Informazioni sulla sostituzione dell'aggiornamento rapido

Questo hotfix non sostituisce eventuali altri aggiornamenti rapidi.

Informazioni sui file

La versione inglese di questo hotfix presenta gli attributi di file (o attributi successivi) elencati nella tabella riportata di seguito. Le date e ore dei file sono elencate in base al formato UTC (Coordinated Universal Time Coordinated). Quando si visualizzano le informazioni sul file, viene convertito in ora locale. Per calcolare la differenza tra ora UTC e ora locale, utilizzare la scheda fuso orario nell'elemento di Data e ora nel Pannello di controllo.

Informazioni file per tutte le versioni basate su x86 di Windows XP e Windows Server 2003

Nome del file

Versione del file

Dimensione del file

Data

Ora

Piattaforma

Servicemonikersupport.dll

3.0.4506.4119

17,240

01-Giu-2009

22:56

x86

System.runtime.serialization.dll

3.0.4506.4119

970,752

01-Giu-2009

22:56

x86

System.servicemodel.dll

3.0.4506.4119

5,931,008

01-Giu-2009

22:56

x86

Informazioni file per tutte le versioni basate su x64 di Windows XP e Windows Server 2003

Nome del file

Versione del file

Dimensione del file

Data

Ora

Piattaforma

Servicemonikersupport.dll

3.0.4506.4119

19,304

01-Giu-2009

22:28

x64

System.runtime.serialization.dll

3.0.4506.4119

847,872

01-Giu-2009

22:28

x64

System.servicemodel.dll

3.0.4506.4119

5,267,456

01-Giu-2009

22:28

x64

Informazioni file per tutte le versioni basate su x86 di Windows Server 2008 SP2 e Windows Vista SP2

Nome del file

Versione del file

Dimensione del file

Data

Ora

Servicemonikersupport.dll

3.0.4506.4120

17,240

10-Jun-2009

06:55

System.runtime.serialization.dll

3.0.4506.4120

970,752

10-Jun-2009

06:55

System.servicemodel.dll

3.0.4506.4120

5,935,104

10-Jun-2009

06:55

Informazioni file per tutte le versioni basate su x64 di Windows Server 2008 SP2 e Windows Vista SP2

Nome del file

Versione del file

Dimensione del file

Data

Ora

Piattaforma

Servicemonikersupport.dll

3.0.4506.4120

19,288

10-Jun-2009

06:56

x64

System.runtime.serialization.dll

3.0.4506.4120

847,872

10-Jun-2009

06:56

x64

System.servicemodel.dll

3.0.4506.4120

5,271,552

10-Jun-2009

06:56

x64

Informazioni sui file per tutte le versioni basate su Itanium di Windows Server 2008 SP2

Nome del file

Versione del file

Dimensione del file

Data

Ora

Piattaforma

Servicemonikersupport.dll

3.0.4506.4120

33,640

10-Jun-2009

06:56

IA-64

System.runtime.serialization.dll

3.0.4506.4120

847,872

10-Jun-2009

06:56

IA-64

System.servicemodel.dll

3.0.4506.4120

5,271,552

10-Jun-2009

06:56

IA-64

Stato

Microsoft ha confermato che questo è un problema dei prodotti Microsoft elencati nella sezione "Si applica a".

Ulteriori informazioni

Utilizzare il seguente codice di esempio per verificare l'attributo enableUnsecuredResponse :

Servizio

BindingElementCollection serviceBec = new BindingElementCollection();
SecurityBindingElement serviceSbe = SecurityBindingElement.CreateUserNameForCertificateBindingElement();
serviceSbe.EnableUnsecuredResponse = true;
serviceBec.Add(serviceSbe);
serviceBec.Add(new TextMessageEncodingBindingElement());
serviceBec.Add(new HttpTransportBindingElement());
Binding serviceBinding = new CustomBinding(serviceBec);

ServiceHost serviceHost = new ServiceHost(typeof(RequestReply));

serviceHost.Open();

Client

BindingElementCollection clientBec = new BindingElementCollection();
SecurityBindingElement clientSbe = SecurityBindingElement.CreateUserNameForCertificateBindingElement();
clientSbe.EnableUnsecuredResponse = true;
clientBec.Add(clientSbe);
clientBec.Add(new TextMessageEncodingBindingElement());
clientBec.Add(new HttpTransportBindingElement());
Binding clientBinding = new CustomBinding(clientBec);

IRequestReply channel = cf.CreateChannel();
try
{
channel.SendString("Hello");
cf.Close();
}

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.

Le community aiutano a porre e a rispondere alle domande, a fornire feedback e ad ascoltare gli esperti con approfondite conoscenze.

Queste informazioni sono risultate utili?

Come valuti la qualità della lingua?
Cosa ha influito sulla tua esperienza?
Premendo Inviare, il tuo feedback verrà usato per migliorare i prodotti e i servizi Microsoft. L'amministratore IT potrà raccogliere questi dati. Informativa sulla privacy.

Grazie per il feedback!

×