SCH_CREDENTIALS struttura (schannel.h)
La struttura SCH_CREDENTIALS contiene informazioni di inizializzazione per una credenziale Schannel.
Sintassi
typedef struct _SCH_CREDENTIALS {
DWORD dwVersion;
DWORD dwCredFormat;
DWORD cCreds;
PCCERT_CONTEXT *paCred;
HCERTSTORE hRootStore;
DWORD cMappers;
_HMAPPER **aphMappers;
struct _HMAPPER;
DWORD dwSessionLifespan;
DWORD dwFlags;
DWORD cTlsParameters;
PTLS_PARAMETERS pTlsParameters;
} SCH_CREDENTIALS, *PSCH_CREDENTIALS;
Members
dwVersion
Impostare su SCH_CREDENTIALS_VERSION.
dwCredFormat
Schannel in modalità kernel supporta i valori seguenti.
Windows Server 2008, Windows Vista, Windows Server 2003, Windows XP e Windows XP/2000: Questo flag non è supportato e deve essere zero.
Valore | Significato |
---|---|
|
Il membro paCred della struttura SCH_CREDENTIALS passato deve essere un puntatore a una matrice di byte di lunghezza 20 contenente l'identificazione personale del certificato. Si presuppone che il certificato sia nell'archivio "MY" del computer locale. |
|
Il membro paCred della struttura SCH_CREDENTIALS punta a una struttura SCHANNEL_CERT_HASH_STORE . |
cCreds
Numero di strutture nella matrice paCred.
paCred
Matrice di puntatori alle strutture CERT_CONTEXT. Ogni puntatore specifica un certificato che contiene una chiave privata da usare per autenticare l'applicazione.
Le applicazioni client passano spesso in un elenco vuoto e dipendono da Schannel per trovare un certificato appropriato o creare un certificato in un secondo momento, se necessario.
hRootStore
facoltativo. Valido solo per le applicazioni server. Gestire un archivio certificati che contiene certificati radice autofirmati per le autorità di certificazione (CA) attendibili dall'applicazione. Questo membro viene usato solo dalle applicazioni lato server che richiedono l'autenticazione client.
cMappers
Riservato.
aphMappers
Riservato.
_HMAPPER
dwSessionLifespan
Il numero di millisecondi che Schannel mantiene la sessione nella cache della sessione. Dopo questo periodo di tempo, tutte le nuove connessioni tra il client e il server richiedono una nuova sessione Schannel. Impostare il valore di questo membro su zero per usare il valore predefinito di 360000000 millisecondi (dieci ore).
dwFlags
Contiene flag di bit che controllano il comportamento di Schannel. Questo membro può essere zero o una combinazione dei valori seguenti.
Valore | Significato |
---|---|
|
Solo client.
Questo flag è l'opposto di SCH_CRED_MANUAL_CRED_VALIDATION e fa parte del comportamento predefinito di Schannel. |
|
Indicare a Schannel di passare il flag di CERT_CHAIN_CACHE_ONLY_URL_RETRIEVAL alla funzione CertGetCertificateChain durante la convalida delle credenziali specificate durante una chiamata a AcquireCredentialsHandle (Schannel).
Windows Server 2003 e Windows XP/2000: Questo flag non è supportato. |
|
Solo server.
Se questo flag è impostato, i handshake completi eseguiti con questa credenziale non consentono di riconnettersi. Viene creata una voce della cache, in modo che la sessione possa essere ripresa in un secondo momento usando la funzione ApplyControlToken . |
|
Quando si verifica la presenza di certificati revocati, ignorare CRYPT_E_NO_REVOCATION_CHECK errori. Per altre restrizioni, vedere Osservazioni. |
|
Quando si verifica la presenza di certificati revocati, ignorare CRYPT_E_REVOCATION_OFFLINE errori. Per altre restrizioni, vedere Osservazioni. |
|
Solo client.
Impedire a Schannel di convalidare la catena di certificati server ricevuta. |
|
Solo client.
Impedire a Schannel di tentare di fornire automaticamente una catena di certificati per l'autenticazione client. |
|
Solo client.
Impedire a Schannel di confrontare il nome di destinazione fornito con i nomi dei soggetti nei certificati del server. |
|
Solo server.
Impedire a Schannel di usare le funzioni di mapping dei certificati di sistema predefinite per eseguire il mapping dei certificati client a un account utente. |
|
Quando si convalida una catena di certificati, controllare tutti i certificati per la revoca. Per altre restrizioni, vedere Osservazioni. |
|
Quando si convalida una catena di certificati, non controllare la radice per la revoca. Per altre restrizioni, vedere Osservazioni. |
|
Quando si convalida una catena di certificati, controllare solo l'ultimo certificato per la revoca. Per altre restrizioni, vedere Osservazioni. |
|
Solo client.
Schannel tenta di fornire automaticamente una catena di certificati per l'autenticazione client. Questo valore è l'opposto di SCH_CRED_NO_DEFAULT_CREDS. |
|
Indicare a Schannel di dividere i dati da crittografare in due record separati per contrastare la debolezza presente nel protocollo SSL/TLS quando usato con la suite di crittografia simmetrica usando la modalità di concatenamento a blocchi di crittografia. Per altre informazioni, vedere "Vulnerabilità in SSL/TLS potrebbe consentire la divulgazione delle informazioni" nella Guida e nella Knowledge Base del supporto tecnico all'indirizzo http://support.microsoft.com/kb/2643584.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003, Windows XP e Windows XP/2000: Questo flag non è supportato. |
|
Schannel invia il certificato radice come parte del messaggio del certificato.
Nota Il certificato radice inviato sulla rete dal client o dal server Schannel non è attendibile. Deve essere convalidato in base a un hash attendibile del certificato radice.
|
|
Indica a Schannel di disabilitare algoritmi di crittografia vulnerabili noti, suite di crittografia e versioni del protocollo SSL/TLS che potrebbero essere altrimenti abilitate per una migliore interoperabilità. |
|
Indica a Schannel di selezionare solo suite di crittografia PSK e disabilitare tutte le altre suite di crittografia. |
cTlsParameters
Numero di voci nella matrice pTlsParameters.
Si tratta di un errore per specificare più di SCH_CRED_MAX_SUPPORTED_PARAMETERS.
pTlsParameters
Matrice di puntatori alle strutture TLS_PARAMETERS che indicano le restrizioni dei parametri TLS, se presenti. Se non vengono specificate restrizioni, vengono utilizzate le impostazioni predefinite di sistema. È consigliabile che le applicazioni si basano sulle impostazioni predefinite del sistema.
Si tratta di un errore per includere più di una struttura TLS_PARAMETERS con cAlpnIds == 0 e rgstrAlpnIds == NULL.
Commenti
Per usare la struttura di SCH_CREDENTIALS, definire SCHANNEL_USE_BLACKLISTS insieme a UNICODE_STRING e PUNICODE_STRING. In alternativa, includere Ntdef.h, SubAuth.h o Winternl.h.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 10 1809 [solo app desktop] |
Server minimo supportato | Windows Server 1809 [solo app desktop] |
Intestazione | schannel.h |