Spec-Zone.ru › Ansible

Модуль community.crypto.x509_certificate – Генерация и/или проверка сертификатов OpenSSL

Примечание

Этот модуль является частью коллекции community.crypto (версия 2.22.1).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install community.crypto. Для использования этого модуля необходимы дополнительные требования. Подробности см. в разделе Требования.

Для использования в плейбуке укажите: community.crypto.x509_certificate.

  • Обзор
  • Требования
  • Параметры
  • Атрибуты
  • Примечания
  • См. также
  • Примеры
  • Возвращаемые значения

Обзор

  • Он реализует понятие провайдера (один из selfsigned, ownca, acme, и entrust для вашего сертификата).
  • Использует библиотеку cryptography Python для взаимодействия с OpenSSL.
  • Обратите внимание, что этот модуль назывался openssl_certificate при прямом включении в Ansible до версии 2.9. При переносе в коллекцию community.crypto, он был переименован в community.crypto.x509_certificate. В Ansible 2.10 и выше его по-прежнему можно использовать с старым коротким именем (или с ansible.builtin.openssl_certificate), которое перенаправляет на community.crypto.x509_certificate. При использовании FQCN или ключевого слова collections следует использовать новое имя community.crypto.x509_certificate для предотвращения предупреждения о устаревании.
  • Пожалуйста, обратите внимание, что модуль перегенерирует существующий сертификат, если он не соответствует параметрам модуля или кажется поврежденным. Если вы обеспокоены тем, что это может перезаписать ваш существующий сертификат, рассмотрите использование параметра backup.
  • Провайдер ownca предназначен для генерации сертификата OpenSSL, подписанного вашим собственным сертификатом CA (Certificate Authority) (самоподписанный сертификат).
  • Этот модуль позволяет (пере)генерировать сертификаты OpenSSL.

Требования

Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.

  • acme-tiny >= 4.0.0 (при использовании провайдера acme)
  • cryptography >= 1.6 (при использовании провайдера selfsigned или ownca)

Параметры

Параметр

Комментарии

acme_accountkey_path

path

Путь к accountkey для провайдера acme.

Используется только провайдером acme.

acme_chain

boolean

Включить промежуточный сертификат в сгенерированный сертификат

Используется только провайдером acme.

Обратите внимание, что это доступно только для более старых версий acme-tiny. Новые версии включают цепочку автоматически, а установка acme_chain в true приводит к ошибке.

Варианты:

  • false ← (default)
  • true

acme_challenge_path

path

Путь к каталогу ACME challenge, который размещен на http://<HOST>:80/.well-known/acme-challenge/

Используется только провайдером acme.

acme_directory

string

добавлено в community.crypto 1.0.0

Каталог ACME для использования. Вы можете использовать любой каталог, который поддерживает протокол ACME, например, Buypass или Let’s Encrypt.

Let’s Encrypt рекомендует использовать свой тестовый сервер во время разработки заданий. https://letsencrypt.org/docs/staging-environment/.

По умолчанию: "https://acme-v02.api.letsencrypt.org/directory"

attributes

псевдонимы: attr

string

Атрибуты, которыми должен обладать результирующий объект файловой системы.

Чтобы получить поддерживаемые флаги, посмотрите страницу руководства для chattr в целевой системе.

Эта строка должна содержать атрибуты в том же порядке, что и отображаемые lsattr.

Оператор = принимается по умолчанию, в противном случае необходимо включить операторы + или - в строку.

backup

boolean

Создать резервную копию файла, включая метку времени, чтобы вы могли вернуть исходный сертификат, если случайно перезаписали его новым.

Варианты:

  • false ← (default)
  • true

csr_content

string

добавлено в community.crypto 1.0.0

Содержимое запроса на подпись сертификата (CSR), используемого для генерации этого сертификата.

Взаимоисключающе с csr_path.

csr_path

path

Путь к запросу на подпись сертификата (CSR), используемому для генерации этого сертификата.

Взаимоисключающе с csr_content.

