SCH_CREDENTIALS-Struktur (schannel.h)
Die SCH_CREDENTIALS-Struktur enthält Initialisierungsinformationen für Schannel-Anmeldeinformationen.
Syntax
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;
Member
dwVersion
Auf SCH_CREDENTIALS_VERSION festgelegt.
dwCredFormat
Der Kernelmodus Schannel unterstützt die folgenden Werte.
Windows Server 2008, Windows Vista, Windows Server 2003, Windows XP und Windows XP/2000: Dieses Flag wird nicht unterstützt und muss null sein.
Wert | Bedeutung |
---|---|
|
Das paCred-Element der übergebenen SCH_CREDENTIALS-Struktur muss ein Zeiger auf ein Bytearray der Länge 20 sein, das den Zertifikatfingerabdruck enthält. Es wird davon ausgegangen, dass sich das Zertifikat im Speicher "MY" des lokalen Computers befindet. |
|
Das paCred-Element der SCH_CREDENTIALS-Struktur zeigt auf eine SCHANNEL_CERT_HASH_STORE-Struktur . |
cCreds
Die Anzahl der Strukturen im paCred-Array.
paCred
Ein Array von Zeigern auf CERT_CONTEXT Strukturen. Jeder Zeiger gibt ein Zertifikat an, das einen privaten Schlüssel enthält, der bei der Authentifizierung der Anwendung verwendet werden soll.
Clientanwendungen übergeben häufig eine leere Liste und sind entweder von Schannel abhängig, um ein geeignetes Zertifikat zu finden, oder erstellen Sie bei Bedarf später ein Zertifikat.
hRootStore
Optional. Gilt nur für Serveranwendungen. Behandeln Sie einen Zertifikatspeicher, der selbstsignierte Stammzertifikate für Zertifizierungsstellen enthält, die von der Anwendung als vertrauenswürdig eingestuft werden. Dieser Member wird nur von serverseitigen Anwendungen verwendet, die eine Clientauthentifizierung erfordern.
cMappers
Reserviert.
aphMappers
Reserviert.
_HMAPPER
dwSessionLifespan
Die Anzahl der Millisekunden, mit denen Schannel die Sitzung im Sitzungscache speichert. Nach Ablauf dieser Zeit ist für alle neuen Verbindungen zwischen Client und Server eine neue Schannel-Sitzung erforderlich. Legen Sie den Wert dieses Elements auf null fest, um den Standardwert von 360000000 Millisekunden (zehn Stunden) zu verwenden.
dwFlags
Enthält Bitflags, die das Verhalten von Schannel steuern. Dieser Member kann null oder eine Kombination der folgenden Werte sein.
Wert | Bedeutung |
---|---|
|
Nur Client.
Dieses Flag ist das Gegenteil von SCH_CRED_MANUAL_CRED_VALIDATION und Teil des Standardverhaltens von Schannel. |
|
Weisen Sie Schannel an, das CERT_CHAIN_CACHE_ONLY_URL_RETRIEVAL-Flag an die CertGetCertificateChain-Funktion zu übergeben, wenn die angegebenen Anmeldeinformationen während eines Aufrufs von AcquireCredentialsHandle (Schannel) überprüft werden.
Windows Server 2003 und Windows XP/2000: Dieses Flag wird nicht unterstützt. |
|
Nur Server.
Wenn dieses Flag festgelegt ist, lassen vollständige Handshakes, die mit diesen Anmeldeinformationen ausgeführt werden, keine erneuten Verbindungen zu. Ein Cacheeintrag wird erstellt, sodass die Sitzung später mithilfe der ApplyControlToken-Funktion fortgesetzt werden kann. |
|
Wenn Sie nach widerrufenen Zertifikaten suchen, ignorieren Sie CRYPT_E_NO_REVOCATION_CHECK Fehler. Weitere Einschränkungen finden Sie unter Hinweise. |
|
Wenn Sie nach gesperrten Zertifikaten suchen, ignorieren Sie CRYPT_E_REVOCATION_OFFLINE Fehler. Weitere Einschränkungen finden Sie unter Hinweise. |
|
Nur Client.
Verhindern, dass Schannel die empfangene Serverzertifikatkette überprüft. |
|
Nur Client.
Verhindern Sie, dass Schannel versucht, automatisch eine Zertifikatkette für die Clientauthentifizierung anzugeben. |
|
Nur Client.
Verhindern, dass Schannel den angegebenen Zielnamen mit den Antragstellernamen in Serverzertifikaten vergleicht. |
|
Nur Server.
Verhindern Sie, dass Schannel die integrierten Systemzertifikatzuordnungsfunktionen zum Zuordnen von Clientzertifikaten zu einem Benutzerkonto verwendet. |
|
Überprüfen Sie beim Überprüfen einer Zertifikatkette alle Zertifikate auf Sperrung. Weitere Einschränkungen finden Sie unter Hinweise. |
|
Überprüfen Sie beim Überprüfen einer Zertifikatkette den Stamm nicht auf Sperrung. Weitere Einschränkungen finden Sie unter Hinweise. |
|
Überprüfen Sie beim Überprüfen einer Zertifikatkette nur das letzte Zertifikat auf Sperrung. Weitere Einschränkungen finden Sie unter Hinweise. |
|
Nur Client.
Schannel versucht, automatisch eine Zertifikatkette für die Clientauthentifizierung anzugeben. Dieser Wert ist das Gegenteil von SCH_CRED_NO_DEFAULT_CREDS. |
|
Weisen Sie Schannel an, die zu verschlüsselnden Daten in zwei separate Datensätze aufzuteilen, um Schwäche im SSL/TLS-Protokoll zu beheben, wenn sie mit symmetrischen Verschlüsselungssammlungen mithilfe des Verschlüsselungsblockverkettungsmodus verwendet wird. Weitere Informationen finden Sie unter "Sicherheitsrisiko in SSL/TLS kann die Offenlegung von Informationen ermöglichen" in der Hilfe- und Support-Wissensdatenbank unter http://support.microsoft.com/kb/2643584.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003, Windows XP und Windows XP/2000: Dieses Flag wird nicht unterstützt. |
|
Schannel sendet das Stammzertifikat als Teil der Zertifikatnachricht.
Hinweis Das vom Schannel-Client oder -Server über das Netzwerk gesendete Stammzertifikat ist nicht vertrauenswürdig. Es sollte anhand eines vertrauenswürdigen Hashs des Stammzertifikats überprüft werden.
|
|
Weist Schannel an, bekannte schwache Kryptografiealgorithmen, Verschlüsselungssammlungen und SSL/TLS-Protokollversionen zu deaktivieren, die andernfalls für eine bessere Interoperabilität aktiviert werden können. |
|
Weist Schannel an, nur PSK-Verschlüsselungssammlungen auszuwählen und alle anderen Verschlüsselungssammlungen zu deaktivieren. |
cTlsParameters
Die Anzahl der Einträge im pTlsParameters-Array.
Es ist ein Fehler, mehr als SCH_CRED_MAX_SUPPORTED_PARAMETERS anzugeben.
pTlsParameters
Array von Zeigern auf die TLS_PARAMETERS Strukturen, die ggf. TLS-Parametereinschränkungen angeben. Wenn keine Einschränkungen angegeben werden, werden die Standardeinstellungen des Systems verwendet. Es wird empfohlen, dass Anwendungen die Systemstandardeinstellungen verwenden.
Es ist ein Fehler, mehr als eine TLS_PARAMETERS-Struktur in cAlpnIds == 0 und rgstrAlpnIds == NULL einzuschließen.
Hinweise
Um die SCH_CREDENTIALS-Struktur zu verwenden, definieren Sie SCHANNEL_USE_BLACKLISTS zusammen mit UNICODE_STRING und PUNICODE_STRING. Alternativ können Sie Ntdef.h, SubAuth.h oder Winternl.h einschließen.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 10 1809 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 1809 [nur Desktop-Apps] |
Kopfzeile | schannel.h |