Säkerhetskontext
Säkerhetskontexter gör det möjligt att upprätta en meddelandesäkerhetskontext enligt WS-SecureConversation. Den kontexten kan sedan användas för att skydda meddelanden som ett alternativ till enstaka säkerhet där autentiseringsuppgifterna överförs för varje begäran. Den etablerade säkerhetskontexten är en effektivare metod för att skydda meddelanden när flera meddelanden utbyts.
Säkerhetskontexter kräver förekomsten av bootstrap-säkerhetsautentiseringsuppgifter som används för att skydda de meddelanden som skickas i kontexten. Strukturerna WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING, WS_XML_TOKEN_MESSAGE_SECURITY_BINDINGoch WS_USERNAME_MESSAGE_SECURITY_BINDING kan användas för detta ändamål.
Säkerhetskontexter är en funktion för meddelandesäkerhet och konfigureras med hjälp av meddelandesäkerhetsbindningar.
Klient
På klientsidan är säkerhetskontexten kopplad till en viss kanal. Den konfigureras med hjälp av WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING. Beteendet och livslängden för kontexten bestäms av kanalen. När det första meddelandet skickas på kanalen upprättas säkerhetskontexten. Därefter förnyas kontexten proaktivt med ett konfigurerbart intervall. Om servern returnerar ett fel som anger att kontexten kräver förnyelse förnyas kontexten när nästa meddelande skickas. Om kanalen är i öppet tillstånd avbryts kontexten av ett avbrutet meddelande när kanalen stängs.
Server
På servern konfigureras en säkerhetskontext på samma sätt som på klienten. Det är dock inte kopplat till någon viss kanal. I stället kan alla kanaler som skapats för lyssnaren som har den WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING uppsättningen ta emot meddelanden med någon av de säkerhetskontexter som har upprättats i lyssnarens kanaler.
När ett meddelande kommer till en kanal som stöder säkerhetskontexter kan kontexten som används av meddelandet hämtas genom att anropa funktionen WsGetMessageProperty med funktionen WS_MESSAGE_PROPERTY_SECURITY_CONTEXT. Det hämtade värdet kan användas med WsRevokeSecurityContext och WsGetSecurityContextProperty.
Metadata
Den WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING_CONSTRAINT strukturen används för att extrahera säkerhetskontextprincipen från metadata. Mer information finns i Importera metadata.
Följande API-element används med säkerhetskontexter.
Uppräkning | Beskrivning |
---|---|
WS_SECURITY_CONTEXT_PROPERTY_ID | Identifierar en egenskap för ett säkerhetskontextobjekt. |
Funktion | Beskrivning |
---|---|
WsGetSecurityContextProperty | Hämtar en egenskap för den angivna säkerhetskontexten. |
WsRevokeSecurityContext | Återkallar en säkerhetskontext. |
Handtag | Beskrivning |
---|---|
WS_SECURITY_CONTEXT | En ogenomskinlig typ som används för att referera till ett säkerhetskontextobjekt. |
Struktur | Beskrivning |
---|---|
WS_SECURITY_CONTEXT_PROPERTY | Definierar en egenskap för en WS_SECURITY_CONTEXT. |