Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Il metodo InitializeFromPublicKey inizializza una richiesta di certificato con segno Null utilizzando un oggetto IX509PublicKey e, facoltativamente, un modello.
Sintassi
HRESULT InitializeFromPublicKey(
[in] X509CertificateEnrollmentContext Context,
[in] IX509PublicKey *pPublicKey,
[in, optional] BSTR strTemplateName
);
Parametri
[in] Context
Valore di enumerazione X509CertificateEnrollmentContext che specifica se il certificato richiesto è destinato a un utente finale, a un computer o a un amministratore che agisce per conto del computer.
[in] pPublicKey
Puntatore a un'interfaccia IX509PublicKey che rappresenta la chiave pubblica.
[in, optional] strTemplateName
Variabile BSTR che contiene il nome comune (CN) del modello come viene visualizzato in Active Directory o nell'identificatore di oggetto decimale punteggiato. Questo è un parametro opzionale.
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 solo, quelli nella tabella seguente. Per un elenco dei codici di errore comuni, vedere Valori HRESULT comuni.
| Codice/valore restituito | Description |
|---|---|
|
L'oggetto richiesta certificato è già stato inizializzato. |
Osservazioni:
Se si specifica un modello, il metodo InitializeFromPublicKey esegue le azioni seguenti:
- Aggiunge le estensioni specificate nel modello facoltativo, se presente, all'insieme IX509Extensions .
- Crea un insieme CriticalExtensions e lo popola con gli identificatori di oggetto predefiniti XCN_OID_KEY_USAGE e XCN_OID_BASIC_CONSTRAINTS2. Se viene specificato un modello e indica che questi ID non sono critici, vengono rimossi dalla raccolta. Gli URI contrassegnati come critici dal modello, se presenti, vengono aggiunti.
- Imposta la proprietà SmimeCapabilities se il modello supporta algoritmi simmetrici.
- Imposta la proprietà AlternateSignatureAlgorithm se il modello richiede un OID dell'algoritmo di firma discreto.
- Crea un oggetto IX509SignatureInformation .
- Crea un OID algoritmo hash se l'algoritmo viene specificato nel modello e lo imposta sull'oggetto IX509SignatureInformation .
- Crea un OID algoritmo di crittografia asimmetrica se l'algoritmo viene specificato nel modello e lo imposta sull'oggetto IX509SignatureInformation .
Se si specifica o meno un modello, se la proprietà CSPInformations non è specificata, il metodo crea una raccolta ICspInformations dai provider installati nel computer.
Il metodo non crea una chiave privata. L'uso di questo metodo implica che la richiesta è con segno Null. Di conseguenza, il metodo imposta la proprietà NullSigned sull'oggetto IX509SignatureInformation .
Requisiti
| Requisito | Value |
|---|---|
| Client minimo supportato | Windows Vista [solo app desktop] |
| Server minimo supportato | Windows Server 2008 [solo app desktop] |
| Piattaforma di destinazione | Windows |
| Header | certenroll.h |
| DLL | CertEnroll.dll |