Sdílet prostřednictvím


ContextExchangeMechanism Výčet

Definice

Určuje, jestli je mechanismus, který se používá k výměně kontextu pro konverzaci mezi klientem a službou, soubor cookie HTTP nebo hlavička SOAP.

public enum class ContextExchangeMechanism
public enum ContextExchangeMechanism
type ContextExchangeMechanism = 
Public Enum ContextExchangeMechanism
Dědičnost
ContextExchangeMechanism

Pole

Name Hodnota Description
ContextSoapHeader 0

Hlavička SOAP se používá k výměně kontextu. Toto je výchozí mechanismus výměny.

HttpCookie 1

Soubor cookie HTTP se používá k výměně kontextu.

Poznámky

ContextExchangeMechanism Pomocí vlastnosti nebo konstruktoru ContextBindingElement(ProtectionLevel, ContextExchangeMechanism) určete hodnotu pro konverzaci ContextExchangeMechanism mezi klientem a službou.

Koncové body služby, které vyžadují podporu protokolu výměny kontextu, můžou tento požadavek explicitně vyjádřit ve svých publikovaných zásadách. Kontrolní výrazy zásad, které představují požadavek na to, aby klient podporoval protokol výměny kontextu na úrovni SOAP nebo které vyžadují povolení podpory souborů cookie protokolu HTTP, mohou být publikovány koncovým bodem. Generování těchto kontrolních výrazů do zásad ve službě se řídí hodnotou ContextExchangeMechanism vlastnosti následujícím způsobem:

  • Pro HttpCookie se vygeneruje následující kontrolní výraz:

    <HttpUseCookie xmlns="http://schemas.xmlsoap.org/soap/http"/>  
    
  • Pro ContextSoapHeader se vygeneruje následující kontrolní výraz:

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

Výčet HttpCookie je implementován na přenosové vrstvě. To lze použít v případě jednoduché komunikace, kdy klient odešle počáteční požadavek a kontext je poskytován službou na odpovídající odpovědi. Všechny následné zprávy mezi službou a klientem po celou dobu trvání této konverzace obsahují kontext. Pro koncové body služby, které používají přenos HTTP, a klienty, kteří souhlasí s používáním souborů cookie protokolu HTTP, lze výčet HttpCookie použít k výměně kontextu aplikace. Pokud se k šíření kontextu používají soubory cookie HTTP, měly by být chráněné pomocí zabezpečení přenosu. Tento mechanismus nelze použít u přenosů jiných než HTTP.

ContextSoapHeader výčtu poskytuje alternativu, která je implementována ve vlastním kontextovém kanálu a kterou lze použít s přenosy bez HTTP a jiného vzoru výměny zpráv, jako je například požadavek-odpověď a duplexní relace. Tento protokol výměny kontextu poskytuje ekvivalent funkce založené na protokolu SOAP, kterou nabízejí soubory cookie HTTP v přenosové vrstvě. Zavádí novou wsc:Context hlavičku SOAP, která představuje informace o kontextu. Hlavička wsc:Context musí být během přenosu chráněna před úpravami ze stejného důvodu jako WS-Addressing musí být chráněna: při přijetí se tyto hlavičky použijí k odeslání zprávy do správných instancí pracovního postupu. Pokud wsc:Context vazba nabízí možnost ochrany zpráv, musí být proto hlavička digitálně podepsaná na úrovni PROTOKOLU SOAP nebo přenosu.

Vrstva kanálu komunikuje kontext do a z aplikační vrstvy pomocí ContextMessageProperty.

Platí pro