Freigeben über


Sicherheitskontext

Sicherheitskontexte ermöglichen die Einrichtung eines Nachrichtensicherheitskontexts gemäß WS-SecureConversation. Dieser Kontext kann dann verwendet werden, um Nachrichten als Alternative zur Einmaligen Sicherheit zu sichern, bei der die Anmeldeinformationen für jede Anforderung übertragen werden. Der etablierte Sicherheitskontext ist eine effizientere Methode zum Sichern von Nachrichten, wenn mehrere Nachrichten ausgetauscht werden.

Sicherheitskontexte erfordern das Vorhandensein von Bootstrap-Sicherheitsanmeldeinformationen, die zum Sichern der im Kontext gesendeten Nachrichten verwendet werden. Dazu können die WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING, WS_XML_TOKEN_MESSAGE_SECURITY_BINDINGund WS_USERNAME_MESSAGE_SECURITY_BINDING Strukturen verwendet werden.

Sicherheitskontexte sind ein Nachrichtensicherheitsfeature und werden mithilfe von Nachrichtensicherheitsbindungen konfiguriert.

Kunde

Auf der Clientseite ist der Sicherheitskontext an einen bestimmten Kanal gebunden. Sie wird mithilfe der WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDINGkonfiguriert. Das Verhalten und die Lebensdauer des Kontexts werden vom Kanal bestimmt. Wenn die erste Nachricht im Kanal gesendet wird, wird der Sicherheitskontext eingerichtet. Danach wird der Kontext proaktiv in einem konfigurierbaren Intervall erneuert. Wenn der Server einen Fehler zurückgibt, der angibt, dass der Kontext eine Verlängerung erfordert, wird der Kontext erneuert, wenn die nächste Nachricht gesendet wird. Wenn sich der Kanal im geöffneten Zustand befindet, wird der Kontext durch eine Abbruchnachricht abgebrochen, wenn der Kanal geschlossen wird.

Server

Auf dem Server wird ein Sicherheitskontext auf die gleiche Weise konfiguriert wie auf dem Client. Sie ist jedoch nicht an einen bestimmten Kanal gebunden. Stattdessen sind alle Kanäle, die für den Listener erstellt wurden, deren WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING festgelegt ist, in der Lage, Nachrichten mit einem der Sicherheitskontexte zu empfangen, die auf Kanälen dieses Listeners eingerichtet wurden.

Wenn eine Nachricht in einem Kanal eingeht, der Sicherheitskontexte unterstützt, kann der von dieser Nachricht verwendete Kontext durch Aufrufen der WsGetMessageProperty- funktion mit der WS_MESSAGE_PROPERTY_SECURITY_CONTEXTabgerufen werden. Der abgerufene Wert kann mit WsRevokeSecurityContext- und WsGetSecurityContextProperty-verwendet werden.

Metadaten

Die WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING_CONSTRAINT Struktur wird verwendet, um die Sicherheitskontextrichtlinie aus Metadaten zu extrahieren. Weitere Informationen finden Sie unter Metadatenimport.

Die folgenden API-Elemente werden mit Sicherheitskontexten verwendet.

Aufzählung Beschreibung
WS_SECURITY_CONTEXT_PROPERTY_ID Identifiziert eine Eigenschaft eines Sicherheitskontextobjekts.

 

Funktion Beschreibung
WsGetSecurityContextProperty- Ruft eine Eigenschaft des angegebenen Sicherheitskontexts ab.
WsRevokeSecurityContext- Widerruft einen Sicherheitskontext.

 

Griff Beschreibung
WS_SECURITY_CONTEXT Ein undurchsichtiger Typ, der verwendet wird, um auf ein Sicherheitskontextobjekt zu verweisen.

 

Struktur Beschreibung
WS_SECURITY_CONTEXT_PROPERTY Definiert eine Eigenschaft eines WS_SECURITY_CONTEXT.