Condividi tramite


Glossario di Windows Communication Foundation per .NET Framework 4.5

I termini seguenti sono definiti per la documentazione di Windows Communication Foundation.

Terms

Termine Definition
address Specifica il percorso in cui vengono ricevuti i messaggi. Viene specificato come URI (Uniform Resource Identifier). La parte dello schema URI denomina il meccanismo di trasporto da usare per raggiungere l'indirizzo, ad esempio HTTP e TCP. La parte gerarchica dell'URI contiene una posizione univoca il cui formato dipende dal meccanismo di trasporto.
endpoint dell'applicazione Endpoint esposto dall'applicazione e che corrisponde a un contratto di servizio implementato dall'applicazione.
comportamento Un comportamento è un componente che controlla vari aspetti di runtime di un servizio, un endpoint, una particolare operazione o un client. I comportamenti vengono raggruppati in base all'ambito: i comportamenti comuni influiscono su tutti gli endpoint a livello globale, i comportamenti del servizio influiscono solo sugli aspetti correlati al servizio, i comportamenti degli endpoint influiscono solo sulle proprietà correlate all'endpoint e sui comportamenti a livello di operazione influiscono su operazioni specifiche.
binding Definisce i protocolli di comunicazione usati per comunicare con i servizi WCF. Viene costruito di un set di componenti denominati elementi di associazione che si sovrapporno uno all'altro per creare l'infrastruttura di comunicazione. Vedere endpoint.
canale Implementazione concreta di un elemento di associazione. L'associazione rappresenta la configurazione e il canale è l'implementazione associata a tale configurazione. È pertanto presente un canale associato a ogni elemento di associazione. I canali si sovrapponino tra loro per creare l'implementazione concreta dell'associazione: lo stack di canali.
Sicurezza basata sulle attestazioni Consente l'accesso autorizzato alle risorse protette in base alle attestazioni.
applicazione client Un'applicazione client è un programma che scambia messaggi con uno o più endpoint. L'applicazione client inizia creando un'istanza di un client WCF e chiamando i metodi del client WCF. È importante notare che una singola applicazione può essere sia un client che un servizio.
codifica Consente allo sviluppatore di mantenere un controllo rigoroso su tutti i componenti del servizio o del client e tutte le impostazioni eseguite tramite la configurazione possono essere controllate e, se necessario, sottoposte a override dal codice. Il controllo di un'applicazione può essere eseguito tramite la codifica, tramite la configurazione o tramite una combinazione di entrambi.
configuration La configurazione ha il vantaggio di consentire a un altro utente diverso dallo sviluppatore (ad esempio, un amministratore di rete) di impostare i parametri del client e del servizio dopo la scrittura del codice e senza dover ricompilare. La configurazione consente non solo di impostare valori come gli indirizzi endpoint, ma consente anche un ulteriore controllo consentendo di aggiungere endpoint, associazioni e comportamenti. Il controllo di un'applicazione può essere eseguito tramite la configurazione, tramite codifica o tramite una combinazione di entrambi.
contratto Un contratto è una specifica di supporto per il particolare tipo di contratto che si tratta. Un contratto di servizio, ad esempio, è una specifica per un gruppo di operazioni. In WCF i contratti hanno una gerarchia con mirroring negli oggetti description che si trovano nello spazio dei nomi System.ServiceModel.Description. Un contratto di servizio è l'ambito di contratto più grande in WCF. Ogni operazione del servizio in un contratto di servizio ha un contratto di operazione, che specifica i messaggi, inclusi i messaggi di errore, l'operazione può scambiare e in quale direzione. Ogni messaggio in un'operazione ha un contratto di messaggio, una specifica per la struttura della busta del messaggio SOAP e ogni contratto di messaggio ha un contratto dati, che specifica le strutture di dati contenute nei messaggi.
contratto dati I tipi di dati usati da un servizio devono essere descritti nei metadati per consentire ad altri utenti di interagire con il servizio. Le descrizioni dei tipi di dati sono note come contratto dati e i tipi possono essere usati in qualsiasi parte di un messaggio, ad esempio come parametri o tipi restituiti. Se il servizio usa solo tipi semplici, non è necessario usare in modo esplicito i contratti dati.
applicazione dichiarativa Applicazione descritta sufficientemente da essere creata in fase di esecuzione senza eseguire istruzioni imperative.
endpoint È costituito da un indirizzo, un'associazione e un contratto utilizzato per la comunicazione con un servizio WCF.
indirizzo endpoint Consente di creare indirizzi endpoint univoci per ogni endpoint in un servizio o in determinate condizioni condividere un indirizzo tra endpoint.
contratto di errore Un contratto di errore può essere associato a un'operazione del servizio per indicare gli errori che possono essere restituiti al chiamante. A un'operazione possono essere associati zero o più errori. Questi errori sono errori SOAP modellati come eccezioni nel modello di programmazione. L'eccezione viene convertita in un errore SOAP che può quindi essere inviato al client.
ospitare Un servizio deve essere ospitato in un processo. Un host è un'applicazione che controlla la durata del servizio. I servizi possono essere self-hosted o gestiti da un processo di hosting esistente.
processo di hosting Un processo di hosting è un'applicazione progettata per ospitare i servizi. Tra cui Internet Information Services (IIS), Servizi attivazione Windows (WAS) e Servizi Windows. In questi scenari ospitati, l'host controlla la durata del servizio. Ad esempio, usando IIS è possibile configurare una directory virtuale contenente l'assembly del servizio e il file di configurazione. Quando viene ricevuto un messaggio, IIS avvia il servizio e ne controlla la durata.
avvio dell'operazione Operazione chiamata come prima operazione di una nuova sessione. Le operazioni non di avvio possono essere chiamate solo dopo che è stata chiamata almeno un'operazione di avvio.
modello di creazione di istanze Un servizio ha un modello di istanze. Esistono tre modelli di istanze: "single", in cui un singolo oggetto CLR esegue il servizio di tutti i client; " per chiamata", in cui viene creato un nuovo oggetto CLR per gestire ogni chiamata client; e "per sessione", in cui viene creato un set di oggetti CLR, uno per ogni sessione separata. La scelta di un modello di istanze dipende dai requisiti dell'applicazione e dal modello di utilizzo previsto del servizio.
message Un messaggio è un'unità autonoma di dati che può essere costituita da diverse parti, tra cui un corpo e intestazioni.
contratto di messaggio Un contratto di messaggio descrive il formato di un messaggio. Ad esempio, dichiara se gli elementi del messaggio devono essere inseriti in intestazioni rispetto al corpo, quale livello di sicurezza deve essere applicato agli elementi del messaggio e così via.
modalità di sicurezza dei messaggi La modalità di sicurezza dei messaggi specifica che la sicurezza viene fornita implementando una o più specifiche di sicurezza. Ogni messaggio contiene i meccanismi necessari per garantire la sicurezza durante il transito e consentire ai ricevitori di rilevare manomissioni e decrittografare i messaggi. In questo senso, la sicurezza viene incapsulata all'interno di ogni messaggio, fornendo sicurezza end-to-end tra più hop. Poiché le informazioni di sicurezza diventano parte del messaggio, è anche possibile includere più tipi di credenziali con il messaggio (dette attestazioni). Questo approccio ha anche il vantaggio di consentire al messaggio di viaggiare in modo sicuro su qualsiasi trasporto, inclusi più trasporti tra l'origine e la destinazione. Lo svantaggio di questo approccio è la complessità dei meccanismi crittografici impiegati, con implicazioni in termini di prestazioni.
metadata I metadati di un servizio descrivono le caratteristiche del servizio che un'entità esterna deve comprendere per comunicare con il servizio. I metadati possono essere utilizzati dallo strumento utilità metadati ServiceModel (Svcutil.exe) per generare un client WCF e la configurazione associata che un'applicazione client può usare per interagire con il servizio. I metadati esposti dal servizio includono documenti XML Schema, che definiscono il contratto dati del servizio e i documenti WSDL, che descrivono i metodi del servizio. Se abilitata, i metadati per il servizio vengono generati automaticamente da WCF controllando il servizio e i relativi endpoint. Per pubblicare metadati da un servizio, è necessario abilitare in modo esplicito il comportamento dei metadati.
contratto dell'operazione Un contratto di operazione definisce i parametri e il tipo restituito di un'operazione. Quando si crea un'interfaccia che definisce il contratto di servizio, si firma un contratto di operazione applicando l'attributo T:System.ServiceModel.OperationContractAttribute a ogni definizione di metodo che fa parte del contratto. Le operazioni possono essere modellate come accettare un singolo messaggio e restituire un singolo messaggio oppure come accettare un set di tipi e restituire un tipo. In quest'ultimo caso, il sistema determina il formato per i messaggi scambiati per tale operazione.
projection Rappresentazione dei dati in transito. Ad esempio, una proiezione SOAP invia messaggi come buste SOAP e una proiezione Web invia messaggi in formato JSON.
sicurezza La sicurezza in WCF include la riservatezza (crittografia dei messaggi per evitare intercettazioni), l'integrità (il mezzo per il rilevamento della manomissione del messaggio), l'autenticazione (il mezzo per la convalida di server e client) e l'autorizzazione (il controllo dell'accesso alle risorse). Queste funzioni vengono fornite usando meccanismi di sicurezza esistenti, ad esempio TLS su HTTP (noto anche come HTTPS) o implementando una o più delle varie specifiche di sicurezza WS-*.
servizio self-hosted Un servizio self-hosted è uno che viene eseguito all'interno di un'applicazione di processo creata dallo sviluppatore. Lo sviluppatore ne controlla la durata, imposta le proprietà del servizio, apre il servizio (che lo imposta in modalità di ascolto) e chiude il servizio.
servizio Programma o processo che espone uno o più endpoint, con ogni endpoint che espone una o più operazioni.
contratto di servizio Il contratto di servizio collega più operazioni correlate in una singola unità funzionale. Il contratto può definire impostazioni a livello di servizio, ad esempio lo spazio dei nomi del servizio, un contratto di callback corrispondente e altre impostazioni di questo tipo. Nella maggior parte dei casi, il contratto viene definito creando un'interfaccia nel linguaggio di programmazione preferito e applicando l'attributo T:System.ServiceModel.ServiceContractAttribute all'interfaccia. Risultati effettivi del codice del servizio implementando l'interfaccia .
operazione del servizio Un'operazione del servizio è una procedura definita nel codice di un servizio che implementa la funzionalità per un'operazione. Questa operazione viene esposta ai client come metodi in un client WCF. Il metodo può restituire un valore e può accettare un numero facoltativo di argomenti o non accettare argomenti e non restituire alcuna risposta. Ad esempio, un'operazione che funziona come "Hello" può essere usata come notifica della presenza di un client e per avviare una serie di operazioni.
associazioni fornite dal sistema WCF include diverse associazioni fornite dal sistema. Si tratta di raccolte di elementi di associazione ottimizzati per scenari specifici. Ad esempio, T:System.ServiceModel.WSHttpBinding è progettato per l'interoperabilità con i servizi che implementano varie specifiche WS-*. Queste associazioni consentono di risparmiare tempo presentando solo le opzioni che possono essere applicate correttamente allo scenario specifico. Se una di queste associazioni non soddisfa i requisiti, è possibile creare un'associazione personalizzata.
operazione di terminazione Operazione chiamata come ultimo messaggio in una sessione esistente. Nel caso predefinito, WCF ricicla l'oggetto servizio e il relativo contesto dopo la sessione con cui è stato associato il servizio viene chiuso.
modalità di sicurezza del trasporto La sicurezza può essere fornita da una delle tre modalità: modalità di trasporto, modalità di sicurezza dei messaggi e trasporto con modalità credenziali dei messaggi. La modalità di sicurezza del trasporto specifica che la riservatezza, l'integrità e l'autenticazione vengono fornite dai meccanismi del livello di trasporto (ad esempio HTTPS). Quando si usa un trasporto come HTTPS, questa modalità ha il vantaggio di essere efficiente nelle prestazioni e ben compresa a causa della sua prevalenza su Internet. Lo svantaggio è che questo tipo di sicurezza viene applicato separatamente a ogni hop nel percorso di comunicazione, rendendo la comunicazione vulnerabile a un attacco "uomo al centro".
trasporto con modalità di sicurezza delle credenziali dei messaggi Questa modalità usa il livello di trasporto per fornire riservatezza, autenticazione e integrità dei messaggi, mentre ognuno dei messaggi può contenere più credenziali (attestazioni) richieste dai ricevitori del messaggio.
convertitore di tipi Un tipo CLR può essere associato a uno o più tipi derivati System.ComponentModel.TypeConverter che consentono la conversione di istanze del tipo CLR in e da istanze di altri tipi. Un convertitore di tipi è associato a un tipo CLR usando l'attributo System.ComponentModel.TypeConverterAttribute. Un TypeConverterAttribute può essere specificato direttamente nel tipo CLR o in una proprietà. Un convertitore di tipi specificato in una proprietà ha sempre la precedenza su un convertitore di tipi specificato nel tipo CLR della proprietà.
Client WCF Un client WCF è un costrutto client-applicazione che espone le operazioni del servizio come metodi (nel linguaggio di programmazione .NET Framework preferito, ad esempio Visual Basic o Visual C#). Qualsiasi applicazione può ospitare un client WCF, inclusa un'applicazione che ospita un servizio. Pertanto, è possibile creare un servizio che includa i client WCF di altri servizi. Un client WCF può essere generato automaticamente usando lo strumento Utilità metadati ServiceModel (Svcutil.exe) e puntandolo a un servizio in esecuzione che pubblica i metadati.
servizi flusso di lavoro Un servizio flusso di lavoro è un servizio WCF implementato come flusso di lavoro. Il flusso di lavoro contiene attività di messaggistica che inviano e/o ricevono messaggi WCF.
WS-* Sintassi abbreviata per il set crescente di specifiche WS (Web Service), ad esempio WS-Security, WS-ReliableMessaging e così via, implementate in WCF.
XAML Linguaggio di markup dell'applicazione eXtensible
Schema XAML Schema di markup usato per definire tipi personalizzati in XAML.