ICertificatePolicy 接口 (certenroll.h)

ICertificatePolicy 接口可用于指定一个证书策略,该策略标识可以使用证书的用途。 策略收集到 ICertificatePolicies 对象中,可用于初始化 IX509ExtensionCertificatePoliciesIX509ExtensionMSApplicationPolicies 对象。

以下语法显示了两个扩展对象使用的 抽象语法表示法一 (ASN.1) 结构。 扩展值使用 可辨别编码规则 ( DER) 进行编码,并包含在证书请求中。 证书策略集合由一系列 对象标识符 (OID) 和每个策略 OID 的策略限定符的可选序列组成。

注意IPolicyQualifier 接口定义的策略限定符由 CertificatePolicies 扩展使用,而不是由 MSApplicationPolicies 扩展使用。

 

----------------------------------------------------------------------
-- CertificatePolicies
-- XCN_OID_CERT_POLICIES (2.5.29.32)
----------------------------------------------------------------------

CertificatePolicies ::= SEQUENCE OF PolicyInformation

PolicyInformation ::= SEQUENCE 
{
   policyIdentifier    EncodedObjectID,
   policyQualifiers    PolicyQualifiers OPTIONAL
}

PolicyQualifiers ::=  SEQUENCE OF PolicyQualifierInfo

PolicyQualifierInfo ::= SEQUENCE 
{
   policyQualifierId   EncodedObjectID,
   qualifier           NOCOPYANY OPTIONAL
}

颁发策略由 IX509ExtensionCertificatePolicies 对象定义,用于标识证书中显示的标识受信任程度。 以下策略是预定义的。 每个 OID 的 x.y.z 部分表示每个林唯一的随机生成的数值序列。 还可以创建自定义 OID 来表示自定义颁发策略。

策略 描述
所有颁发 (2.5.29.32.0) 包含所有其他策略。 这通常仅分配给证书颁发机构证书。 OID 已XCN_OID_ANY_CERT_POLICY。
低保障 (1.3.6.1.4.1.311.21.8.x.y.z.1.400) 指示颁发证书时没有额外的安全要求。
中等保障 (1.3.6.1.4.1.311.21.8.x.y.z.1.401) 指示证书颁发具有其他安全要求。 例如,该策略可能要求证书主体实际出现在证书颁发机构之前。
高保障 (1.3.6.1.4.1.311.21.8.x.y.z.1.402) 指示颁发具有最高安全性的证书。 例如,颁发密钥恢复代理证书可能需要额外的背景检查和指定审批者的数字签名,因为持有此证书的人员可以从 CA 恢复私钥材料。
 

应用程序策略(由 IX509ExtensionMSApplicationPolicies 对象定义)允许应用程序通过将它将接受的策略 OID 与证书中包含的策略 OID 进行比较来筛选证书。 MSApplicationPolicies 扩展与 EnhancedKeyUsage 扩展非常相似,但通常用于策略映射。

继承

ICertificatePolicy 接口继承自 IDispatch 接口。 ICertificatePolicy 还具有以下类型的成员:

方法

ICertificatePolicy 接口具有这些方法。

 
ICertificatePolicy::get_ObjectId

检索策略对象的对象标识符 (OID) 。
ICertificatePolicy::get_PolicyQualifiers

检索可应用于证书策略的可选策略限定符的集合。
ICertificatePolicy::Initialize

从对象标识符初始化对象 (OID) 。

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 certenroll.h

另请参阅

CertEnroll 接口

ICertificatePolicies

IDispatch

IX509ExtensionCertificatePolicies