ICertServerPolicy::SetCertificateExtension 方法 (certif.h)
SetCertificateExtension 方法會將新的延伸模組新增至憑證。
語法
HRESULT SetCertificateExtension(
[in] const BSTR strExtensionName,
[in] LONG Type,
[in] LONG ExtFlags,
[in] const VARIANT *pvarValue
);
參數
[in] strExtensionName
指定要設定延伸模組的物件 標識碼 (OID) 。 字串長度必須為 31 或更少非 Null 字元。
[in] Type
指定要設定的延伸模組類型。 Type 參數必須同意 VARIANT 結構的 vt 字段中所設定的 pvarValue 數據類型。 Type 參數可以設定為下列其中一種類型。
[in] ExtFlags
指定所設定延伸模組的旗標。 如果未設定旗標,請使用零的值,或使用下列其中一個旗標值。 您可以使用 OR 運算符將這些旗標聯結在一起,也可以使用 OR 運算元搭配原則私用擴充旗標來聯結這些旗標, (EXTENSION_POLICY_MASK 欄位) 的高 8 位。
注意 當 ExtFlags 設定為EXTENSION_DISABLE_FLAG時,擴充功能將會在伺服器記錄檔中停用,且不會新增至憑證。
值 | 意義 |
---|---|
|
這是重要的延伸模組。 |
|
將不會使用擴充功能。 |
[in] pvarValue
指定與延伸模組相關聯的值。 請注意,值的 VARIANT 類型必須同意 Type 參數,如下表所示。
值 | 意義 |
---|---|
|
VT_I4 |
|
VT_DATE |
|
VT_BSTR |
|
VT_BSTR |
傳回值
VB
如果方法成功,方法會傳回S_OK。如果方法失敗,它會傳回 HRESULT 值,指出錯誤。 如需常見錯誤碼的清單,請參閱 一般 HRESULT 值。
備註
使用延伸模組以包含憑證的其他資訊,例如補充主體或使用資訊。 如需詳細資訊,請參閱 延伸模塊處理程式。
從 ICertPolicy2::VerifyRequest 方法的實作呼叫 SetCertificateExtension 方法。 您必須先呼叫 ICertServerPolicy::SetContext 方法,才能呼叫 SetCertificateExtension 方法。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 都不支援 |
最低支援的伺服器 | Windows Server 2003 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | certif.h (包括 Certsrv.h) |
程式庫 | Certidl.lib |
Dll | Certcli.dll |