Generazione della risposta alla richiesta di digest
Dopo aver ricevuto una richiesta di verifica dal server, il client crea la risposta alla richiesta di verifica digest chiamando la funzione InitializeSecurityContext (Digest). Questa funzione genera un'impronta digitale hash MD5 usando informazioni sulla risorsa e i dati richiesti dalla richiesta e restituisce un token di sicurezza che rappresenta un contesto di sicurezza parziale. Per completare l'autenticazione, il client deve restituire il token al server che ha emesso la richiesta di verifica.
Nella tabella seguente vengono descritti i parametri della funzione InitializeSecurityContext (Digest) e i valori da fornire durante la costruzione di una risposta di verifica digest.
Parametro | Descrizione |
---|---|
fContextReq |
Attributi del contesto di sicurezza richiesti dal client. Per altre informazioni, vedere Digest Challenge Response Context Requirements.For more information, see Digest Challenge Response Context Requirements. |
pszTargetName |
HTTP: stringa con terminazione Null che specifica l'URL di destinazione. SASL: stringa con terminazione Null che specifica la destinazione DNS/SPN. |
pInput |
Buffer che contengono informazioni richieste dal provider di servizi condivisi digest. Per altre informazioni, vedere Buffer di input per la risposta alla richiesta di verifica del digest. |
pfContextAttr |
Riceve gli attributi supportati dal contesto di sicurezza restituito. Per altre informazioni, vedere Digest Challenge Response Context Requirements.For more information, see Digest Challenge Response Context Requirements. |
pOutput |
Indirizzo di un buffer di tipo SECBUFFER_TOKEN che riceve un token di sicurezza da inviare al server. |
Requisiti del contesto di risposta alla richiesta di verifica digest
I requisiti di contesto sono flag che determinano:
- Indica se Microsoft Digest funziona come meccanismo SASL o protocollo di autenticazione HTTP.
- Qualità della protezione supportata dal contesto di sicurezza condiviso dal client e dal server.
Per impostazione predefinita, Microsoft Digest funziona come meccanismo SASL.
I requisiti di contesto vengono specificati come flag passati al parametro fContextReq della funzione InitializeSecurityContext . I flag influiscono sulla qualità della protezione del contesto di sicurezza controllando la direttiva qop nella risposta alla richiesta di verifica.
Per impostazione predefinita, la direttiva qop è impostata su "auth". Per generare una risposta di verifica che imposta qop su "auth-int", è necessario che si verifichi quanto segue:
La richiesta digest deve avere una direttiva qop impostata su "auth-int".
Il client deve specificare uno o più dei flag seguenti:
- ISC_REQ_INTEGRITY
- ISC_REQ_REPLAY_DETECT
- ISC_REQ_SEQUENCE_DETECT
Solo per SASL: generare una risposta di verifica con la direttiva qop impostata su "auth-conf" specificando il flag ISC_REQ_CONFIDENTIALITY. Poiché questo flag non è valido per l'autenticazione HTTP, non può essere usato con il flag ISC_REQ_HTTP.
Verifica della qualità della protezione
Il client deve esaminare i flag degli attributi del contesto di sicurezza restituiti nel parametro pfContextAttr della funzione InitializeSecurityContext. Il client deve inviare la risposta di richiesta al server solo se la qualità della protezione indicata dai flag è sufficiente ai propri scopi. I flag pertinenti possono essere qualsiasi combinazione di quanto segue:
- ISC_RET_INTEGRITY
- ISC_RET_REPLAY_DETECT
- ISC_RET_SEQUENCE_DETECT
- ISC_RET_CONFIDENTIALITY (solo contesti SASL)
Per altre informazioni sulla direttiva qop, vedere Qualità della protezione e crittografie.
Per altre informazioni sulle direttive di risposta alla richiesta di verifica, vedere Contenuto di una risposta alla richiesta di verifica digest.