Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Microsoft si impegna a proteggere la privacy dell'utente finale. Quando si compila un'applicazione usando Windows Communication Foundation (WCF), versione 3.0, l'applicazione potrebbe influire sulla privacy degli utenti finali. Ad esempio, l'applicazione può raccogliere in modo esplicito le informazioni di contatto dell'utente oppure può richiedere o inviare informazioni su Internet al sito Web. Se si incorpora la tecnologia Microsoft nell'applicazione, tale tecnologia potrebbe avere un proprio comportamento che potrebbe influire sulla privacy. WCF non invia informazioni a Microsoft dall'applicazione, a meno che l'utente finale non scelga di inviarlo a Microsoft.
WCF in breve
WCF è un framework di messaggistica distribuita che usa Microsoft .NET Framework che consente agli sviluppatori di compilare applicazioni distribuite. I messaggi comunicati tra due applicazioni contengono informazioni sull'intestazione e sul corpo.
Le intestazioni possono contenere instradamento dei messaggi, informazioni di sicurezza, transazioni e altro a seconda dei servizi utilizzati dall'applicazione. I messaggi vengono in genere crittografati per impostazione predefinita. L'unica eccezione è quando si usa il BasicHttpBinding
, progettato per l'uso con i servizi Web legacy non protetti. In qualità di progettista dell'applicazione, l'utente è responsabile della progettazione finale. I messaggi nel corpo SOAP contengono dati specifici dell'applicazione; Tuttavia, questi dati, ad esempio le informazioni personali definite dall'applicazione, possono essere protetti tramite funzionalità di crittografia WCF o riservatezza. Le sezioni seguenti descrivono le funzionalità che potrebbero influire sulla privacy.
Messaggistica
Ogni messaggio WCF ha un'intestazione di indirizzo che specifica la destinazione del messaggio e la posizione in cui deve essere visualizzata la risposta.
Il componente dell'indirizzo di un indirizzo endpoint è un URI (Uniform Resource Identifier) che identifica l'endpoint. L'indirizzo può essere un indirizzo di rete o un indirizzo logico. L'indirizzo può includere il nome del computer (nome host, nome di dominio completo) e un indirizzo IP. L'indirizzo dell'endpoint può contenere anche un identificatore univoco globale (GUID) o una raccolta di GUID per gli indirizzi temporanei usati per distinguere ogni indirizzo. Ogni messaggio contiene un messaggio ID che corrisponde a un GUID. Questa funzionalità segue lo standard di riferimento WS-Addressing.
Il livello di messaggistica WCF non scrive informazioni personali nel computer locale. Tuttavia, potrebbe propagare le informazioni personali a livello di rete se uno sviluppatore di servizi ha creato un servizio che espone tali informazioni (ad esempio, usando il nome di una persona in un nome endpoint o includendo le informazioni personali nel linguaggio di descrizione dei servizi Web dell'endpoint, ma non richiede ai client di usare https per accedere al WSDL). Inoltre, se uno sviluppatore esegue lo strumento ServiceModel Metadata Utility Tool (Svcutil.exe) su un endpoint che espone informazioni personali, l'output dello strumento potrebbe contenere tali informazioni e il file di output viene scritto nel disco rigido locale.
Servizi di hosting
La funzionalità di hosting in WCF consente alle applicazioni di avviare su richiesta o di abilitare la condivisione delle porte tra più applicazioni. Un'applicazione WCF può essere ospitata in Internet Information Services (IIS), simile a ASP.NET.
L'hosting non espone informazioni specifiche sulla rete e non mantiene i dati nel computer.
Sicurezza dei messaggi
La sicurezza WCF offre le funzionalità di sicurezza per le applicazioni di messaggistica. Le funzioni di sicurezza fornite includono autenticazione e autorizzazione.
L'autenticazione viene eseguita passando le credenziali tra i client e i servizi. L'autenticazione può essere basata sulla sicurezza a livello di trasporto o tramite la sicurezza a livello di messaggio SOAP, come indicato di seguito:
Nella sicurezza dei messaggi SOAP, l'autenticazione viene eseguita tramite credenziali come nome utente/password, certificati X.509, ticket Kerberos e token SAML, tutti contenenti informazioni personali, a seconda dell'emittente.
Usando la sicurezza del trasporto, l'autenticazione viene eseguita tramite meccanismi di autenticazione del trasporto tradizionali come gli schemi di autenticazione HTTP (Basic, Digest, Negotiate, Integrated Windows Authorization, NTLM, None e Anonymous) e l'autenticazione basata su form.
L'autenticazione può comportare una sessione protetta stabilita tra gli endpoint di comunicazione. La sessione è identificata da un GUID che è persistente per tutta la durata della sessione di sicurezza. La tabella seguente illustra cosa viene mantenuto e dove.
Dati | Immagazzinamento |
---|---|
Credenziali di presentazione, ad esempio nome utente, certificati X.509, token Kerberos e riferimenti alle credenziali. | Meccanismi standard di gestione delle credenziali di Windows, ad esempio l'archivio certificati di Windows. |
Informazioni sull'appartenenza utente, ad esempio nomi utente e password. | ASP.NET provider per la gestione delle appartenenze utenti. |
Informazioni sull'identità del servizio usato per autenticare il servizio ai clienti. | Indirizzo endpoint del servizio. |
Informazioni sul chiamante. | Log di controllo. |
Revisione contabile
Il controllo registra l'esito positivo e negativo degli eventi di autenticazione e autorizzazione. I record di controllo contengono i dati seguenti: URI del servizio, URI azione e identificazione del chiamante.
Il controllo registra anche quando l'amministratore modifica la configurazione della registrazione dei messaggi (attiva o disattivata), perché la registrazione dei messaggi può registrare dati specifici dell'applicazione in intestazioni e corpi. Per Windows XP, un record viene registrato nel registro eventi dell'applicazione. Per Windows Vista e Windows Server 2003, un record viene registrato nel registro eventi di sicurezza.
Transazioni
La funzionalità transazioni fornisce servizi transazionali a un'applicazione WCF.
Le intestazioni di transazione usate nella propagazione delle transazioni possono contenere ID di transazione o ID di iscrizione, che sono GUID.
La funzionalità Transazioni usa Microsoft Distributed Transaction Coordinator (MSDTC) Transaction Manager (un componente Windows) per gestire lo stato delle transazioni. Per impostazione predefinita, le comunicazioni tra i gestori transazioni vengono crittografate. I gestori delle transazioni possono registrare i riferimenti agli endpoint, gli ID transazione e gli ID di registrazione come parte del loro stato durevole. La durata di questo stato è determinata dalla durata del file di log di Transaction Manager. Il servizio MSDTC è proprietario e gestisce questo log.
La funzionalità Transazioni implementa gli standard di Transazione WS-Coordination e WS-Atomic.
Sessioni affidabili
Le sessioni affidabili in WCF forniscono il trasferimento dei messaggi quando si verificano errori di trasporto o intermedi. Forniscono un trasferimento di messaggi una sola volta anche quando il trasporto sottostante si disconnette (ad esempio, una connessione TCP in una rete wireless) o perde un messaggio (un proxy HTTP che rilascia un messaggio in uscita o in arrivo). Le sessioni affidabili recuperano anche il riordinamento dei messaggi (come nel caso del routing multipath), mantenendo l'ordine in cui sono stati inviati i messaggi.
Le sessioni affidabili vengono implementate usando il protocollo WS-ReliableMessaging (WS-RM). Aggiungono intestazioni di tipo WS-RM che contengono informazioni sulla sessione, utilizzate per identificare tutti i messaggi associati a una determinata sessione affidabile. Ogni WS-RM sessione ha un identificatore, ovvero un GUID.
Nessuna informazione personale viene mantenuta nel computer dell'utente finale.
Canali in coda
Le code archiviano i messaggi da un'applicazione di invio per conto di un'applicazione ricevente e in seguito inoltrano questi messaggi all'applicazione ricevente. Consentono di garantire il trasferimento di messaggi dall'invio di applicazioni alla ricezione di applicazioni quando, ad esempio, l'applicazione ricevente è temporanea. WCF fornisce supporto per l'accodamento utilizzando Microsoft Message Queuing (MSMQ) come mezzo di trasporto.
La funzionalità dei canali in coda non aggiunge intestazioni a un messaggio. Crea invece un messaggio di accodamento messaggi con le proprietà del messaggio di accodamento messaggi appropriate impostate e richiama i metodi di accodamento messaggi per inserire il messaggio nella coda accodamento messaggi. Il servizio di accodamento messaggi è un componente facoltativo distribuito con Windows.
Nessuna informazione viene mantenuta nel computer dell'utente finale dalla funzionalità canali in attesa, poiché utilizza Accodamento messaggi come infrastruttura di accodamento.
Integrazione COM+
Questa funzionalità esegue il wrapping delle funzionalità COM e COM+ esistenti per creare servizi compatibili con i servizi WCF. Questa funzionalità non usa intestazioni specifiche e non conserva i dati nel computer dell'utente finale.
Moniker del servizio COM
In questo modo viene fornito un wrapper non gestito a un client WCF standard. Questa funzionalità non ha intestazioni specifiche nel traffico di rete né conserva i dati nel computer.
Canale di comunicazione tra pari
Un canale peer consente lo sviluppo di applicazioni multiparty tramite WCF. La messaggistica multiparty avviene nel contesto di una rete mesh. Le mesh sono identificate da un nome che i nodi possono unire. Ogni nodo nel canale peer crea un listener TCP in una porta specificata dall'utente e stabilisce connessioni con altri nodi nella mesh per garantire la resilienza. Per connettersi ad altri nodi nella mesh, i nodi scambiano anche alcuni dati, tra cui l'indirizzo del listener e gli indirizzi IP del computer, con altri nodi nella mesh. I messaggi inviati nella mesh possono contenere informazioni di sicurezza relative al mittente per impedire lo spoofing e la manomissione dei messaggi.
Nessuna informazione personale viene archiviata nel computer dell'utente finale.
Esperienza professionale IT
Tracciamento
La funzionalità di diagnostica dell'infrastruttura WCF registra i messaggi che passano attraverso i livelli del modello di trasporto e di servizio e le attività e gli eventi associati a questi messaggi. Questa funzionalità è disattivata per impostazione predefinita. È abilitato usando il file di configurazione dell'applicazione e il comportamento di traccia può essere modificato usando il provider WMI WCF in fase di esecuzione. Se abilitata, l'infrastruttura di traccia genera una traccia di diagnostica che contiene messaggi, attività ed eventi di elaborazione per i listener configurati. Il formato e il percorso dell'output sono determinati dalle scelte di configurazione del listener dell'amministratore, ma in genere è un file in formato XML. L'amministratore è responsabile dell'impostazione dell'elenco di controllo di accesso (ACL) nei file di traccia. In particolare, quando è ospitato da Windows Activation System (WAS), l'amministratore deve assicurarsi che i file non vengano gestiti dalla directory radice virtuale pubblica, se non lo si desidera.
Esistono due tipi di traccia: registrazione messaggi e traccia diagnostica del modello di servizio, descritta nella sezione seguente. Ogni tipo è configurato attraverso la sua sorgente di trace: MessageLogging e System.ServiceModel. Entrambe queste origini di traccia di registrazione acquisiscono i dati locali dell'applicazione.
Registrazione messaggi
L'origine di traccia di registrazione dei messaggi (MessageLogging) consente a un amministratore di registrare i messaggi che passano attraverso il sistema. Tramite la configurazione, l'utente può decidere se registrare interi messaggi o solo le intestazioni dei messaggi, se registrare i messaggi ai livelli del modello di trasporto e/o di servizio, e se includere messaggi malformati. Inoltre, l'utente può configurare il filtro per limitare i messaggi registrati.
Per impostazione predefinita, la registrazione dei messaggi è disabilitata. L'amministratore del computer locale può impedire all'amministratore a livello di applicazione di attivare la registrazione dei messaggi.
Registrazione dei messaggi crittografata e decrittografata
I messaggi vengono registrati, crittografati o decrittografati, come descritto nei termini seguenti.
La registrazione del trasporto registra i messaggi ricevuti e inviati a livello di trasporto. Questi messaggi contengono tutte le intestazioni e possono essere crittografati prima di essere inviati attraverso la rete e quando vengono ricevuti.
Se i messaggi vengono crittografati prima di essere inviati in rete e quando vengono ricevuti, vengono registrati anche crittografati. Un'eccezione è quando viene usato un protocollo di sicurezza (https): vengono quindi registrati decrittografati prima di essere inviati e dopo essere stati ricevuti anche se sono crittografati in rete.
Registrazione dei servizi Registra i messaggi ricevuti o inviati a livello di modello di servizio, dopo l'elaborazione dell'intestazione del canale, subito prima e dopo aver immesso il codice utente.
I messaggi registrati a questo livello vengono decrittografati anche se sono stati protetti e crittografati in rete.
La registrazione dei messaggi in formato non valido registra i messaggi che l'infrastruttura WCF non è in grado di comprendere o elaborare.
I messaggi vengono registrati as-is, ovvero crittografati o meno
Quando i messaggi vengono registrati in formato decrittografato o non crittografato, per impostazione predefinita WCF rimuove le chiavi di sicurezza e potenzialmente le informazioni personali dai messaggi prima di registrarli. Le sezioni successive descrivono quali informazioni vengono rimosse e quando. L'amministratore del computer e il deployer dell'applicazione devono eseguire determinate azioni di configurazione per modificare il comportamento predefinito in modo da registrare le chiavi e potenzialmente le informazioni personali.
Informazioni rimosse dalle intestazioni dei messaggi durante la registrazione di messaggi decrittografati/non crittografati
Quando i messaggi vengono registrati in formato decrittografato o non crittografato, le chiavi di sicurezza e le informazioni potenzialmente personali vengono rimosse per impostazione predefinita dalle intestazioni dei messaggi e dai corpi dei messaggi prima che vengano registrati. L'elenco seguente illustra quali chiavi e informazioni potenzialmente personali vengono considerate da WCF.
Chiavi che sono state rimosse
Per
xmlns:wst="http://schemas.xmlsoap.org/ws/2004/04/trust"
exmlns:wst="http://schemas.xmlsoap.org/ws/2005/02/trust"
wst:BinarySecret
wst:Entropy
Per
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.1.xsd"
exmlns:wsse="http://docs.oasis-open.org/wss/2005/xx/oasis-2005xx-wss-wssecurity-secext-1.1.xsd"
wsse:Password
wsse:Nonce
Potenzialmente informazioni personali rimosse:
Per
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.1.xsd"
exmlns:wsse="http://docs.oasis-open.org/wss/2005/xx/oasis-2005xx-wss-wssecurity-secext-1.1.xsd"
wsse:Username
wsse:BinarySecurityToken
Per
xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion"
gli elementi seguenti inbold
vengono rimossi:
<Assertion MajorVersion="1" MinorVersion="1" AssertionId="[ID]" Issuer="[string]" IssueInstant="[dateTime]"
<Condizioni NotBefore="[dateTime]" NotOnOrAfter="[dateTime]"><AudienceRestrictionCondition><Audience>[uri]</Audience>+ </AudienceRestrictionCondition>* <DoNotCacheCondition />* <— tipo base astratto <Condition />*
</Condizioni>?
<Consiglio><RiferimentoIDAssertione>[ID]</RiferimentoIDAssertione>* <Assertione>[assertion]</Assertione>* [qualsiasi]* </Consiglio>?
<-- Tipi di base <astratti Istruzione />* <DichiarazioneSoggetto><Soggetto>
<NameIdentifier
NameQualifier="[string]"?
Format="[uri]"?
>
[string]
</NameIdentifier>?
<SubjectConfirmation><ConfirmationMethod>[anyUri]</ConfirmationMethod>+ <SubjectConfirmationData>[any]</SubjectConfirmationData>?
<ds:KeyInfo>...</ds:KeyInfo>?
</SubjectConfirmation>?
</Subject></SubjectStatement>*
<AuthenticationStatement AuthenticationMethod="[uri]" AuthenticationInstant="[dateTime]"
[Oggetto]
<SubjectLocality
IPAddress="[string]"?
DNSAddress="[string]"?
/>?
<AuthorityBinding AuthorityKind="[QName]" Location="[uri]" Binding="[uri]" />* </AuthenticationStatement* >AttributeStatement<> [Subject] <Attribute AttributeName="[string]" AttributeNamespace="[uri]"
<AttributeValue>[any]</AttributeValue>+
</Attribute>+ </AttributeStatement>* <AuthorizationDecisionStatement Resource="[uri]" Decision="[Permesso|Negato|Indeterminato]"
[Oggetto] <Action Namespace="[uri]">[string]</Action>+ <Evidence><AssertionIDReference>[ID]</AssertionIDReference>+ <Assertion>[assertion]</Assertion>+ </Evidence>? </DichiarazioneDiDecisioneDiAutorizzazione>* </Asserzione>
Informazioni rimosse dai corpi dei messaggi durante la registrazione di messaggi decrittografati/non crittografati
Come descritto in precedenza, WCF rimuove le chiavi e le informazioni potenzialmente personali dalle intestazioni dei messaggi registrati per i messaggi decrittografati e non crittografati. WCF rimuove inoltre le chiavi e le informazioni potenzialmente personali dalle parti dei messaggi riguardanti gli elementi del corpo e le azioni nell'elenco seguente, che partecipano ai messaggi di sicurezza nello scambio di chiavi.
Per i namespace seguenti:
xmlns:wst="http://schemas.xmlsoap.org/ws/2004/04/trust"
e xmlns:wst="http://schemas.xmlsoap.org/ws/2005/02/trust"
(ad esempio, se non è disponibile alcuna azione)
Le informazioni vengono rimosse per questi elementi del messaggio, che comportano lo scambio di chiavi.
wst:RequestSecurityToken
wst:RequestSecurityTokenResponse
wst:RequestSecurityTokenResponseCollection
Le informazioni vengono rimosse anche per ognuna delle azioni seguenti:
http://schemas.xmlsoap.org/ws/2005/02/trust/RST/Issue
http://schemas.xmlsoap.org/ws/2005/02/trust/RSTR/Issue
http://schemas.xmlsoap.org/ws/2005/02/trust/RST/Renew
http://schemas.xmlsoap.org/ws/2005/02/trust/RSTR/Renew
http://schemas.xmlsoap.org/ws/2005/02/trust/RST/Cancel
http://schemas.xmlsoap.org/ws/2005/02/trust/RSTR/Cancel
http://schemas.xmlsoap.org/ws/2005/02/trust/RST/Validate
http://schemas.xmlsoap.org/ws/2005/02/trust/RSTR/Validate
http://schemas.xmlsoap.org/ws/2005/02/trust/RST/SCT
http://schemas.xmlsoap.org/ws/2005/02/trust/RSTR/SCT
http://schemas.xmlsoap.org/ws/2005/02/trust/RST/SCT/Amend
http://schemas.xmlsoap.org/ws/2005/02/trust/RSTR/SCT/Amend
http://schemas.xmlsoap.org/ws/2005/02/trust/RST/SCT/Renew
http://schemas.xmlsoap.org/ws/2005/02/trust/RSTR/SCT/Renew
http://schemas.xmlsoap.org/ws/2005/02/trust/RST/SCT/Cancel
http://schemas.xmlsoap.org/ws/2005/02/trust/RSTR/SCT/Cancel
http://schemas.xmlsoap.org/ws/2004/04/security/trust/RST/SCT
http://schemas.xmlsoap.org/ws/2004/04/security/trust/RSTR/SCT
http://schemas.xmlsoap.org/ws/2004/04/security/trust/RST/SCT-Amend
http://schemas.xmlsoap.org/ws/2004/04/security/trust/RSTR/SCT-Amend
Nessuna informazione viene rimossa dalle intestazioni specifiche dell'applicazione e dai dati del contenuto.
WCF non tiene traccia delle informazioni personali nelle intestazioni specifiche dell'applicazione (ad esempio, stringhe di query) o dati del corpo (ad esempio, numero di carta di credito).
Quando la registrazione dei messaggi è attivata, le informazioni personali nelle intestazioni e nelle informazioni sul corpo specifiche dell'applicazione possono essere visibili nei log. Anche in questo caso, il deployer dell'applicazione è responsabile dell'impostazione degli elenchi di controllo di accesso nei file di configurazione e di log. Possono anche disattivare la registrazione se non vogliono che queste informazioni siano visibili o filtrano queste informazioni dai file di log dopo la registrazione.
Traccia del modello di servizio
L'origine di traccia del modello di servizio (System.ServiceModel) consente di tracciare attività ed eventi correlati all'elaborazione dei messaggi. Questa funzionalità usa la funzionalità di diagnostica di .NET Framework da System.Diagnostics. Come per la MessageLogging proprietà , il percorso e il relativo ACL sono configurabili dall'utente usando i file di configurazione dell'applicazione .NET Framework. Come per la registrazione dei messaggi, il percorso del file viene sempre configurato quando l'amministratore abilita la traccia; pertanto, l'amministratore controlla l'ACL.
Le tracce contengono intestazioni di messaggio quando un messaggio è nello scope. Si applicano le stesse regole per nascondere le informazioni potenzialmente personali nelle intestazioni dei messaggi nella sezione precedente: le informazioni personali identificate in precedenza vengono rimosse per impostazione predefinita dalle intestazioni nelle tracce. Sia l'amministratore del computer che il deployer dell'applicazione devono modificare la configurazione per registrare informazioni potenzialmente personali. Tuttavia, le informazioni personali contenute nelle intestazioni specifiche dell'applicazione vengono registrate nelle tracce. Il deployer dell'applicazione è responsabile dell'impostazione degli elenchi di controllo di accesso nei file di configurazione e di traccia. Possono anche disattivare la traccia per nascondere queste informazioni o filtrare queste informazioni dai file di traccia dopo la registrazione.
Come parte di ServiceModel Tracing, gli ID univoci (chiamati ID attività e di solito rappresentati da un GUID) collegano diverse attività mentre un messaggio attraversa le varie parti dell'infrastruttura.
Listener di traccia personalizzati
Per la registrazione dei messaggi e la traccia, è possibile configurare un listener di traccia personalizzato, che può inviare tracce e messaggi in transito, ad esempio a un database remoto. Il deployer dell'applicazione è responsabile della configurazione di listener personalizzati o dell'abilitazione di tale operazione da parte degli utenti. Sono inoltre responsabili di eventuali informazioni personali esposte nella posizione remota e di applicare correttamente gli elenchi di controllo di accesso a questa posizione.
Altre funzionalità per i professionisti IT
WCF dispone di un provider WMI che espone le informazioni di configurazione dell'infrastruttura WCF tramite WMI (fornito con Windows). Per impostazione predefinita, l'interfaccia WMI è disponibile per gli amministratori.
La configurazione WCF usa il meccanismo di configurazione di .NET Framework. I file di configurazione vengono archiviati nel computer. Lo sviluppatore dell'applicazione e l'amministratore creano i file di configurazione e L'ACL per ognuno dei requisiti dell'applicazione. Un file di configurazione può contenere indirizzi endpoint e collegamenti ai certificati nell'archivio certificati. I certificati possono essere usati per fornire i dati dell'applicazione per configurare varie proprietà delle funzionalità usate dall'applicazione.
WCF usa anche la funzionalità di dump del processo del framework .NET chiamando il metodo FailFast.
Strumenti per professionisti IT
WCF fornisce anche gli strumenti it professionali seguenti, disponibili in Windows SDK.
SvcTraceViewer.exe
Il visualizzatore visualizza i file di traccia WCF. Il visualizzatore mostra le informazioni contenute nelle tracce.
SvcConfigEditor.exe
L'editor consente all'utente di creare e modificare i file di configurazione WCF. L'editor mostra le informazioni contenute nei file di configurazione. La stessa attività può essere eseguita con un editor di testo.
ServiceModel_Reg
Questo strumento consente all'utente di gestire le installazioni di ServiceModel in un computer. Lo strumento visualizza i messaggi di stato in una finestra della console durante l'esecuzione e, nel processo, può visualizzare informazioni sulla configurazione dell'installazione WCF.
WSATConfig.exe e WSATUI.dll
Questi strumenti consentono ai professionisti IT di configurare il supporto di rete WS-AtomicTransaction interoperabile in WCF. Gli strumenti visualizzano e consentono all'utente di modificare i valori delle impostazioni di WS-AtomicTransaction usate più di frequente archiviate nel Registro di sistema.
Caratteristiche trasversali
Le caratteristiche seguenti sono trasversali. Ovvero, possono essere composti con una qualsiasi delle funzionalità precedenti.
Framework del servizio
Le intestazioni possono contenere un ID istanza, ovvero un GUID che associa un messaggio a un'istanza di una classe CLR.
Web Services Description Language (WSDL) contiene una definizione della porta. Ogni porta ha un indirizzo endpoint e un'associazione che rappresenta i servizi usati dall'applicazione. L'esposizione di WSDL può essere disattivata tramite la configurazione. Nessuna informazione viene mantenuta nel computer.