Metodo ICertRequest3::SetCredential (certcli.h)
Il metodo SetCredential imposta le credenziali usate per contattare il servizio Web Registrazione certificati.
Sintassi
HRESULT SetCredential(
[in] LONG hWnd,
[in] X509EnrollmentAuthFlags AuthType,
[in] BSTR strCredential,
[in] BSTR strPassword
);
Parametri
[in] hWnd
Handle per la finestra padre.
Per ottenere le credenziali, è necessario impostare il parametro hWnd .
Per l'autorizzazione basata su certificato, l'handle viene usato se è necessario un prompt dell'interfaccia utente per ottenere le credenziali, ad esempio se la credenziale si trova in una smart card e è necessaria una richiesta di aggiunta.
Quando si usa l'autenticazione Kerberos, anonima o utente e password, questo parametro viene ignorato.
[in] AuthType
Valore dell'enumerazione X509EnrollmentAuthFlags che specifica il tipo di autenticazione.
Valore | Significato |
---|---|
|
Autenticazione anonima.
Impostare i parametri strCredential e strPassword su NULL o su stringhe vuote. |
|
Certificato di autenticazione client installato nel computer locale. Il certificato contiene una chiave pubblica associata a una chiave privata (non contenuta nel certificato). Il certificato viene usato dal server per verificare l'identità del client.
Il parametro strCredential contiene un hash SHA-1 a 20 byte binario del certificato da passare al servizio Web di registrazione certificati per autenticare il chiamante. Impostare il parametro strPassword su NULL o su una stringa vuota. Il parametro strCredential deve fare riferimento a un certificato installato nell'archivio certificati personale pertinente e deve avere una chiave privata associata accessibile al chiamante. |
|
Autenticazione Kerberos.
Impostare i parametri strCredential e strPassword su NULL o su stringhe vuote. |
|
Nome utente in testo non crittografato e autenticazione della password. Il nome utente e la password vengono crittografati quando vengono archiviati nell'insieme di credenziali nel client.
I parametri strCredential e strPassword contengono una stringa di nome utente e una password di testo non crittografato supportata dal servizio Web registrazione certificati per autenticare il chiamante. Poiché una connessione al servizio di registrazione usa sempre il protocollo SSL (Secure Sockets Layer ), la password viene crittografata quando inviata tramite rete. |
[in] strCredential
Stringa contenente le credenziali.
[in] strPassword
Stringa contenente la password.
Valore restituito
Codice restituito | Descrizione |
---|---|
|
Il parametro AuthType deve essere X509AuthKerberos. |
Commenti
Il metodo SetCredential deve essere chiamato prima di chiamare il metodo ICertRequest2::Submit .
Gli argomenti strCredential e strPassword cambiano a seconda del valore specificato nel parametro AuthType , come illustrato nella tabella seguente.
Parametro AuthType | parametro strCredential | parametro strPassword |
---|---|---|
X509AuthAnonymous | NULL | NULL |
X509AuthCertificate | Hash SHA-1 a 20 byte (identificazione personale) del certificato | NULL |
X509AuthKerberos | NULL | NULL |
X509AuthUsername | Nome utente in testo non crittografato riconosciuto dal servizio Web registrazione certificati | Password in testo non crittografato associata al nome utente |
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 7 [solo app desktop] |
Server minimo supportato | Windows Server 2008 R2 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | certcli.h (include Certsrv.h) |
Libreria | Certidl.lib |
DLL | Certcli.dll |