Condividi tramite


Metodo ICertServerPolicy::SetCertificateExtension (certif.h)

Il metodo SetCertificateExtension aggiunge una nuova estensione al certificato.

Sintassi

HRESULT SetCertificateExtension(
  [in] const BSTR    strExtensionName,
  [in] LONG          Type,
  [in] LONG          ExtFlags,
  [in] const VARIANT *pvarValue
);

Parametri

[in] strExtensionName

Specifica l'identificatore di oggetto (OID) per l'estensione da impostare. La stringa deve avere una lunghezza di 31 o meno caratteri non null.

[in] Type

Specifica il tipo di estensione da impostare. Il parametro Type deve essere d'accordo con il tipo di dati di pvarValue impostato nel campo vt della struttura VARIANT . Il parametro Type può essere impostato su uno dei tipi seguenti.

Valore Significato
PROPTYPE_LONG
Dati lunghi firmati.
PROPTYPE_DATE
Data/ora.
PROPTYPE_BINARY
Il valore dell'estensione viene impostato così come è e si presuppone che sia con codifica ASN.1, se necessario.
PROPTYPE_STRING
Il valore dell'estensione sarà codificato ASN.1 come stringa IA5 prima che venga inserito nel nuovo certificato.
Nota È consigliabile usare PROPTYPE_STRING per un valore di estensione costituito da un singolo URL solo se si vuole che l'URL venga codificato automaticamente come stringa IA5. In caso contrario, codificare l'URL come stringa IA5 manualmente e passare il valore codificato come PROPTYPE_BINARY.
 

[in] ExtFlags

Specifica i flag per l'estensione da impostare. Usare un valore pari a zero se non è necessario impostare alcun flag oppure usare uno dei valori di flag seguenti. È possibile unire questi flag usando l'operatore OR ed è anche possibile unirli usando l'operatore OR con flag di estensione privata dei criteri (i 8 bit elevati del campo EXTENSION_POLICY_MASK).

Nota Quando ExtFlags è impostato su EXTENSION_DISABLE_FLAG, l'estensione verrà disabilitata nel log del server e non verrà aggiunta al certificato.
 
Valore Significato
EXTENSION_CRITICAL_FLAG
Si tratta di un'estensione critica.
EXTENSION_DISABLE_FLAG
L'estensione non verrà usata.

[in] pvarValue

Specifica il valore associato all'estensione. Si noti che il tipo VARIANT del valore deve essere d'accordo con il parametro Type , come illustrato nella tabella seguente.

Valore Significato
PROPTYPE_LONG
VT_I4
PROPTYPE_DATE
VT_DATE
PROPTYPE_BINARY
VT_BSTR
PROPTYPE_STRING
VT_BSTR

Valore restituito

VB

Se il metodo ha esito positivo, il metodo restituisce S_OK.

Se il metodo ha esito negativo, restituisce un valore HRESULT che indica l'errore. Per un elenco dei codici di errore comuni, vedere Valori HRESULT comuni.

Commenti

Usare le estensioni per includere informazioni aggiuntive con il certificato, ad esempio informazioni supplementari sull'oggetto o sull'utilizzo. Per altre informazioni, vedere Gestori di estensione.

Chiamare il metodo SetCertificateExtension dall'implementazione del metodo ICertPolicy2::VerifyRequest . È necessario chiamare il metodo ICertServerPolicy::SetContext prima di chiamare il metodo SetCertificateExtension .

Requisiti

Requisito Valore
Client minimo supportato Nessuno supportato
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione certif.h (include Certsrv.h)
Libreria Certidl.lib
DLL Certcli.dll

Vedi anche

ICertServerPolicy

ICertServerPolicy::SetContext