netapp.ontap.na_ontap_security_certificates 模块 – NetApp ONTAP 安全证书管理。
注意
此模块是 netapp.ontap 集合 (版本 22.13.0) 的一部分。
如果您使用的是 ansible
包,则可能已安装此集合。它不包含在 ansible-core
中。要检查是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install netapp.ontap
。您需要其他要求才能使用此模块,请参阅 要求 了解详情。
要在剧本中使用它,请指定:netapp.ontap.na_ontap_security_certificates
。
netapp.ontap 20.7.0 中的新增功能
概要
在 ONTAP 上安装或删除安全证书。(创建和签名将在第二次迭代中进行)
要求
执行此模块的主机需要以下要求。
Ansible 2.9 或更高版本 - 建议使用 2.12 或更高版本。
Python3 - 建议使用 3.9 或更高版本。
使用 ZAPI 时,netapp-lib 2018.11.13 或更高版本(使用“pip install netapp-lib”安装),强烈建议使用 netapp-lib 2020.3.12,因为它可以为连接问题提供更好的错误报告。
物理或虚拟集群式 Data ONTAP 系统,模块支持 Data ONTAP 9.1 及更高版本,REST 支持需要 ONTAP 9.6 或更高版本。
参数
参数 |
注释 |
---|---|
SSL 客户端证书文件(.pem)的路径。 python 2.6 不支持。 |
|
证书的通用名称。 创建和安装时必填。 如果存在 name,则在签名和删除时忽略。 如果 name 不存在或被忽略,则签名和删除时必填。 |
|
证书到期时间。创建证书时建议指定到期时间。 签名证书时可以提供。 |
|
启用或禁用新功能。 这可用于启用实验性功能或禁用破坏向后兼容性的新功能。 支持的键和值可能会随时更改,恕不另行通知。未知键将被忽略。 |
|
使用 REST 时覆盖集群 ONTAP 版本。 如果版本与目标集群不匹配,则行为未定义。 这是在由于权限问题无法读取集群版本时提供的解决方法。https://github.com/ansible-collections/netapp.ontap/wiki/Known-issues 这应采用 9.10 或 9.10.1 的形式,每个元素都是整数。 当 ZAPI 忽略。 |
|
哈希函数。创建自签名证书或签名证书时可以提供。 创建和签名的允许值是 sha256、sha224、sha384、sha512。 |
|
ONTAP 实例的主机名或 IP 地址。 |
|
使用此端口覆盖默认端口 (80 或 443) |
|
启用和禁用 https。 使用 REST 时忽略,因为只支持 https。 使用 SSL 证书身份验证时忽略,因为它需要 SSL。 选项
|
|
ONTAP 9.6 和 9.7 REST API 不支持 *name*。 如果设置为 true,则如果存在 *name*,并且不使用 *name*,则不会报告错误。 选项
|
|
PEM 格式的中间证书链。 仅在安装证书时有效。 |
|
SSL 客户端密钥文件的路径。 |
|
证书的密钥大小(以位为单位)。创建证书时建议指定强密钥大小。 签名和删除时忽略。 |
|
每个 SVM 的安全证书的唯一名称。 此参数不支持 ONTAP 9.6 或 9.7,因为 REST API 不支持它。 如果与 ONTAP 9.6 或 9.7 一起出现,则默认情况下会被忽略,请参见 *ignore_name_if_not_supported*。 强烈建议对更新版本的 ONTAP 使用 name。 |
|
要使用的 ontap api 版本 |
|
指定用户的密码。 |
|
PEM 格式的私钥证书。 安装 CA 签名的证书时必填。否则忽略。 |
|
PEM 格式的公钥证书。 安装证书时必填。否则忽略。 |
|
如果存在,则使用 name 和 svm 标识的证书来签名请求。 返回签名的证书。 |
|
指定的安全证书是否存在。 选项
|
|
SVM(vserver)的名称。 如果存在,则证书安装在 SVM 中。 如果不存在,则证书安装在集群中。 |
|
证书类型 创建和安装时必填。 如果存在 name,则在签名和删除时忽略。 如果 name 不存在或被忽略,则签名和删除时必填。 选项
|
|
是否使用REST或ZAPI。 always – 如果模块支持REST,则始终使用REST API。如果模块不支持REST,则会发出警告。如果REST不支持模块选项,则会发出错误。 never – 如果模块支持ZAPI,则始终使用ZAPI。如果ZAPI不支持REST选项,则可能会发出错误。 auto – 如果模块支持REST并且支持模块选项,则尝试使用REST API。否则回退到ZAPI。 默认值: |
|
这可以是集群范围或SVM范围的帐户,具体取决于是否需要集群级或SVM级API。 更多信息,请阅读文档 https://mysupport.netapp.com/NOW/download/software/nmsdk/9.4/。 支持两种身份验证方法
要使用证书,必须已将证书安装在ONTAP集群中,并且必须已启用证书身份验证。 |
|
如果设置为 这应该仅设置为 选项
|
备注
注意
支持检查模式。
仅支持REST。需要ONTAP 9.6或更高版本,推荐ONTAP 9.8或更高版本。
以na_ontap为前缀的模块旨在支持ONTAP存储平台。
默认情况下启用https,并建议使用https。要在集群上启用http,必须运行以下命令“set -privilege advanced;”“system services web modify -http-enabled true;”
示例
- name: install certificate
netapp.ontap.na_ontap_security_certificates:
# <<: *cert_login
common_name: "{{ ontap_cert_common_name }}"
name: "{{ ontap_cert_name }}"
public_certificate: "{{ ssl_certificate }}"
type: client_ca
svm: "{{ vserver }}"
# ignore svm option for cluster/admin vserver.
- name: install certificate in cluster vserver.
netapp.ontap.na_ontap_security_certificates:
# <<: *cert_login
common_name: "{{ ontap_cert_common_name }}"
name: "{{ ontap_cert_name }}"
public_certificate: "{{ ssl_certificate }}"
type: client_ca
- name: create certificate
netapp.ontap.na_ontap_security_certificates:
# <<: *cert_login
common_name: "{{ ontap_cert_root_common_name }}"
name: "{{ ontap_cert_name }}"
type: root_ca
svm: "{{ vserver }}"
expiry_time: P365DT # one year
- name: sign certificate using newly create certificate
tags: sign_request
netapp.ontap.na_ontap_security_certificates:
# <<: *login
name: "{{ ontap_cert_name }}"
svm: "{{ vserver }}"
signing_request: |
-----BEGIN CERTIFICATE REQUEST-----
MIIChDCCAWwCAQAwPzELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkNBMRIwEAYDVQQH
DAlTdW5ueXZhbGUxDzANBgNVBAoMBk5ldEFwcDCCASIwDQYJKoZIhvcNAQEBBQAD
ggEPADCCAQoCggEBALgXCj6Si/I4xLdV7wjWYTbt8jY20fQOjk/4E7yBT1vFBflE
ks6YDc6dhC2G18cnoj9E3DiR8lIHPoAlFB/VmBNDev3GZkbFlrbV7qYmf8OEx2H2
tAefgSP0jLmCHCN1yyhJoCG6FsAiD3tf6yoyFF6qS9ureGL0tCJJ/osx64WzUz+Q
EN8lx7VSxriEFMSjreXZDhUFaCdIYKKRENuEWyYvdy5cbBmczhuM8EP6peOVv5Hm
BJzPUDkq7oTtEHmttpATq2Y92qzNzETO0bXN5X/93AWri8/yEXdX+HEw1C/omtsE
jGsCXrCrIJ+DgUdT/GHNdBWlXl/cWGtEgEQ4vrUCAwEAAaAAMA0GCSqGSIb3DQEB
CwUAA4IBAQBjZNoQgr/JDm1T8zyRhLkl3zw4a16qKNu/MS7prqZHLVQgrptHRegU
Hbz11XoHfVOdbyuvtzEe95QsDd6FYCZ4qzZRF3se4IjMeqwdQZ5WP0/GFiwM8Uln
/0TCWjt759XMeUX7+wgOg5NRjJ660eWMXzu/UJf+vZO0Q2FiPIr13JvvY3TjT+9J
UUtK4r9PaUuOPN2YL9IQqSD3goh8302Qr3nBXUgjeUGLkgfUM5S39apund2hyTX2
JCLQsKr88pwU9iDho2tHLv/2QgLwNZLPu8V+7IGu6G4vB28lN4Uy7xbhxFOKtyWu
fK4sEdTw3B/aDN0tB8MHFdPYycNZsEac
-----END CERTIFICATE REQUEST-----
expiry_time: P180DT
- name: delete certificate
netapp.ontap.na_ontap_security_certificates:
# <<: *cert_login
state: absent
name: "{{ ontap_cert_name }}"
svm: "{{ vserver }}"
# For ONTAP 9.6 or 9.7, use common_name and type, in addition to, or in lieu of name
- name: install certificate
netapp.ontap.na_ontap_security_certificates:
# <<: *cert_login
common_name: "{{ ontap_cert_common_name }}"
public_certificate: "{{ ssl_certificate }}"
type: client_ca
svm: "{{ vserver }}"
- name: create certificate
netapp.ontap.na_ontap_security_certificates:
# <<: *cert_login
common_name: "{{ ontap_cert_root_common_name }}"
type: root_ca
svm: "{{ vserver }}"
expiry_time: P365DT # one year
- name: sign certificate using newly create certificate
tags: sign_request
netapp.ontap.na_ontap_security_certificates:
# <<: *login
common_name: "{{ ontap_cert_root_common_name }}"
type: root_ca
svm: "{{ vserver }}"
signing_request: |
-----BEGIN CERTIFICATE REQUEST-----
MIIChDCCAWwCAQAwPzELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkNBMRIwEAYDVQQH
DAlTdW5ueXZhbGUxDzANBgNVBAoMBk5ldEFwcDCCASIwDQYJKoZIhvcNAQEBBQAD
ggEPADCCAQoCggEBALgXCj6Si/I4xLdV7wjWYTbt8jY20fQOjk/4E7yBT1vFBflE
ks6YDc6dhC2G18cnoj9E3DiR8lIHPoAlFB/VmBNDev3GZkbFlrbV7qYmf8OEx2H2
tAefgSP0jLmCHCN1yyhJoCG6FsAiD3tf6yoyFF6qS9ureGL0tCJJ/osx64WzUz+Q
EN8lx7VSxriEFMSjreXZDhUFaCdIYKKRENuEWyYvdy5cbBmczhuM8EP6peOVv5Hm
BJzPUDkq7oTtEHmttpATq2Y92qzNzETO0bXN5X/93AWri8/yEXdX+HEw1C/omtsE
jGsCXrCrIJ+DgUdT/GHNdBWlXl/cWGtEgEQ4vrUCAwEAAaAAMA0GCSqGSIb3DQEB
CwUAA4IBAQBjZNoQgr/JDm1T8zyRhLkl3zw4a16qKNu/MS7prqZHLVQgrptHRegU
Hbz11XoHfVOdbyuvtzEe95QsDd6FYCZ4qzZRF3se4IjMeqwdQZ5WP0/GFiwM8Uln
/0TCWjt759XMeUX7+wgOg5NRjJ660eWMXzu/UJf+vZO0Q2FiPIr13JvvY3TjT+9J
UUtK4r9PaUuOPN2YL9IQqSD3goh8302Qr3nBXUgjeUGLkgfUM5S39apund2hyTX2
JCLQsKr88pwU9iDho2tHLv/2QgLwNZLPu8V+7IGu6G4vB28lN4Uy7xbhxFOKtyWu
fK4sEdTw3B/aDN0tB8MHFdPYycNZsEac
-----END CERTIFICATE REQUEST-----
expiry_time: P180DT
- name: delete certificate
netapp.ontap.na_ontap_security_certificates:
# <<: *cert_login
state: absent
common_name: "{{ ontap_cert_root_common_name }}"
type: root_ca
name: "{{ ontap_cert_name }}"
svm: "{{ vserver }}"
返回值
常用返回值已在此处记录,以下是此模块特有的字段
键 |
描述 |
---|---|
签名时返回public_certificate,创建、安装和删除时为空。 返回:始终 示例: |