entrust_api_client_cert_key_path

path

Путь к закрытому ключу клиентского сертификата, используемого для аутентификации в API Entrust Certificate Services (ECS).

Используется только провайдером entrust.

Требуется, если провайдер — entrust.

entrust_api_client_cert_path

path

Путь к клиентскому сертификату, используемому для аутентификации в API Entrust Certificate Services (ECS).

Используется только провайдером entrust.

Требуется, если провайдер — entrust.

entrust_api_key

string

Ключ (пароль) для аутентификации в API Entrust Certificate Services (ECS).

Используется только провайдером entrust.

Требуется, если провайдер — entrust.

entrust_api_specification_path

path

Путь к файлу спецификации, определяющему конфигурацию API Entrust Certificate Services (ECS).

Вы можете использовать это, чтобы хранить локальную копию спецификации, чтобы избежать ее загрузки каждый раз при использовании модуля.

Используется только провайдером entrust.

По умолчанию: "https://cloud.entrust.net/EntrustCloud/documentation/cms-api-2.1.0.yaml"

entrust_api_user

string

Имя пользователя для аутентификации в API Entrust Certificate Services (ECS).

Используется только провайдером entrust.

Требуется, если провайдер — entrust.

entrust_cert_type

string

Укажите тип запрашиваемого сертификата.

Используется только провайдером entrust.

Варианты:

  • "STANDARD_SSL" ← (default)
  • "ADVANTAGE_SSL"
  • "UC_SSL"
  • "EV_SSL"
  • "WILDCARD_SSL"
  • "PRIVATE_SSL"
  • "PD_SSL"
  • "CDS_ENT_LITE"
  • "CDS_ENT_PRO"
  • "SMIME_ENT"

entrust_not_after

string

Момент времени, после которого сертификат перестаёт быть действительным.

Время может быть указано как относительное время или как абсолютная метка времени.

Действительный формат абсолютного времени — ASN.1 TIME например, 2019-06-18.

Действительный формат относительного времени — [+-]timespec, где timespec может быть целым числом + [w | d | h | m | s], например, +365d или +32w1d2h).

Время всегда интерпретируется как UTC.

Обратите внимание, что для указания даты истечения срока действия выпущенного сертификата поддерживается только дата (день, месяц, год).

Полная дата и время корректируются до EST (GMT -5:00) перед выпуском, что может привести к сертификату с датой истечения срока действия на один день раньше, чем ожидалось, если используется относительное время.

Минимальный срок действия сертификата составляет 90 дней, а максимальный — три года.

Если это значение не указано, сертификат перестанет быть действительным через 365 дней с даты выпуска.

Это используется только поставщиком entrust.

Обратите внимание, что это значение не охватывается параметром ignore_timestamps.

Значение по умолчанию: "+365d"

entrust_requester_email

string

Электронная почта запрашивающего сертификат (для целей отслеживания).

Это используется только поставщиком entrust.

Это обязательно, если поставщик — entrust.

entrust_requester_name

string

Имя запрашивающего сертификат (для целей отслеживания).

Это используется только поставщиком entrust.

Это обязательно, если поставщик — entrust.

entrust_requester_phone

string

Номер телефона запрашивающего сертификат (для целей отслеживания).

Это используется только поставщиком entrust.

Это обязательно, если поставщик — entrust.

force

boolean

Сгенерировать сертификат, даже если он уже существует.

Варианты:

  • false ← (по умолчанию)
  • true

group

string

Имя группы, которой должен принадлежать объект файловой системы, как это передаётся в chown.

Если не указано, используется текущая группа текущего пользователя, если вы не являетесь root, в этом случае он может сохранить предыдущее владение.

ignore_timestamps

boolean

добавлено в community.crypto 2.0.0

Следует ли игнорировать метки времени «не ранее» и «не позже» для проверок идемпотентности.

Лучше сохранить значение по умолчанию true, используя относительные метки времени (например, +0s пока).

Варианты:

  • false
  • true ← (по умолчанию)

