以下错误与前一示例中显示的错误相似,但原因不同。
pkg install: The certificate which issued this certificate: /C=US/ST=California/L=Menlo Park/O=pkg5/CN=cs1_cs8_ch1_ta3/emailAddress=cs1_cs8_ch1_ta3 could not be found. The issuer is: /C=US/ST=California/L=Menlo Park/O=pkg5/CN=cs8_ch1_ta3/emailAddress=cs8_ch1_ta3 The package involved is: pkg://test/example_pkg@1.0,5.11-0:20110919T201101Z
在本例中,使用 cs1_cs8_ch1_ta3 证书对软件包进行签名,该证书则由 cs8_ch1_ta3 证书进行签名。
问题是 cs8_ch1_ta3 证书未被授权对其他证书进行签名。具体来说,cs8_ch1_ta3 证书将 basicConstraints 扩展设置为 CA:false 并标记为关键。
当 pkg 命令验证信任链时,没有找到允许对 cs1_cs8_ch1_ta3 证书进行签名的证书。因为信任链不能从叶到根进行验证,所以 pkg 命令阻止安装软件包。