CERT_CHAIN_POLICY_PARA 结构 (wincrypt.h)

CERT_CHAIN_POLICY_PARA结构包含 CertVerifyCertificateChainPolicy 中用于建立证书链验证策略条件的信息。

语法

typedef struct _CERT_CHAIN_POLICY_PARA {
  DWORD cbSize;
  DWORD dwFlags;
  void  *pvExtraPolicyPara;
} CERT_CHAIN_POLICY_PARA, *PCERT_CHAIN_POLICY_PARA;

成员

cbSize

此结构的大小(以字节为单位)。

dwFlags

一组标志,指示在生成证书链时可能无效且将被忽略的条件。

CertVerifyCertificateChainPolicy 函数的 pszPolicyOID 参数可以包含以下值之一:

  • CERT_CHAIN_POLICY_BASE
  • CERT_CHAIN_POLICY_AUTHENTICODE
  • CERT_CHAIN_POLICY_AUTHENTICODE_TS
  • CERT_CHAIN_POLICY_SSL
  • CERT_CHAIN_POLICY_NT_AUTH
如果 CertVerifyCertificateChainPolicy 函数的 pszPolicyOID 参数包含上述值之一,则此成员可以是零,也可以是以下一个或多个值的组合。
含义
CERT_CHAIN_POLICY_IGNORE_NOT_TIME_VALID_FLAG
忽略时间无效错误。
CERT_CHAIN_POLICY_IGNORE_CTL_NOT_TIME_VALID_FLAG
忽略 证书信任列表 (CTL) 无效错误。
CERT_CHAIN_POLICY_IGNORE_NOT_TIME_NESTED_FLAG
忽略时间嵌套错误。
CERT_CHAIN_POLICY_IGNORE_ALL_NOT_TIME_VALID_FLAGS
忽略所有时间有效性错误。
CERT_CHAIN_POLICY_IGNORE_INVALID_BASIC_CONSTRAINTS_FLAG
忽略基本约束错误。
CERT_CHAIN_POLICY_ALLOW_UNKNOWN_CA_FLAG
允许不受信任的根。
CERT_CHAIN_POLICY_IGNORE_WRONG_USAGE_FLAG
忽略无效使用错误。
CERT_CHAIN_POLICY_IGNORE_INVALID_NAME_FLAG
忽略无效名称错误。
CERT_CHAIN_POLICY_IGNORE_INVALID_POLICY_FLAG
忽略无效策略错误。
CERT_CHAIN_POLICY_IGNORE_END_REV_UNKNOWN_FLAG
忽略获取有效吊销信息时出现的错误。
CERT_CHAIN_POLICY_IGNORE_CTL_SIGNER_REV_UNKNOWN_FLAG
忽略获取有效 CTL 吊销信息时出现的错误。
CERT_CHAIN_POLICY_IGNORE_CA_REV_UNKNOWN_FLAG
忽略在获取有效的 证书颁发机构 (CA) 吊销信息时出现的错误。
CERT_CHAIN_POLICY_IGNORE_ROOT_REV_UNKNOWN_FLAG
忽略获取有效根吊销信息时出现的错误。
CERT_CHAIN_POLICY_IGNORE_ALL_REV_UNKNOWN_FLAGS
忽略获取有效吊销信息时出现的错误。
CERT_CHAIN_POLICY_ALLOW_TESTROOT_FLAG
允许不受信任的测试根。
CERT_CHAIN_POLICY_TRUST_TESTROOT_FLAG
始终信任测试根。
CERT_CHAIN_POLICY_IGNORE_NOT_SUPPORTED_CRITICAL_EXT_FLAG
忽略不支持的关键扩展错误。
CERT_CHAIN_POLICY_IGNORE_PEER_TRUST_FLAG
忽略对等信任。
 

如果 CertVerifyCertificateChainPolicy 函数的 pszPolicyOID 参数包含CERT_CHAIN_POLICY_BASIC_CONSTRAINTS,则此成员可以是零,也可以是以下一个或多个值的组合。

含义
CERT_CHAIN_POLICY_IGNORE_PEER_TRUST_FLAG
忽略对等信任。
BASIC_CONSTRAINTS_CERT_CHAIN_POLICY_CA_FLAG
检查第一个证书元素是否为 CA。
BASIC_CONSTRAINTS_CERT_CHAIN_POLICY_END_ENTITY_FLAG
检查第一个证书元素是否为结束实体。
 

如果 CertVerifyCertificateChainPolicy 函数的 pszPolicyOID 参数包含CERT_CHAIN_POLICY_MICROSOFT_ROOT,则此成员可以为零或以下值。

含义
MICROSOFT_ROOT_CERT_CHAIN_POLICY_ENABLE_TEST_ROOT_FLAG
除了 Microsoft 公共根之外,还检查 Microsoft 测试根。
注意 Windows 测试根证书必须安装在受信任的根证书颁发机构证书存储中,此操作才能成功。
 

pvExtraPolicyPara

提供其他有效性策略条件的 pszPolicyOID 特定结构的地址。

要求

   
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
标头 wincrypt.h