mode

any

Разрешения, которые должен иметь результирующий объект файловой системы.

Для тех, кто привык к /usr/bin/chmod, помните, что режимы на самом деле являются восьмеричными числами. Вы должны дать Ansible достаточно информации, чтобы правильно их разобрать. Для получения согласованных результатов заключайте восьмеричные числа в кавычки (например, '644' или '1777'), чтобы Ansible получил строку и мог выполнить собственное преобразование из строки в число. Добавление ведущего нуля (например, 0755) иногда работает, но может давать сбои в циклах и некоторых других обстоятельствах.

Предоставление Ansible числа без соблюдения ни одного из этих правил приведёт к десятичному числу, которое будет иметь неожиданные результаты.

Начиная с Ansible 1.8, режим может быть указан как символический режим (например, u+rwx или u=rw,g=r,o=r).

Если mode не указан и целевой объект файловой системы не существует, то при установке режима для вновь созданного объекта файловой системы будет использоваться значение по умолчанию umask в системе.

Если mode не указан и целевой объект файловой системы существует, будет использоваться режим существующего объекта файловой системы.

Указание mode — лучший способ обеспечить создание объектов файловой системы с правильными разрешениями. Подробнее см. CVE-2020-1736.

ownca_content

string

добавлено в community.crypto 1.0.0

Содержимое сертификата центра сертификации (CA).

Это используется только поставщиком ownca.

Это взаимоисключает ownca_path.

ownca_create_authority_key_identifier

boolean

Создать идентификатор ключа центра сертификации из сертификата CA. Если CSR предоставил идентификатор ключа центра сертификации, он игнорируется.

Идентификатор ключа центра сертификации создается из идентификатора ключа субъекта сертификата CA, если он доступен. Если он недоступен, будет использоваться открытый ключ сертификата CA.

Это используется только поставщиком ownca.

Обратите внимание, что это поддерживается только в случае использования серверной части cryptography!

Варианты:

  • false
  • true ← (по умолчанию)

ownca_create_subject_key_identifier

string

Создавать ли идентификатор ключа субъекта (SKI) из открытого ключа.

Значение create_if_not_provided (по умолчанию) создает SKI только тогда, когда CSR его не предоставляет.

Значение always_create всегда создает SKI. Если CSR предоставляет его, то он игнорируется.

Значение never_create никогда не создает SKI. Если CSR предоставляет его, то он используется.

Это используется только поставщиком ownca.

Обратите внимание, что это поддерживается только в случае использования серверной части cryptography!

Варианты:

  • "create_if_not_provided" ← (по умолчанию)
  • "always_create"
  • "never_create"

ownca_digest

string

Алгоритм дайджеста, который будет использоваться для сертификата ownca.

Это используется только поставщиком ownca.

Значение по умолчанию: "sha256"

ownca_not_after

string

Точка во времени, до которой сертификат остаётся действительным.

Время можно указать как относительно, так и как абсолютную метку времени.

Время всегда интерпретируется как UTC.

Допустимый формат — [+-]timespec | ASN.1 TIME, где timespec может быть целым числом + [w | d | h | m | s] (например, +32w1d2h).

Если это значение не указано, сертификат будет действителен ещё 10 лет.

Обратите внимание, что это значение не используется для определения, нужно ли перегенерировать существующий сертификат. Это можно изменить, задав параметр ignore_timestamps со значением false. Обратите внимание, что при установке ignore_timestamps=false следует избегать относительных временных меток.

Используется только поставщиком ownca.

На macOS 10.15 и более поздних версиях сертификаты сервера TLS должны иметь срок действия не более 825 дней. Подробнее см. https://support.apple.com/en-us/HT210176.

Значение по умолчанию: "+3650d"

ownca_not_before

string

Точка во времени, с которой сертификат начинает действовать.

Время можно указать как относительно, так и как абсолютную метку времени.

Время всегда интерпретируется как UTC.

