community.crypto.certificate_complete_chain 模块 – 给定一组不受信任的和根证书来完成证书链
注意
此模块是 community.crypto 集合 (版本 2.22.3) 的一部分。
如果您使用的是 ansible
包,则可能已安装此集合。它不包含在 ansible-core
中。要检查它是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用: ansible-galaxy collection install community.crypto
。您需要其他要求才能使用此模块,有关详细信息,请参见 要求。
要在剧本中使用它,请指定: community.crypto.certificate_complete_chain
。
概要
此模块通过从给定的一组证书中查找中间证书来完成给定的 PEM 格式证书链,直到它在另一个给定的证书集中找到根证书。
例如,这可以用来查找 community.crypto.acme_certificate 返回的证书链的根证书。
请注意,此模块_不会_检查链的有效性。它只检查发行者和主题是否匹配,以及签名是否正确。它完全忽略有效期和密钥用法。如果您需要验证生成的链是否有效,请使用
openssl verify ...
。
要求
以下要求是在执行此模块的主机上需要的。
cryptography >= 1.5
参数
参数 |
注释 |
---|---|
一组以 PEM 格式形成链的证书的串联。 模块将尝试完成此链。 |
|
文件名或目录列表。 文件名假定指向包含一个或多个 PEM 格式证书的文件。此文件中的所有证书都将添加到根证书集中。 如果给出目录名,则将扫描目录及其子目录中的所有文件,并尝试将其解析为 PEM 格式的串联证书。 将跟踪符号链接。 默认值: |
|
文件名或目录列表。 文件名假定指向包含一个或多个 PEM 格式证书的文件。此文件中的所有证书都将添加到根证书集中。 如果给出目录名,则将扫描目录及其子目录中的所有文件,并尝试将其解析为 PEM 格式的串联证书。 将跟踪符号链接。 |
属性
属性 |
支持 |
描述 |
---|---|---|
支持:完全支持 此操作不会修改状态。 |
可以在 |
|
支持: N/A 此操作不会修改状态。 |
在差异模式下,将返回有关已更改内容(或可能需要在 |
示例
# Given a leaf certificate for www.ansible.com and one or more intermediate
# certificates, finds the associated root certificate.
- name: Find root certificate
community.crypto.certificate_complete_chain:
input_chain: "{{ lookup('ansible.builtin.file', '/etc/ssl/csr/www.ansible.com-fullchain.pem') }}"
root_certificates:
- /etc/ca-certificates/
register: www_ansible_com
- name: Write root certificate to disk
ansible.builtin.copy:
dest: /etc/ssl/csr/www.ansible.com-root.pem
content: "{{ www_ansible_com.root }}"
# Given a leaf certificate for www.ansible.com, and a list of intermediate
# certificates, finds the associated root certificate.
- name: Find root certificate
community.crypto.certificate_complete_chain:
input_chain: "{{ lookup('ansible.builtin.file', '/etc/ssl/csr/www.ansible.com.pem') }}"
intermediate_certificates:
- /etc/ssl/csr/www.ansible.com-chain.pem
root_certificates:
- /etc/ca-certificates/
register: www_ansible_com
- name: Write complete chain to disk
ansible.builtin.copy:
dest: /etc/ssl/csr/www.ansible.com-completechain.pem
content: "{{ ''.join(www_ansible_com.complete_chain) }}"
- name: Write root chain (intermediates and root) to disk
ansible.builtin.copy:
dest: /etc/ssl/csr/www.ansible.com-rootchain.pem
content: "{{ ''.join(www_ansible_com.chain) }}"
返回值
常见的返回值在 此处 有记录,以下是此模块特有的字段
键 |
描述 |
---|---|
添加到给定输入链的链。包括根证书。 作为 PEM 证书列表返回。 返回:成功 |
|
完整的链,包括叶子、所有中间证书和根证书。 作为 PEM 证书列表返回。 返回:成功 |
|
PEM 格式的根证书。 返回:成功 |