Модуль community.crypto.openssl_pkcs12 — создание архива OpenSSL PKCS#12
Примечание
Этот модуль входит в коллекцию community.crypto (версия 3.2.1).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Чтобы установить её, используйте: ansible-galaxy collection install community.crypto. Для использования этого модуля необходимы дополнительные требования; подробности см. в разделе Требования.
Чтобы использовать модуль в плейбуке, укажите: community.crypto.openssl_pkcs12.
Краткое описание
- Этот модуль позволяет создавать или повторно создавать PKCS#12.
- Модуль использует библиотеку Python cryptography.
Требования
Следующие требования необходимы на хосте, где выполняется этот модуль.
- cryptography >= 3.3
Параметры
Параметр | Комментарии |
|---|---|
action string |
Варианты:
|
attributes псевдонимы: attr string | Атрибуты, которые должен иметь итоговый объект файловой системы. Поддерживаемые флаги см. на странице руководства для Эта строка должна содержать атрибуты в том же порядке, в котором они отображаются командой По умолчанию предполагается оператор |
backup boolean | Создать файл резервной копии с отметкой времени, чтобы можно было восстановить исходный выходной файл, если вы случайно перезаписали его новым. Варианты:
|
certificate_content string добавлено в community.crypto 2.26.0 | Содержимое файла сертификата в формате PEM. Несовместим с |
certificate_path path | Путь для чтения сертификатов и закрытых ключей. Файлы должны быть в формате PEM. Несовместим с |
encryption_level string добавлено в community.crypto 2.8.0 | Определяет используемый уровень шифрования.
Примечание. Этот параметр не используется для проверки идемпотентности. Варианты:
|
force boolean | Следует ли повторно создавать файл, даже если он уже существует. Варианты:
|
friendly_name псевдонимы: name string | Указывает понятное имя сертификата и закрытого ключа. |
group string | Имя группы, которой должен принадлежать объект файловой системы; оно передаётся команде Если значение не указано, используется текущая группа текущего пользователя. Если пользователь — root, можно сохранить прежнего владельца. |
iter_size integer | Количество повторений шага шифрования. Это значение не учитывается при проверке идемпотентности. Используется только при При использовании значение по умолчанию — |
maciter_size integer | Количество повторений шага MAC. Это значение не учитывается при проверке идемпотентности. Это значение не используется. Параметр устарел и будет удалён из community.crypto 4.0.0. |
mode any | Права доступа, которые должен иметь итоговый объект файловой системы. Тем, кто привык к Если передать Ansible число, не соблюдая ни одно из этих правил, оно будет интерпретировано как десятичное, что приведёт к неожиданным результатам. Начиная с Ansible 1.8, режим можно указывать в символьном формате (например, Если Если Указание |
other_certificates псевдонимы: ca_certificates list / элементы=path | Список других сертификатов для включения. До Ansible 2.8 этот параметр назывался Предполагается, что в каждом файле содержится один сертификат в кодировке PEM. Если в файле несколько сертификатов PEM, установите для Несовместим с |
other_certificates_content list / элементы=string добавлено в community.crypto 2.26.0 | Список других сертификатов для включения. Предполагается, что каждый элемент содержит один сертификат в кодировке PEM. Если элемент содержит несколько сертификатов PEM, задайте Несовместим с |
other_certificates_parse_all boolean добавлено в community.crypto 1.4.0 | Если задано значение Варианты:
|
owner string | Имя пользователя, которому должен принадлежать объект файловой системы; оно передаётся команде Если значение не указано, используется текущий пользователь. Если пользователь — root, можно сохранить прежнего владельца. Числовое имя пользователя будет интерпретировано как идентификатор пользователя, а не как имя. Во избежание путаницы не используйте числовые имена пользователей. |
passphrase string | Пароль PKCS#12. Примечание: Шифрование PKCS12 обычно небезопасно, поэтому его не следует использовать как средство защиты. Если необходимо безопасно хранить файл PKCS12 или передавать его, дополнительно зашифруйте его другим способом. (Источник). |
path path / обязательный | Имя файла, в который нужно записать файл PKCS#12. |
privatekey_content string добавлено в community.crypto 2.3.0 | Содержимое файла закрытого ключа. Несовместим с |
privatekey_passphrase string | Источник парольной фразы для расшифровки входных закрытых ключей. |
privatekey_path path | Файл, из которого нужно прочитать закрытый ключ. Несовместим с |
return_content boolean добавлено в community.crypto 1.0.0 | Если задано значение Варианты:
|
select_crypto_backend string добавлено в community.crypto 1.7.0 | Определяет, какую криптографическую серверную часть использовать. По умолчанию выбрано Если задано значение Значение Обратите внимание: в community.crypto 3.0.0 все оставшиеся значения работают одинаково. В более поздней версии этот параметр будет признан устаревшим. Рекомендуется не задавать его явно. Варианты:
|
selevel string | Уровень контекста объекта файловой системы SELinux. Это атрибут MLS/MCS, иногда называемый Если задано значение |
serole string | Роль в контексте объекта файловой системы SELinux. Если задано значение |
setype string | Тип в контексте объекта файловой системы SELinux. Если задано значение |
seuser string | Пользователь в контексте объекта файловой системы SELinux. По умолчанию используется политика Если задано значение |
src path | Путь к файлу PKCS#12 для разбора. |
state string | Должен ли файл существовать. Все параметры, кроме Варианты:
|
unsafe_writes boolean | Определяет, когда следует использовать атомарную операцию, чтобы предотвратить повреждение данных или несогласованное чтение целевого объекта файловой системы. По умолчанию этот модуль использует атомарные операции для предотвращения повреждения данных или несогласованного чтения целевых объектов файловой системы, но иногда настройки системы или её неисправности не позволяют этого делать. Например, смонтированные объекты файловой системы Docker нельзя атомарно обновить из контейнера; их можно записывать только небезопасным способом. Этот параметр позволяет Ansible при сбое атомарных операций использовать небезопасные способы обновления объектов файловой системы (однако он не заставляет Ansible выполнять небезопасную запись). ВАЖНО! Небезопасная запись подвержена состоянию гонки и может привести к повреждению данных. Варианты:
|
Атрибуты
Атрибут | Поддержка | Описание |
|---|---|---|
check_mode | Поддержка: полная | Модуль может работать в режиме |
diff_mode | Поддержка: нет | В режиме сравнения будут возвращены сведения об изменениях (или возможных изменениях в |
idempotent | Поддержка: частичная Модуль не является идемпотентным, если | При повторном запуске подряд вне режима проверки с теми же аргументами второй запуск не сообщает об изменениях. Предполагается, что система, состояние которой контролирует или запрашивает модуль, не изменилась значимым образом. |
safe_file_operations | Поддержка: полная | Использует строгие функции Ansible для работы с файлами, чтобы обеспечить правильные права доступа и избежать повреждения данных. |
См. также
См. также
- community.crypto.x509_certificate
-
Создание и/или проверка сертификатов OpenSSL.
- community.crypto.openssl_csr
-
Создание запроса на подпись сертификата (CSR) OpenSSL.
- community.crypto.openssl_dhparam
-
Создание параметров Диффи — Хеллмана OpenSSL.
- community.crypto.openssl_privatekey
-
Создание закрытых ключей OpenSSL.
- community.crypto.openssl_publickey
-
Создание открытого ключа OpenSSL на основе закрытого ключа.
Примеры
---
- name: Generate PKCS#12 file
community.crypto.openssl_pkcs12:
action: export
path: /opt/certs/ansible.p12
friendly_name: raclette
privatekey_path: /opt/certs/keys/key.pem
certificate_path: /opt/certs/cert.pem
other_certificates: /opt/certs/ca.pem
# Note that if /opt/certs/ca.pem contains multiple certificates,
# only the first one will be used. See the other_certificates_parse_all
# option for changing this behavior.
state: present
- name: Generate PKCS#12 file
community.crypto.openssl_pkcs12:
action: export
path: /opt/certs/ansible.p12
friendly_name: raclette
privatekey_content: '{{ private_key_contents }}'
certificate_path: /opt/certs/cert.pem
other_certificates_parse_all: true
other_certificates:
- /opt/certs/ca_bundle.pem
# Since we set other_certificates_parse_all to true, all
# certificates in the CA bundle are included and not just
# the first one.
- /opt/certs/intermediate.pem
# In case this file has multiple certificates in it,
# all will be included as well.
state: present
- name: Change PKCS#12 file permission
community.crypto.openssl_pkcs12:
action: export
path: /opt/certs/ansible.p12
friendly_name: raclette
privatekey_path: /opt/certs/keys/key.pem
certificate_path: /opt/certs/cert.pem
other_certificates: /opt/certs/ca.pem
state: present
mode: '0600'
- name: Regen PKCS#12 file
community.crypto.openssl_pkcs12:
action: export
src: /opt/certs/ansible.p12
path: /opt/certs/ansible.p12
friendly_name: raclette
privatekey_path: /opt/certs/keys/key.pem
certificate_path: /opt/certs/cert.pem
other_certificates: /opt/certs/ca.pem
state: present
mode: '0600'
force: true
- name: Dump/Parse PKCS#12 file
community.crypto.openssl_pkcs12:
action: parse
src: /opt/certs/ansible.p12
path: /opt/certs/ansible.pem
state: present
- name: Remove PKCS#12 file
community.crypto.openssl_pkcs12:
path: /opt/certs/ansible.p12
state: absent
Возвращаемые значения
Общие возвращаемые значения описаны здесь; ниже перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
backup_file string | Имя созданного файла резервной копии. Возвращается: при изменении и если Пример: |
filename string | Путь к сгенерированному файлу PKCS#12. Возвращается: при изменении или успешном выполнении Пример: |
pkcs12 string добавлено в community.crypto 1.0.0 | Содержимое текущего или сгенерированного файла PKCS#12 в кодировке Base64. Возвращается: если |
privatekey string | Путь к закрытому ключу TLS/SSL, на основе которого был создан открытый ключ. Возвращается: при изменении или успешном выполнении Пример: |
Ссылки коллекции
© 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/crypto/openssl_pkcs12_module.html