IX509Extension 介面 (certenroll.h)
IX509Extension 介面可用來定義 憑證要求的延伸模組。 憑證延伸模組提供密鑰使用方式、憑證原則和條件約束、替代名稱表單等相關信息。 延伸模組包含 物件標識符 (OID)、布爾值,可識別延伸模組是否重要,以及包含擴充值的位元組陣列,如下列 抽象語法表示法一 (ASN.1) 語法所示。
Extension ::= SEQUENCE
{
extnId OBJECT IDENTIFIER,
critical BOOLEAN DEFAULT FALSE,
extnValue OCTETSTRING
}
憑證註冊 API 包含下列介面,衍生自 IX509Extension,可用來建立在依賴 Windows 證書伺服器的公鑰基礎結構 (PKI) 中最常使用的各種延伸模組。
介面 | 描述 |
---|---|
IX509ExtensionAlternativeNames | 定義 AlternativeNames 延伸模組,其中包含憑證要求主體的一或多個替代名稱表單。 |
IX509ExtensionAuthorityKeyIdentifier | 定義 AuthorityKeyIdentifier 延伸模組,以識別 證書頒發機構單位公鑰,其對應至簽署已發行憑證的證書頒發機構單位 私鑰。 憑證路徑會在 Windows 伺服器上建置軟體,以尋找證書頒發機構單位憑證。 |
IX509ExtensionBasicConstraints | 定義 BasicConstraints 延伸模組,以識別實體是否可以作為證書頒發機構單位使用,如果是的話,則可以在憑證鏈結中存在其下方的次級證書頒發機構單位數目。 |
IX509ExtensionCertificatePolicies | 定義 CertificatePolicies 擴充功能,以識別已發行憑證的原則及其用途。 |
IX509ExtensionEnhancedKeyUsage | 定義 EnhancedKeyUsage 擴充功能,以識別憑證中包含的一或多個公鑰用法。 |
IX509ExtensionKeyUsage | 定義 KeyUsage 擴充功能,以限制憑證中包含的公鑰可執行的作業。 |
IX509ExtensionMSApplicationPolicies | 定義 MSApplicationPolicies 擴充功能,應用程式可以根據允許的使用來篩選憑證。 允許的用途是由物件識別碼 (OID) 來識別。 |
IX509ExtensionSmimeCapabilities | 定義 SmimeCapabilities 擴充功能,以識別電子郵件收件者的解密功能,讓電子郵件的寄件者可以選擇雙方支援的最安全加密演算法。 |
IX509ExtensionSubjectKeyIdentifier | 定義 SubjectKeyIdentifier 延伸模組,以區分憑證擁有者持有的多個公鑰。 擴充值通常是索引鍵的SHA-1哈希。 |
IX509ExtensionTemplate | 定義 範本 延伸模組,以識別發行或更新憑證時要使用的第 2 版範本。 |
IX509ExtensionTemplateName | 定義 TemplateName 擴充功能,以識別發行或更新憑證時要使用的第 1 版範本。 |
大部分可以使用上述介面建立的延伸模組都是由第 3 版 X.509 語法標準所定義。 若要建立Microsoft未提供自定義物件的第3版延伸模組,您可以使用 IX509Extension 介面。 下表會識別這些延伸模組。
擴充功能/OID | 描述 |
---|---|
AuthorityInformationAccess(XCN_OID_AUTHORITY_INFO_ACCESS) | 識別如何存取證書頒發機構單位資訊和服務。 擴充值包含一連串的 URI。 |
CrlDistributionPoints(XCN_OID_CRL_DIST_POINTS) | 包含基底 證書吊銷清單的 URI (CRL)。 |
FreshestCRL(XCN_OID_FRESHEST_CRL) | 包含差異 CRL 的 URI。 此延伸模組和 CrlDistributionPoints 延伸模組使用相同的 ASN.1 語法。 |
NameConstraints(XCN_OID_NAME_CONSTRAINTS) | 識別憑證階層中憑證的所有主體名稱必須所在的命名空間。 延伸模組只會在證書頒發機構單位憑證中使用。 |
原則限制(XCN_OID_POLICY_CONSTRAINTS) | 藉由禁止原則對應或要求階層中的每個憑證包含可接受的原則標識碼,來限制路徑驗證。 |
PolicyMappings(XCN_OID_POLICY_MAPPINGS) | 識別與發行證書頒發機構單位中原則對應的次級證書頒發機構單位中的原則。 延伸模組值包含一連串的頒發證書頒發機構單位和次級證書頒發機構單位原則對應,以對象標識元表示。 |
PrivateKeyUsagePeriod(XCN_OID_PRIVATEKEY_USAGE_PERIOD) | 為私鑰指定與與金鑰相關聯之憑證不同的有效期間。 |
SubjectDirectoryAttributes(XCN_OID_SUBJECT_DIR_ATTRS) | 傳達有關憑證主體的國籍等識別屬性。 擴充值是 OID 值組的序列。 |
最後,您可以使用 IX509Extension 介面來定義私人延伸模組,其中包含特定社群特有的資訊。
擴充功能會新增至 PKCS #10 要求 結構
遺產
IX509Extension 介面繼承自 IDispatch 介面。 IX509Extension 也有下列類型的成員:
方法
IX509Extension 介面具有這些方法。
IX509Extension::get_Critical 指定及擷取布爾值,識別憑證延伸模組是否重要。 (取得) |
IX509Extension::get_ObjectId 擷取延伸模組的物件標識碼 (OID)。 |
IX509Extension::get_RawData 擷取包含擴充值的位元組陣列。 (IX509Extension.get_RawData) |
IX509Extension::Initialize 使用物件識別碼 (OID) 和包含辨別編碼規則 (DER) 編碼延伸模組的位元組數位,初始化 IX509Extension 物件。 |
IX509Extension::p ut_Critical 指定及擷取布爾值,識別憑證延伸模組是否重要。 (放) |
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
支援的最低伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
目標平臺 | 窗戶 |
標頭 | certenroll.h |