CERT_SELECT_CHAIN_PARA 结构 (wincrypt.h)

CERT_SELECT_CHAIN_PARA 结构包含用于生成和选择链的参数。 CertGetCertificateChainCertSelectCertificateChains 函数使用此结构。

语法

typedef struct _CERT_SELECT_CHAIN_PARA {
  HCERTCHAINENGINE hChainEngine;
  PFILETIME        pTime;
  HCERTSTORE       hAdditionalStore;
  PCERT_CHAIN_PARA pChainPara;
  DWORD            dwFlags;
} CERT_SELECT_CHAIN_PARA, *PCERT_SELECT_CHAIN_PARA;

成员

hChainEngine

用于生成链的链引擎的句柄。 如果 hChainEngine 参数的值为 NULL,则使用默认链引擎 HCCE_CURRENT_USER

pTime

指向 FILETIME 结构的指针,该结构包含要验证链的时间。 如果 pTime 参数的值为 NULL,则当前系统时间将传递给此参数。

注意 该时间不会影响信任列表、吊销或根存储检查。
 

hAdditionalStore

用于搜索支持证书和证书信任列表的任何其他存储的句柄 (CTL) 。 如果不搜索其他存储,此参数可以为 NULL

pChainPara

指向包含链构建参数 的CERT_CHAIN_PARA 结构的指针。

dwFlags

指示链生成期间特殊处理的标志值。

含义
CERT_CHAIN_REVOCATION_CHECK_CACHE_ONLY
0x00000004
吊销检查仅访问缓存的 URL。
CERT_CHAIN_CACHE_ONLY_URL_RETRIEVAL
0x80000000
在生成证书链时仅使用缓存的 URL。 不会在 Internet 和 Intranet 中搜索基于 URL 的对象。

注解

对作为受信任根的特定证书的信任基于根存储的当前状态,而不是此参数传入的时间根存储的状态。 对于吊销,证书吊销列表 (CRL) 本身在当前时间必须有效。 此参数的值用于确定是否吊销 CRL 中列出的证书。

以下说明适用于强签名检查:

  • 可以使用 pChainPara 成员引用的 CERT_CHAIN_PARA 结构启用强签名检查。 CERT_CHAIN_PARA 结构的 pStrongSignPara 成员指向可用于确定签名强度的CERT_STRONG_SIGN_PARA结构。
  • 启用强检查并遇到弱签名时,CERT_TRUST_IS_NOT_SIGNATURE_VALIDCERT_TRUST_HAS_WEAK_SIGNATURE错误在CERT_TRUST_STATUS结构的 dwErrorStatus 字段中设置。

要求

要求
最低受支持的客户端 Windows 7 [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 R2 [仅限桌面应用]
标头 wincrypt.h