Condividi tramite


Metodo IX509Enrollment::CreateRequest (certenroll.h)

Il metodo CreateRequest recupera una richiesta di certificato codificata. La richiesta di certificato è contenuta in una matrice di byte codificata usando Distinguished Encoding Rules (DER) come definito dallo standard ASN.1 (Abstract Syntax Notation One). La matrice di byte con codifica DER è rappresentata da una stringa che è una sequenza binaria pura o codificata Unicode. Questo metodo è abilitato per il Web.

Sintassi

HRESULT CreateRequest(
  [in]  EncodingType Encoding,
  [out] BSTR         *pValue
);

Parametri

[in] Encoding

Valore di enumerazione EncodingType che specifica il tipo di codifica Unicode applicato alla richiesta con codifica DER. Il valore predefinito è XCN_CRYPT_STRING_BASE64.

[out] pValue

Puntatore a una variabile BSTR che contiene la richiesta con codifica DER.

Valore restituito

Se la funzione ha esito positivo, la funzione restituisce S_OK.

Se la funzione ha esito negativo, restituisce un valore HRESULT che indica l'errore. I valori possibili includono, ma non sono limitati a, quelli indicati nella tabella seguente. Per un elenco dei codici di errore comuni, vedere Valori HRESULT comuni.

Codice/valore restituito Descrizione
CERTSRV_E_PROPERTY_EMPTY
Impossibile trovare la richiesta di certificato.
OLE_E_BLANK
L'oggetto di registrazione non è stato inizializzato.

Commenti

Il metodo CreateRequest chiama il metodo Encode , se necessario, per codificare i dati non elaborati dall'oggetto richiesta associato.

Questo metodo usa le informazioni fornite durante l'inizializzazione e altre proprietà specificate, crea un certificato fittizio e lo inserisce nell'archivio richieste. Se necessario, il metodo crea anche una coppia di chiavi. A seconda della modalità di inizializzazione dell'oggetto di registrazione e delle proprietà impostate, potrebbe non essere necessario creare una coppia di chiavi. Ad esempio, se si rinnova un certificato usando una chiave esistente o se l'oggetto IX509PrivateKey associato alla richiesta di certificato rappresenta una chiave esistente, questo metodo non crea una nuova coppia di chiavi.

Se viene interessata una smart card, questo metodo codifica le proprietà esterne come estensioni, le include nel certificato fittizio e scrive il certificato fittizio nel contenitore di chiavi della smart card. I certificati di accesso tramite smart card vengono codificati nell'archivio delle richieste, non nell'archivio personale.

Prima di chiamare il metodo CreateRequest , è necessario inizializzare l'oggetto IX509Enrollment chiamando uno dei metodi seguenti.

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione certenroll.h
DLL CertEnroll.dll

Vedi anche

IX509CertificateRequest

IX509Enrollment