在 CA 端签署 CSR 时,如何用自定义值覆盖特定 DN 字段?我想忽略 CSR 中写的内容。例如碳含量和氧=字段并将其替换为静态值。其他值,例如CN=,应该被 CSR 接受。
openssl/ca/策略配置仅支持匹配和供给选项。
答案1
无法使用 OpenSSL 配置文件覆盖 CSR 中的字段。配置文件只能提供默认值。我可以看到两个选项:
- 如果您使用
openssl ca
命令签署 CSR,则可以使用参数覆盖 CSR 中的主题-subject
。因此,从 CSR (openssl req -noout -subject -in req.pem
) 获取主题,搜索并替换要更改的字段,然后在命令行中使用 指定更改的主题-subject
。 - 如果您想要的静态字段始终具有相同的值,则您可以构建 CA 证书,以便您的策略配置可以
match
为静态字段指定,即,您的 CA 证书在其自己的字段中包含静态值(例如O
,OU
)。