Допустимый формат — [+-]timespec | ASN.1 TIME, где timespec может быть целым числом + [w | d | h | m | s] (например, +32w1d2h).

Если это значение не указано, сертификат начинает действовать с текущего момента.

Обратите внимание, что это значение не используется для определения, нужно ли перегенерировать существующий сертификат. Это можно изменить, задав параметр ignore_timestamps со значением false. Обратите внимание, что при установке ignore_timestamps=false следует избегать относительных временных меток.

Используется только поставщиком ownca.

Значение по умолчанию: "+0s"

ownca_path

path

Полный путь к сертификату ЦС (Центра сертификации).

Используется только поставщиком ownca.

Взаимоисключающее с ownca_content.

ownca_privatekey_content

string

добавлен в community.crypto 1.0.0

Содержимое закрытого ключа ЦС (Центра сертификации) для подписи сертификата.

Используется только поставщиком ownca.

Взаимоисключающее с ownca_privatekey_path.

ownca_privatekey_passphrase

string

Пароль для ownca_privatekey_path и ownca_privatekey_content.

Используется только поставщиком ownca.

ownca_privatekey_path

path

Путь к закрытому ключу ЦС (Центра сертификации) для подписи сертификата.

Используется только поставщиком ownca.

Взаимоисключающее с ownca_privatekey_content.

ownca_version

integer

Версия сертификата ownca.

В настоящее время она почти всегда должна быть 3.

Используется только поставщиком ownca.

Значение по умолчанию: 3

owner

string

Имя пользователя, который должен владеть файловым объектом (как передаётся в chown).

Если не указано, используется текущий пользователь, за исключением случая работы от имени root, в котором сохраняется предыдущее владение.

Числовое имя пользователя будет интерпретировано как идентификатор пользователя, а не имя пользователя. Избегайте числовых имён пользователей для предотвращения путаницы.

path

path / обязательно

Полный путь к файлу генерируемого сертификата или уже существующего файла.

privatekey_content

string

добавлен в community.crypto 1.0.0

Содержимое закрытого ключа для подписи сертификата.

Взаимоисключающее с privatekey_path.

privatekey_passphrase

string

Пароль для privatekey_path и privatekey_content.

Требуется, если закрытый ключ защищён паролем.

privatekey_path

path

Путь к закрытому ключу для подписи сертификата.

Взаимоисключающее с privatekey_content.

provider

string

Имя поставщика для генерации/получения сертификата OpenSSL. См. примеры по эмуляции с community.crypto.x509_certificate_info, community.crypto.openssl_csr_info, community.crypto.openssl_privatekey_info и ansible.builtin.assert.

Поставщик entrust был добавлен для Ansible 2.9 и требует учетные данные для API Entrust Certificate Services (ECS).

Требуется, если state имеет значение present.

Варианты:

  • "acme"
  • "entrust"
  • "ownca"
  • "selfsigned"

return_content

boolean

добавлен в community.crypto 1.0.0

Если установлено значение true, возвращает содержимое сертификата (текущего или сгенерированного) в виде certificate.

Варианты:

  • false ← (по умолчанию)
  • true

select_crypto_backend

string

Определяет, какой криптографический бэкенд использовать.

По умолчанию используется auto, который пытается использовать cryptography при его наличии.

Если установлено значение cryptography, будет использована библиотека cryptography.

Варианты:

  • "auto" ← (по умолчанию)
  • "cryptography"

selevel

string

Часть контекста объекта файла системы SELinux.

Это атрибут MLS/MCS, иногда известный как range.

Если установлено значение _default, будет использована часть политики level при её наличии.

selfsigned_create_subject_key_identifier

string

Создавать ли идентификатор ключа субъекта (SKI) из открытого ключа.

Значение create_if_not_provided (по умолчанию) создаёт SKI только если CSR его не предоставляет.

Значение always_create всегда создаёт SKI. Если CSR предоставляет SKI, он игнорируется.

Значение never_create никогда не создаёт SKI. Если CSR предоставляет SKI, он используется.

