Delen via


Contextvereisten

Contextvereisten worden uitgedrukt als een combinatie van bitvlagmen die worden doorgegeven aan de functie InitializeSecurityContext (Algemeen) of AcceptSecurityContext (Algemeen). Deze vlaggen zijn op verschillende manieren van invloed op de context. Niet alle vlaggen zijn van toepassing op alle contexten. Sommige zijn alleen geldig voor de server, andere alleen voor de client.

De aanroeper gebruikt de parameter fContextReq van de InitializeSecurityContext (General) of AcceptSecurityContext (Algemeen) aanroep om een set vlaggen op te geven die de vereiste mogelijkheden aangeven. Wanneer de functie wordt geretourneerd, geeft de parameter pfContextAttr de kenmerken van de tot stand gebrachte context aan. De aanroeper bepaalt of de uiteindelijke contextkenmerken acceptabel zijn.

Vlaggen die zijn aangevraagd bij of geretourneerd door InitializeSecurityContext (Algemeen) worden voorafgegaan door ISC. De aanvragen van of geretourneerd door AcceptSecurityContext (Algemeen) worden voorafgegaan door ASC. Vlaggen die worden doorgegeven aan een functie, bevatten REQ, terwijl geretourneerde vlaggen RET bevatten. Een aanvraagvlag voor wederzijdse verificatie die wordt doorgegeven aan InitializeSecurityContext (Algemeen) is bijvoorbeeld ISC_REQ_MUTUAL_AUTH. Een server die wederzijdse verificatie aanvraagt, geeft ASC_REQ_MUTUAL_AUTH door aan AcceptSecurityContext (Algemeen). Als wederzijdse verificatie wordt bereikt, retourneert InitializeSecurityContext (Algemeen) ISC_RET_MUTUAL_AUTH en AcceptSecurityContext (Algemeen) ASC_RET_MUTUAL_AUTH retourneert. Als de beller wederzijdse verificatie aanvraagt, maar het beveiligingspakket aangeeft dat het niet kan worden uitgevoerd, moet de beller beslissen of de context moet worden geannuleerd of doorgaat.

In de volgende tabel worden de verschillende markeringen voor contextvereisten beschreven.

Vlag Beschrijving
DELEGEREN
De server in de transporttoepassing kan nieuwe beveiligingscontexten bouwen die de client imiteren die door andere servers worden geaccepteerd als contexten van de client. Gemachtigde werkt alleen als MUTUAL_AUTH is ingesteld. DELEGATE wordt momenteel alleen ondersteund door Kerberos-. Bovendien wordt Kerberos alleen gedelegeerd aan een server met de vlag TRUSTED_FOR_DELEGATION. Gebruik deze vlag niet voor beperkte delegering.
MUTUAL_AUTH
De communicerende partijen moeten hun identiteiten met elkaar verifiëren. Zonder MUTUAL_AUTH verifieert de client de identiteit van de server. Met MUTUAL_AUTH moet de server ook de identiteit verifiëren bij de client.
Wanneer u het Schannel--beveiligingspakket gebruikt, stelt de server de ASC_RET_MUTUAL_AUTH constante alleen in de laatste aanroep in voor AcceptSecurityContext (Negotiate), nadat de certificaattoewijzing is voltooid.
REPLAY_DETECT
Het beveiligingspakket detecteert opnieuw afgespeelde pakketten en meldt de beller als een pakket opnieuw is afgespeeld. Het gebruik van deze vlag impliceert alle voorwaarden die zijn opgegeven door de integriteitsvlag.
SEQUENCE_DETECT
De context moet zijn toegestaan om de levering van pakketten later buiten de order te detecteren via de ondersteuningsfuncties voor berichten. Het gebruik van deze vlag impliceert alle voorwaarden die zijn opgegeven door de integriteitsvlag.
VERTROUWELIJKHEID
De context kan gegevens beveiligen tijdens de overdracht met behulp van de functies EncryptMessage (Algemeen) en DecryptMessage (Algemeen). De vlag VERTROUWELIJKHEID werkt niet als de gegenereerde context voor het gastaccount is.
USE_SESSION_KEY
Er moet worden onderhandeld over een nieuwe sessiesleutel.
PROMPT_FOR_CREDS
Als de client een interactieve gebruiker is, moet het beveiligingspakket, indien mogelijk, de gebruiker om de juiste referenties vragen.
USE_SUPPLIED_CREDS
Pakketspecifieke referentiegegevens zijn beschikbaar in de invoerbuffer. Het beveiligingspakket kan deze referenties gebruiken om de verbinding te verifiëren.
SAVE_SUPPLIED_CREDS
De opgegeven referenties moeten worden opgeslagen in de cache met de aanvullende referenties.
ALLOCATE_MEMORY
Het beveiligingspakket moet geheugen toewijzen. De aanroeper moet uiteindelijk de FreeContextBuffer-functie aanroepen om geheugen vrij te maken dat door het beveiligingspakket is toegewezen.
USE_DCE_STYLE
De beller verwacht een verificatie met drie been transactie.
DATAGRAM
Datagram semantiek moet worden gebruikt. Zie Datagram Contextsvoor meer informatie.
VERBINDING
Verbindingssemantiek moet worden gebruikt. Zie Connection-Oriented Contextenvoor meer informatie.
STROOM
Stream-semantiek moet worden gebruikt. Zie Stream Contextsvoor meer informatie.
EXTENDED_ERROR
Foutberichten voor de peer moeten worden gegenereerd als de context mislukt.
INTEGRITEIT
Bufferintegriteit kan worden gecontroleerd, maar er is geen sequentiëren of antwoorddetectie ingeschakeld.
NO_INTEGRITY
De vereiste INTEGRITY wordt genegeerd.
IDENTIFICEREN
Wanneer een server een context imiteert waarvoor deze vlag is ingesteld, levert die imitatie extreem beperkte toegang op. Imitatie met DE ID-set wordt gebruikt om de identiteit van de client te verifiëren.