ContextExchangeMechanism Výčet

Definice

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

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

Pole

Name Hodnota Description
ContextSoapHeader 0

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

HttpCookie 1

K výměně kontextu se používá soubor cookie HTTP.

Poznámky

ContextExchangeMechanism Pomocí vlastnosti nebo konstruktoru ContextBindingElement(ProtectionLevel, ContextExchangeMechanism) určete hodnotu ContextExchangeMechanism konverzace 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 v publikovaných zásadách. Kontrolní výrazy zásad, které představují požadavek, aby klient podporoval protokol výměny kontextu na úrovni SOAP nebo které vyžadují povolení podpory souborů cookie HTTP, může koncový bod publikovat. Generování těchto kontrolních výrazů do zásad služby je řízeno 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 se implementuje v přenosové vrstvě. To lze použít v případě jednoduché komunikace, kde klient vytvoří 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 života této konverzace obsahují kontext. Pro koncové body služby, které používají přenos HTTP a klienty, které souhlasí s povolením použití souborů cookie HTTP, lze k výměně kontextu aplikace využít výčet HttpCookie. Pokud se k šíření kontextu používají soubory cookie HTTP, měly by být chráněny pomocí zabezpečení přenosu. Tento mechanismus nelze použít s přenosy mimo protokol HTTP.

Výčet ContextSoapHeader poskytuje alternativu, která je implementována ve vlastním kontextovém kanálu a lze ji použít s přenosy mimo HTTP a jiným vzorem 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 nabízené soubory cookie HTTP v přenosové vrstvě. Zavádí novou wsc:Context hlavičku SOAP, která představuje kontextové informace. Hlavička wsc:Context musí být chráněna před úpravami během přenosu z stejného důvodu jako hlavičky WS-Addressing musí být chráněna: při příjezdu se tyto hlavičky používají k odeslání zprávy do správných instancí pracovního postupu. Hlavička wsc:Context proto musí být digitálně podepsaná na úrovni protokolu SOAP nebo přenosu, pokud vazba nabízí funkci ochrany zpráv.

Vrstva kanálu komunikuje s aplikační vrstvou a z aplikační vrstvy pomocí ContextMessageProperty.

Platí pro