Используется только провайдером selfsigned.

Обратите внимание, что это поддерживается только если используется бэкенд cryptography!

Варианты:

  • "create_if_not_provided" ← (по умолчанию)
  • "always_create"
  • "never_create"

selfsigned_digest

string

Алгоритм дайджеста, используемый при самоподписи сертификата.

Используется только провайдером selfsigned.

По умолчанию: "sha256"

selfsigned_not_after

aliases: selfsigned_notAfter

string

Момент, после которого сертификат становится недействительным.

Время может быть указано как относительное время или как абсолютная метка времени.

Время всегда интерпретируется как UTC.

Допустимый формат [+-]timespec | ASN.1 TIME, где timespec может быть целым числом + [w | d | h | m | s] (например, +32w1d2h).

Если это значение не указано, сертификат перестанет быть действительным через 10 лет.

Обратите внимание, что это значение не используется для определения необходимости перегенерации существующего сертификата. Это можно изменить, установив параметр ignore_timestamps в значение false. Пожалуйста, избегайте относительного времени при установке ignore_timestamps=false.

Используется только провайдером selfsigned.

В macOS 10.15 и новее сертификаты сервера TLS должны иметь срок действия не более 825 дней. Подробнее см. https://support.apple.com/en-us/HT210176.

По умолчанию: "+3650d"

selfsigned_not_before

aliases: selfsigned_notBefore

string

Момент, с которого сертификат действителен.

Время может быть указано как относительное время или как абсолютная метка времени.

Время всегда интерпретируется как UTC.

Допустимый формат [+-]timespec | ASN.1 TIME, где timespec может быть целым числом + [w | d | h | m | s] (например, +32w1d2h).

Если это значение не указано, сертификат будет действителен с момента выполнения.

Обратите внимание, что это значение не используется для определения необходимости перегенерации существующего сертификата. Это можно изменить, установив параметр ignore_timestamps в значение false. Пожалуйста, избегайте относительного времени при установке ignore_timestamps=false.

Используется только провайдером selfsigned.

По умолчанию: "+0s"

selfsigned_version

integer

Версия сертификата selfsigned.

В настоящее время почти всегда должно быть 3.

Используется только провайдером selfsigned.

По умолчанию: 3

serole

string

Часть роли контекста объекта файла системы SELinux.

Если установлено значение _default, будет использована часть политики role при её наличии.

setype

string

Часть типа контекста объекта файла системы SELinux.

Если установлено значение _default, будет использована часть политики type при её наличии.

seuser

string

Часть пользователя контекста объекта файла системы SELinux.

По умолчанию используется политика system, где это применимо.

Если установлено значение _default, будет использована часть политики user при её наличии.

state

string

Должен ли существовать сертификат или нет, с выполнением действий, если состояние отличается от указанного.

Варианты:

  • "absent"
  • "present" ← (по умолчанию)

unsafe_writes

boolean

Влияет на то, когда использовать атомарную операцию для предотвращения повреждения данных или несогласованных чтений из целевого объекта файла системы.

По умолчанию этот модуль использует атомарные операции для предотвращения повреждения данных или несогласованных чтений из целевых объектов файла системы, но иногда системы настроены или просто неисправны таким образом, что это невозможно. Одним примером являются контейнеры Docker с монтированными объектами файлов, которые не могут быть обновлены атомарно изнутри контейнера и могут быть записаны только ненадёжным образом.

Этот параметр позволяет Ansible переключаться на небезопасные методы обновления объектов файлов системы, когда атомарные операции терпят неудачу (однако, он не принуждает Ansible выполнять небезопасные записи).

ВАЖНО! Небезопасные записи подвержены гонкам и могут привести к повреждению данных.

Варианты:

  • false ← (по умолчанию)
  • true

Атрибуты

Атрибут

Поддержка

Описание

check_mode

Поддержка: полная

Может работать в режиме check_mode и возвращать прогноз о статусе изменения без модификации целевого объекта.

diff_mode

Поддержка: полная

