ICertRequest3::SetCredential-Methode (certcli.h)
Die SetCredential-Methode legt die Anmeldeinformationen fest, die zum Kontaktieren des Zertifikatregistrierungswebdiensts verwendet werden.
Syntax
HRESULT SetCredential(
[in] LONG hWnd,
[in] X509EnrollmentAuthFlags AuthType,
[in] BSTR strCredential,
[in] BSTR strPassword
);
Parameter
[in] hWnd
Ein Handle für das übergeordnete Fenster.
Sie müssen den hWnd-Parameter festlegen, in dem eine Benutzeroberfläche angezeigt wird, um die Anmeldeinformationen abzurufen.
Für die zertifikatbasierte Autorisierung wird das Handle verwendet, wenn eine Benutzeroberflächenaufforderung zum Abrufen der Anmeldeinformationen erforderlich ist, z. B. wenn sich die Anmeldeinformationen auf einem intelligenten Karte und eine Pin-Eingabeaufforderung erforderlich ist.
Bei Verwendung der Kerberos-, anonymen oder Benutzernamen- und Kennwortauthentifizierung wird dieser Parameter ignoriert.
[in] AuthType
Ein Wert der X509EnrollmentAuthFlags-Enumeration , der den Authentifizierungstyp angibt.
Wert | Bedeutung |
---|---|
|
Anonyme Authentifizierung.
Legen Sie die Parameter strCredential und strPassword auf NULL oder auf leere Zeichenfolgen fest. |
|
Auf dem lokalen Computer installiertes Clientauthentifizierungszertifikat. Das Zertifikat enthält einen öffentlichen Schlüssel , der einem privaten Schlüssel zugeordnet ist (nicht im Zertifikat enthalten). Das Zertifikat wird vom Server verwendet, um die Identität des Clients zu überprüfen.
Der strCredential-Parameter enthält einen binären 20-Byte SHA-1-Hash des Zertifikats, das an den Zertifikatregistrierungswebdienst übergeben werden soll, um den Aufrufer zu authentifizieren. Legen Sie den strPassword-Parameter auf NULL oder eine leere Zeichenfolge fest. Der strCredential-Parameter muss auf ein Zertifikat verweisen, das im entsprechenden persönlichen Zertifikatspeicher installiert ist, und er muss über einen zugeordneten privaten Schlüssel verfügen, auf den der Aufrufer zugreifen kann. |
|
Kerberos-Authentifizierung.
Legen Sie die Parameter strCredential und strPassword auf NULL oder auf leere Zeichenfolgen fest. |
|
Klartextbenutzer- und Kennwortauthentifizierung. Der Benutzername und das Kennwort werden verschlüsselt, wenn sie im Anmeldeinformationstresor auf dem Client gespeichert werden.
Die Parameter strCredential und strPassword enthalten eine Benutzernamenzeichenfolge und ein Klartextkennwort, die vom Zertifikatregistrierungswebdienst zur Authentifizierung des Aufrufers unterstützt werden. Da eine Registrierungsdienstverbindung immer SSL (Secure Sockets Layer Protocol ) verwendet, wird das Kennwort verschlüsselt, wenn es über die Verbindung gesendet wird. |
[in] strCredential
Eine Zeichenfolge, die die Anmeldeinformationen enthält.
[in] strPassword
Eine Zeichenfolge, die das Kennwort enthält.
Rückgabewert
Rückgabecode | Beschreibung |
---|---|
|
Der AuthType-Parameter muss X509AuthKerberos sein. |
Hinweise
Die SetCredential-Methode muss vor dem Aufrufen der ICertRequest2::Submit-Methode aufgerufen werden.
Die Argumente strCredential und strPassword ändern sich abhängig von dem wert, der im AuthType-Parameter angegeben ist, wie in der folgenden Tabelle dargestellt.
AuthType-Parameter | strCredential-Parameter | strPassword-Parameter |
---|---|---|
X509AuthAnonymous | NULL | NULL |
X509AuthCertificate | Ein 20 Byte SHA-1-Hash (Fingerabdruck) des Zertifikats | NULL |
X509AuthKerberos | NULL | NULL |
X509AuthBenutzername | Ein Klartextbenutzername, der vom Zertifikatregistrierungswebdienst erkannt wird | Ein Klartextkennwort, das dem Benutzernamen zugeordnet ist |
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 7 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 R2 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | certcli.h (include Certsrv.h) |
Bibliothek | Certidl.lib |
DLL | Certcli.dll |