ICE81
ICE81 可验证MsiDigitalCertificate 表、MsiDigitalSignature 表、MsiPatchCertificate 表和 MsiPackageCertificate 表。 此 ICE 自定义操作针对未使用或未引用的数字证书发出警告,并在已签名对象不存在或已签名对象的 Cabinet 未指向外部数据时发布错误。
请注意,ICE03 将验证 MsiDigitalSignature 表中 Table 列中的项是否为“Media”。
ICE81 针对未使用或未引用的数字证书发布以下警告。
ICE81 警告 | 说明 |
---|---|
在 MsiDigitalSignature、MsiPackageCertificate 或 MsiPatchCertificate 表中找不到对 MsiDigitalCertificate 表中任何记录的引用。 | 如果所有记录均未使用,则返回此警告。 |
在 MsiDigitalSignature、MsiPackageCertificate 或 MsiPatchCertificate 表中找不到对数字证书 [1] 的引用。 | 如果某些记录(但不是全部)未使用,则返回此警告。 |
ICE81 发布以下错误。
ICE81 错误 | 说明 |
---|---|
Media 表不存在。 因此 MsiDigitalSignature 中的所有项都不正确 | 已签名对象不存在。 如果 Media 表不存在,但 MsiDigitalSignature 包含项,则返回此错误。 |
Media 表中缺少已签名对象 [2] | 已签名对象 [2] 不存在。 如果 Media 表存在,但 Media 表中不存在 MsiDigitalSignature 中的此项,则返回此错误。 |
表 [1] 中具有键 [2] 的项已签名。 因此,Cabinet 应指向包外部的对象,(Cabinet 的值不应以 # 为前缀) | 已签名对象的 Cabinet 不指向外部数据。 [1] 为表名。 [2] 为 Media 表中的键。 |