В режиме сравнения вернёт подробности о том, что изменилось (или, возможно, требует изменения в check_mode).

safe_file_operations

Поддержка: полная

Использует строгие функции Ansible по работе с файлами для обеспечения правильных разрешений и предотвращения повреждения данных.

Примечания

Примечание

  • Все значения ASN.1 TIME должны быть указаны в формате YYYYMMDDHHMMSSZ.
  • Указанная дата должна быть UTC. Минуты и секунды обязательны.
  • По соображениям безопасности при использовании поставщика ownca, НЕ следует запускать модуль community.crypto.x509_certificate на целевом компьютере, а на выделенном сервере CA. Не рекомендуется хранить закрытый ключ CA на целевом компьютере. После подписи сертификат может быть перемещён на целевой компьютер.
  • Для поставщика selfsigned, поля csr_path и csr_content являются необязательными. Если они не предоставлены, создаётся сертификат без какой-либо информации (Subject, Subject Alternative Names, Key Usage и т.д.).

См. также

См. также

community.crypto.x509_certificate_pipe

Генерация и/или проверка сертификатов OpenSSL.

community.crypto.openssl_csr

Генерация запроса на подпись сертификата (CSR) OpenSSL.

community.crypto.openssl_csr_pipe

Генерация запроса на подпись сертификата (CSR) OpenSSL.

community.crypto.openssl_dhparam

Генерация параметров Diffie-Hellman OpenSSL.

community.crypto.openssl_pkcs12

Генерация архива PKCS#12 OpenSSL.

community.crypto.openssl_privatekey

Генерация закрытых ключей OpenSSL.

community.crypto.openssl_privatekey_pipe

Генерация закрытых ключей OpenSSL без доступа к диску.

community.crypto.openssl_publickey

Генерация открытого ключа OpenSSL из закрытого ключа.

Примеры

- name: Generate a Self Signed OpenSSL certificate
  community.crypto.x509_certificate:
    path: /etc/ssl/crt/ansible.com.crt
    privatekey_path: /etc/ssl/private/ansible.com.pem
    csr_path: /etc/ssl/csr/ansible.com.csr
    provider: selfsigned

- name: Generate an OpenSSL certificate signed with your own CA certificate
  community.crypto.x509_certificate:
    path: /etc/ssl/crt/ansible.com.crt
    csr_path: /etc/ssl/csr/ansible.com.csr
    ownca_path: /etc/ssl/crt/ansible_CA.crt
    ownca_privatekey_path: /etc/ssl/private/ansible_CA.pem
    provider: ownca

- name: Generate a Let's Encrypt Certificate
  community.crypto.x509_certificate:
    path: /etc/ssl/crt/ansible.com.crt
    csr_path: /etc/ssl/csr/ansible.com.csr
    provider: acme
    acme_accountkey_path: /etc/ssl/private/ansible.com.pem
    acme_challenge_path: /etc/ssl/challenges/ansible.com/

- name: Force (re-)generate a new Let's Encrypt Certificate
  community.crypto.x509_certificate:
    path: /etc/ssl/crt/ansible.com.crt
    csr_path: /etc/ssl/csr/ansible.com.csr
    provider: acme
    acme_accountkey_path: /etc/ssl/private/ansible.com.pem
    acme_challenge_path: /etc/ssl/challenges/ansible.com/
    force: true

- name: Generate an Entrust certificate via the Entrust Certificate Services (ECS) API
  community.crypto.x509_certificate:
    path: /etc/ssl/crt/ansible.com.crt
    csr_path: /etc/ssl/csr/ansible.com.csr
    provider: entrust
    entrust_requester_name: Jo Doe
    entrust_requester_email: jdoe@ansible.com
    entrust_requester_phone: 555-555-5555
    entrust_cert_type: STANDARD_SSL
    entrust_api_user: apiusername
    entrust_api_key: a^lv*32!cd9LnT
    entrust_api_client_cert_path: /etc/ssl/entrust/ecs-client.crt
    entrust_api_client_cert_key_path: /etc/ssl/entrust/ecs-key.crt
    entrust_api_specification_path: /etc/ssl/entrust/api-docs/cms-api-2.1.0.yaml

