ContextExchangeMechanism ContextExchangeMechanism ContextExchangeMechanism ContextExchangeMechanism Enum

Definizione

Specifica se un cookie HTTP o un'intestazione SOAP è il meccanismo utilizzato per lo scambio del contesto per una conversazione tra un client e un servizio.Specifies whether an HTTP cookie or a SOAP header is the mechanism used to exchange context for a conversation between a client and service.

public enum class ContextExchangeMechanism
public enum ContextExchangeMechanism
type ContextExchangeMechanism = 
Public Enum ContextExchangeMechanism
Ereditarietà
ContextExchangeMechanismContextExchangeMechanismContextExchangeMechanismContextExchangeMechanism

Campi

ContextSoapHeader ContextSoapHeader ContextSoapHeader ContextSoapHeader 0

Un'intestazione SOAP viene utilizzata per lo scambio del contesto.A SOAP header is used to exchange context. Questo è il meccanismo di scambio predefinito.This is the default exchange mechanism.

HttpCookie HttpCookie HttpCookie HttpCookie 1

Un cookie HTTP viene utilizzato per lo scambio del contesto.An HTTP cookie is used to exchange context.

Commenti

Utilizzare la proprietà ContextExchangeMechanism o il costruttore ContextBindingElement(ProtectionLevel, ContextExchangeMechanism) per specificare il valore di ContextExchangeMechanism per una conversazione tra un client e un servizio.Use the ContextExchangeMechanism property or the ContextBindingElement(ProtectionLevel, ContextExchangeMechanism) constructor to specify the value of the ContextExchangeMechanism for a conversation between a client and service.

Gli endpoint del servizio che richiedono il supporto per il protocollo di scambio del contesto possono rendere esplicito questo requisito nel criterio pubblicato.Service endpoints that require support for the context exchange protocol can make this requirement explicit in their published policy. Le asserzioni di criteri che rappresentano il requisito che il client supporti il protocollo di scambio del contesto a livello di SOAP o che richiedono l'abilitazione del supporto di cookie HTTP, possono essere pubblicate da un endpoint.Policy assertions that represent the requirement for the client to support the context exchange protocol at the SOAP level or that require the enabling of HTTP cookie support can be published by an endpoint. La generazione di queste asserzioni all'interno dei criteri nel servizio è controllata dal valore della proprietà ContextExchangeMechanism come segue:The generation of these assertions into the policy on the service is controlled by the value of the ContextExchangeMechanism property as follows:

  • Per HttpCookie, viene generata l'asserzione seguente:For HttpCookie, the following assertion is generated:

    <HttpUseCookie xmlns="http://schemas.xmlsoap.org/soap/http"/>  
    
  • Per ContextSoapHeader, viene generata l'asserzione seguente:For ContextSoapHeader, the following assertion is generated:

    <IncludeContext   
    xmlns="http://schemas.microsoft.com/ws/2006/05/context"  
    protectionLevel="Sign" />  
    

L'enumerazione HttpCookie viene implementata a livello di trasporto.The HttpCookie enumeration is implemented at the transport layer. Questa può essere utilizzata nel caso di comunicazione simplex, in cui il client effettua una richiesta iniziale e il contesto viene fornito dal servizio sulla risposta corrispondente.This can be used in the case of simplex communication, where the client makes an initial request and the context is provided by the service on the corresponding reply. Tutti i messaggi successivi tra il servizio e client per la durata di quella conversazione contengono il contesto.All subsequent messages between the service and client for the lifetime of that conversation contain the context. Per gli endpoint di servizio che utilizzano un trasporto HTTP e client che accettano di consentire l'utilizzo di cookie HTTP, l'enumerazione HttpCookie può essere utilizzata per scambiare il contesto dell'applicazione.For service endpoints that use an HTTP transport and clients that agree to allow the use of HTTP cookies, the HttpCookie enumeration can be utilized to exchange the application context. Quando i cookie HTTP sono utilizzati per propagare il contesto, devono essere protetti utilizzando sicurezza del trasporto.When HTTP cookies are used to propagate context, they should be protected using transport security. Questo meccanismo non può essere utilizzato con trasporti diversi da HTTP.This mechanism cannot be used with non-HTTP transports.

L'enumerazione ContextSoapHeader fornisce un'alternativa implementata in un canale del contesto personalizzato che può essere utilizzata con i trasporti non HTTP e con altri modelli di scambio di messaggi, ad esempio Request-Reply e una sessione duplex.The ContextSoapHeader enumeration provides an alternative that is implemented in a custom context channel and that can be used with non-HTTP transports and other message exchange pattern, such as request-reply, and a duplex session. Questo protocollo di scambio del contesto fornisce un equivalente basato su SOAP della funzionalità offerta dai cookie HTTP a livello di trasporto.This context exchange protocol provides a SOAP-based equivalent of the feature offered by HTTP cookies at the transport layer. Introduce una nuova intestazione SOAP wsc:Context per rappresentare le informazioni di contesto.It introduces a new wsc:Context SOAP header to represent the context information. L'intestazione wsc:Context deve essere protetta dalle modifiche mentre è in transito, per la stessa ragione per cui devono essere protette le intestazioni WS-Addressing: all'arrivo queste intestazioni vengono utilizzate per inviare il messaggio alle istanze del flusso di lavoro corrette.The wsc:Context header must be protected from modification while in transit for the same reason as the WS-Addressing headers must be protected: upon arrival, these headers are used to dispatch the message to the correct workflow instances. È pertanto necessario che l'intestazione wsc:Context sia firmata digitalmente a livello SOAP o di trasporto quando l'associazione offre funzionalità di protezione dei messaggi.The wsc:Context header is therefore required to be digitally signed at either SOAP or transport level when the binding offers message protection capability.

Il livello del canale comunica il contesto da e verso il livello dell'applicazione utilizzando ContextMessageProperty.The channel layer communicates the context to and from the application layer using ContextMessageProperty.

Si applica a