为测试添加证书

有时我们需要为需要自定义客户端、服务器或证书颁发机构 (CA) 证书的场景编写测试。为此,您可以使用 build/pgo/genpgocert.py 生成此类证书。

证书规范(以及密钥规范)位于 build/pgo/certs/ 中。

要添加新的**服务器证书**,请将 ${cert_name}.certspec 文件添加到该文件夹中。如果它需要非默认私钥,请添加相应的 ${cert_name}.server.keyspec

对于新的**客户端证书**,请添加 ${cert_name}.client.keyspec 和相应的 ${cert_name}.certspec

要添加新的**CA**,请添加 ${cert_name}.ca.keyspec 以及相应的 ${cert_name}.certspec 到该文件夹中。

然后通过运行以下命令重新生成证书:

./mach python build/pgo/genpgocert.py

这些命令将修改 cert9.db 和 key4.db,如果您添加了 .keyspec 文件,则会生成 {$cert_name}.client{$cert_name}.ca 文件。

这些文件需要提交。

如果您创建了一个新的服务器证书,您可能希望修改 build/pgo/server-locations.txt 以添加具有您指定证书的位置:

https://my-test.example.com:443           cert=${cert_name}

之后,您需要再次运行 ./mach build

重要

确保严格遵循命名约定并在所有地方使用相同的 cert_name