# The following example shows how to emulate the behavior of the removed
# "assertonly" provider with the x509_certificate_info, openssl_csr_info,
# openssl_privatekey_info and assert modules:

- name: Get certificate information
  community.crypto.x509_certificate_info:
    path: /etc/ssl/crt/ansible.com.crt
    # for valid_at, invalid_at and valid_in
    valid_at:
      one_day_ten_hours: "+1d10h"
      fixed_timestamp: 20200331202428Z
      ten_seconds: "+10"
  register: result

- name: Get CSR information
  community.crypto.openssl_csr_info:
    # Verifies that the CSR signature is valid; module will fail if not
    path: /etc/ssl/csr/ansible.com.csr
  register: result_csr

- name: Get private key information
  community.crypto.openssl_privatekey_info:
    path: /etc/ssl/csr/ansible.com.key
  register: result_privatekey

- name: Check conditions on certificate, CSR, and private key
  ansible.builtin.assert:
    that:
      # When private key was specified for assertonly, this was checked:
      - result.public_key == result_privatekey.public_key
      # When CSR was specified for assertonly, this was checked:
      - result.public_key == result_csr.public_key
      - result.subject_ordered == result_csr.subject_ordered
      - result.extensions_by_oid == result_csr.extensions_by_oid
      # signature_algorithms check
      - "result.signature_algorithm == 'sha256WithRSAEncryption' or result.signature_algorithm == 'sha512WithRSAEncryption'"
      # subject and subject_strict
      - "result.subject.commonName == 'ansible.com'"
      - "result.subject | length == 1"  # the number must be the number of entries you check for
      # issuer and issuer_strict
      - "result.issuer.commonName == 'ansible.com'"
      - "result.issuer | length == 1"  # the number must be the number of entries you check for
      # has_expired
      - not result.expired
      # version
      - result.version == 3
      # key_usage and key_usage_strict
      - "'Data Encipherment' in result.key_usage"
      - "result.key_usage | length == 1"  # the number must be the number of entries you check for
      # extended_key_usage and extended_key_usage_strict
      - "'DVCS' in result.extended_key_usage"
      - "result.extended_key_usage | length == 1"  # the number must be the number of entries you check for
      # subject_alt_name and subject_alt_name_strict
      - "'dns:ansible.com' in result.subject_alt_name"
      - "result.subject_alt_name | length == 1"  # the number must be the number of entries you check for
      # not_before and not_after
      - "result.not_before == '20190331202428Z'"
      - "result.not_after == '20190413202428Z'"
      # valid_at, invalid_at and valid_in
      - "result.valid_at.one_day_ten_hours"  # for valid_at
      - "not result.valid_at.fixed_timestamp"  # for invalid_at
      - "result.valid_at.ten_seconds"  # for valid_in

Возвращаемые значения

Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:

Ключ

Описание

backup_file

строка

Имя созданного файла резервной копии.

Возвращаемое значение: changed и если backup в true

Пример: "/path/to/www.ansible.com.crt.2019-03-09@11:22~"

certificate

строка

добавлено в community.crypto 1.0.0

Содержимое сертификата (текущего или сгенерированного).

Возвращаемое значение: если state в present и return_content в true

filename

строка

Путь к сгенерированному сертификату.

Возвращаемое значение: changed или success

Пример: "/etc/ssl/crt/www.ansible.com.crt"

Авторы

  • Yanis Guenane (@Spredzy)
  • Markus Teufelberger (@MarkusTeufelberger)

Ссылки на коллекцию

  • Система отслеживания ошибок
  • Репозиторий (Исходный код)
  • Задать вопрос (криптография)
  • Задать вопрос (ACME)
  • Отправить отчет об ошибке
  • Запросить функцию
  • Связь

© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/crypto/x509_certificate_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API