ContextExchangeMechanism Wyliczenie

Definicja

Określa, czy plik cookie HTTP lub nagłówek protokołu SOAP jest mechanizmem używanym do wymiany kontekstu dla konwersacji między klientem a usługą.

public enum class ContextExchangeMechanism
public enum ContextExchangeMechanism
type ContextExchangeMechanism = 
Public Enum ContextExchangeMechanism
Dziedziczenie
ContextExchangeMechanism

Pola

ContextSoapHeader 0

Nagłówek protokołu SOAP jest używany do wymiany kontekstu. Jest to domyślny mechanizm wymiany.

HttpCookie 1

Plik cookie protokołu HTTP jest używany do wymiany kontekstu.

Uwagi

Użyj ContextExchangeMechanism właściwości lub konstruktora, ContextBindingElement(ProtectionLevel, ContextExchangeMechanism) Aby określić wartość ContextExchangeMechanism dla konwersacji między klientem a usługą.

Punkty końcowe usługi, które wymagają obsługi protokołu wymiany dla kontekstu, mogą sprawić, że to wymaganie jest jawne w swoich opublikowanych zasadach. Potwierdzenia zasad reprezentujące wymaganie, aby klient obsługiwał protokół wymiany kontekstu na poziomie protokołu SOAP lub, który wymaga włączenia obsługi plików cookie HTTP, może być opublikowany przez punkt końcowy. Generowanie tych potwierdzeń w zasadach w usłudze jest kontrolowane przez wartość ContextExchangeMechanism właściwości w następujący sposób:

  • W przypadku HttpCookie zostanie wygenerowane następujące potwierdzenie:

    <HttpUseCookie xmlns="http://schemas.xmlsoap.org/soap/http"/>  
    
  • W przypadku ContextSoapHeader zostanie wygenerowane następujące potwierdzenie:

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

Wyliczenie HttpCookie jest implementowane w warstwie transportowej. Ta wartość może być używana w przypadku jednostronnej komunikacji, w której klient wykonuje wstępne żądanie, a kontekst jest udostępniany przez usługę w odpowiedniej odpowiedzi. Wszystkie kolejne komunikaty między usługą i klientem przez okres istnienia tej konwersacji zawierają kontekst. W przypadku punktów końcowych usługi korzystających z protokołu HTTP i klientów, którzy akceptują Zezwalanie na korzystanie z plików cookie HTTP, Wyliczenie HttpCookie może być wykorzystane do wymiany kontekstu aplikacji. Gdy pliki cookie protokołu HTTP są używane do propagowania kontekstu, powinny być chronione przy użyciu zabezpieczeń transportu. Tego mechanizmu nie można używać w transportach innych niż HTTP.

Wyliczenie ContextSoapHeader zapewnia alternatywę, która jest zaimplementowana w kanale niestandardowego kontekstu i która może być używana z transportami innych niż HTTP i innym wzorcem wymiany komunikatów, takimi jak żądanie-odpowiedź, i sesją dupleksową. Ten kontekst protokołu wymiany zapewnia oparty na protokole SOAP odpowiednik funkcji oferowanej przez pliki cookie protokołu HTTP w warstwie transportowej. Wprowadzono nowy wsc:Context nagłówek protokołu SOAP do reprezentowania informacji kontekstowych. wsc:ContextNagłówek musi być chroniony przed modyfikacją podczas przesyłania z tego samego powodu, ponieważ nagłówki WS-Addressing muszą być chronione: po nadejściu te nagłówki są używane do wysyłania komunikatów do prawidłowych wystąpień przepływu pracy. W wsc:Context związku z tym nagłówek musi być podpisany cyfrowo na poziomie protokołu SOAP lub transportu, gdy powiązanie oferuje funkcję ochrony komunikatów.

Warstwa kanału komunikuje kontekst z i z warstwy aplikacji przy użyciu ContextMessageProperty .

Dotyczy