ContextExchangeMechanism Výčet

Definice

Určuje, zda je soubor cookie protokolu HTTP nebo hlavička protokolu SOAP mechanismem používaným pro výměnu kontextu konverzace mezi klientem a službou.

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

Pole

ContextSoapHeader 0

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

HttpCookie 1

Soubor cookie protokolu HTTP se používá pro výměnu kontextu.

Poznámky

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

Koncové body služby, které vyžadují podporu pro protokol Exchange kontextu, můžou tento požadavek ve svých publikovaných zásadách výslovně udělat. Kontrolní výrazy zásad, které reprezentují požadavek, aby mohl klient podporovat kontext Exchange protokolu na úrovni protokolu SOAP, nebo který vyžaduje, aby bylo možné publikovat podporu souborů cookie HTTP pomocí koncového bodu. 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 je implementován na transportní vrstvě. Tato možnost se dá použít v případě simplexní komunikace, kde klient vytvoří počáteční požadavek a kontext je poskytovaný službou na příslušné odpovědi. Všechny následné zprávy mezi službou a klientem po dobu života této konverzace obsahují kontext. U koncových bodů služby, které používají přenosy protokolu HTTP a klienty, které souhlasí s povolením použití souborů cookie protokolu HTTP, lze výčet HttpCookie využít k výměně kontextu aplikace. Pokud jsou soubory cookie protokolu HTTP použity ke rozšiřování kontextu, měly by být chráněny pomocí zabezpečení přenosu. Tento mechanismus nelze použít s přenosy bez protokolu HTTP.

Výčet ContextSoapHeader poskytuje alternativu, která je implementována ve vlastním kontextu kanálu a kterou lze použít s přenosem bez protokolu HTTP a dalšími vzorci výměny zpráv, jako je například požadavek-odpověď, a duplexní relace. Tento protokol výměny kontextu poskytuje ekvivalent funkce nabízený soubory cookie protokolu HTTP na transportní vrstvě na základě protokolu SOAP. Zavádí novou wsc:Context hlavičku protokolu SOAP, která představuje kontextové informace. wsc:ContextZáhlaví musí být během přenosu chráněno během přenosu ze změny, protože WS-Addressing hlavičky musí být chráněny: po doručení se tato záhlaví použijí k odeslání zprávy do správných instancí pracovního postupu. wsc:ContextZáhlaví je proto nutné digitálně podepsat buď na úrovni protokolu SOAP, nebo na úrovni přenosu, pokud vazba nabízí možnost ochrany zpráv.

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

Platí pro