Модуль community.general.java_cert – Использует keytool для импорта сертификата в хранилище ключей Java (cacerts) и удаления из него
Примечание
Этот модуль входит в коллекцию community.general (версия 12.6.1).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Чтобы установить её, используйте: ansible-galaxy collection install community.general. Для использования этого модуля требуются дополнительные компоненты. Подробнее см. в разделе Требования.
Чтобы использовать модуль в плейбуке, укажите: community.general.java_cert.
Краткое описание
- Этот модуль-обёртка для keytool позволяет импортировать сертификаты и, при необходимости, закрытые ключи в указанное хранилище ключей Java или удалять их из него.
Требования
На узле, выполняющем этот модуль, необходимы следующие компоненты.
- openssl
- keytool
Параметры
Параметр | Комментарии |
|---|---|
attributes псевдонимы: attr string добавлено в community.general 8.5.0 | Атрибуты, которые должен иметь результирующий объект файловой системы. Список поддерживаемых флагов см. на странице руководства для Эта строка должна содержать атрибуты в том же порядке, в котором они отображаются командой По умолчанию предполагается оператор |
cert_alias string | Псевдоним импортированного сертификата. Псевдоним используется для проверки наличия сертификата в хранилище ключей. |
cert_content string добавлено в community.general 8.6.0 | Содержимое сертификата, используемого для создания хранилища ключей. Для загрузки сертификата требуется указать ровно один из параметров |
cert_path path | Локальный путь, откуда загружается сертификат. Для загрузки сертификата требуется указать ровно один из параметров |
cert_port integer | Порт для подключения к URL. Используется для создания URL сервера:ПОРТ. По умолчанию: |
cert_url string | Базовый URL для получения SSL-сертификата. Для загрузки сертификата требуется указать ровно один из параметров |
executable string | Путь к исполняемому файлу keytool. Если не указан, файл ищется в PATH. По умолчанию: |
group string добавлено в community.general 8.5.0 | Имя группы, которой должен принадлежать объект файловой системы; это значение передаётся команде Если параметр не указан, используется текущая группа текущего пользователя, если только это не root; в таком случае может быть сохранена прежняя принадлежность. |
keystore_create boolean | Создавать хранилище ключей, если оно не существует. Варианты:
|
keystore_pass string / обязательный | Пароль хранилища ключей. |
keystore_path path | Путь к хранилищу ключей. |
keystore_type string | Тип хранилища ключей (JCEKS, JKS). |
mode any добавлено в community.general 8.5.0 | Права доступа, которые должен иметь результирующий объект файловой системы. Тем, кто привык к Если передать Ansible число, не соблюдая ни одно из этих правил, оно будет интерпретировано как десятичное, что приведёт к неожиданным результатам. Начиная с Ansible 1.8, режим можно задавать в символьном формате (например, Если Если Указание |
owner string добавлено в community.general 8.5.0 | Имя пользователя, которому должен принадлежать объект файловой системы; это значение передаётся команде Если параметр не указан, используется текущий пользователь, если только это не root; в таком случае может быть сохранена прежняя принадлежность. Числовое имя пользователя будет считаться идентификатором пользователя, а не именем. Во избежание неоднозначности не используйте числовые имена пользователей. |
pkcs12_alias string | Псевдоним в хранилище ключей PKCS12. |
pkcs12_password string | Пароль для импорта из хранилища ключей PKCS12. |
pkcs12_path path | Локальный путь к хранилищу ключей PKCS12. В отличие от Для загрузки сертификата требуется указать ровно один из параметров |
selevel string добавлено в community.general 8.5.0 | Уровень контекста объекта файловой системы SELinux. Это атрибут MLS/MCS, иногда называемый Если задано значение |
serole string добавлено в community.general 8.5.0 | Роль в контексте объекта файловой системы SELinux. Если задано значение |
setype string добавлено в community.general 8.5.0 | Тип в контексте объекта файловой системы SELinux. Если задано значение |
seuser string добавлено в community.general 8.5.0 | Пользователь в контексте объекта файловой системы SELinux. По умолчанию используется политика Если задано значение |
state string | Определяет действие: импорт сертификата или его удаление. При значении Варианты:
|
trust_cacert boolean добавлено в community.general 0.2.0 | Доверять импортированному сертификату как сертификату центра сертификации (CAcert). Варианты:
|
unsafe_writes boolean добавлено в community.general 8.5.0 | Определяет, когда использовать атомарные операции для предотвращения повреждения данных или несогласованного чтения целевого объекта файловой системы. По умолчанию этот модуль использует атомарные операции для предотвращения повреждения данных или несогласованного чтения целевых объектов файловой системы, однако иногда настройки систем или их неисправности этому мешают. Например, смонтированные в Docker объекты файловой системы нельзя атомарно обновить из контейнера — запись возможна только небезопасным способом. Этот параметр позволяет Ansible использовать небезопасные методы обновления объектов файловой системы, если атомарные операции завершаются ошибкой (однако он не заставляет Ansible выполнять небезопасную запись). ВАЖНО! Небезопасная запись подвержена гонкам и может привести к повреждению данных. Варианты:
|
Атрибуты
Атрибут | Поддержка | Описание |
|---|---|---|
check_mode | Поддержка: полная | Может работать в режиме |
diff_mode | Поддержка: полная | В режиме diff возвращает сведения об изменениях (или о возможных изменениях в |
Примеры
- name: Import SSL certificate from google.com to a given cacerts keystore
community.general.java_cert:
cert_url: google.com
cert_port: 443
keystore_path: /usr/lib/jvm/jre7/lib/security/cacerts
keystore_pass: changeit
state: present
- name: Remove certificate with given alias from a keystore
community.general.java_cert:
cert_url: google.com
keystore_path: /usr/lib/jvm/jre7/lib/security/cacerts
keystore_pass: changeit
executable: /usr/lib/jvm/jre7/bin/keytool
state: absent
- name: Import trusted CA from SSL certificate
community.general.java_cert:
cert_path: /opt/certs/rootca.crt
keystore_path: /tmp/cacerts
keystore_pass: changeit
keystore_create: true
state: present
cert_alias: LE_RootCA
trust_cacert: true
- name: Import trusted CA from the SSL certificate stored in the cert_content variable
community.general.java_cert:
cert_content: |
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
keystore_path: /tmp/cacerts
keystore_pass: changeit
keystore_create: true
state: present
cert_alias: LE_RootCA
trust_cacert: true
- name: Import SSL certificate from google.com to a keystore, create it if it doesn't exist
community.general.java_cert:
cert_url: google.com
keystore_path: /tmp/cacerts
keystore_pass: changeit
keystore_create: true
state: present
- name: Import a pkcs12 keystore with a specified alias, create it if it doesn't exist
community.general.java_cert:
pkcs12_path: "/tmp/importkeystore.p12"
cert_alias: default
keystore_path: /opt/wildfly/standalone/configuration/defaultkeystore.jks
keystore_pass: changeit
keystore_create: true
state: present
- name: Import SSL certificate to JCEKS keystore
community.general.java_cert:
pkcs12_path: "/tmp/importkeystore.p12"
pkcs12_alias: default
pkcs12_password: somepass
cert_alias: default
keystore_path: /opt/someapp/security/keystore.jceks
keystore_type: "JCEKS"
keystore_pass: changeit
keystore_create: true
state: present
Возвращаемые значения
Общие возвращаемые значения описаны здесь. Ниже перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
cmd string | Выполненная команда для выполнения действия. Возвращается: при успехе Пример: |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/community/general/java_cert_module.html