Модуль community.crypto.x509_certificate_info — Предоставление информации о сертификатах OpenSSL X.509
Примечание
Этот модуль является частью коллекции community.crypto (версия 2.22.1).
Вам, возможно, уже установлена эта коллекция, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install community.crypto. Для использования этого модуля потребуются дополнительные зависимости. Подробности см. в разделе Требования.
Для использования в книге задач укажите: community.crypto.x509_certificate_info.
Обзор
- Этот модуль позволяет запросить информацию о сертификатах OpenSSL.
- Он использует библиотеку cryptography Python для взаимодействия с OpenSSL.
- Обратите внимание, что этот модуль назывался
openssl_certificate_infoпри непосредственном включении в Ansible до версии 2.9. При перемещении в коллекциюcommunity.crypto, он был переименован в community.crypto.x509_certificate_info. В Ansible 2.10 и выше его можно по-прежнему использовать с прежним коротким именем (или с помощьюansible.builtin.openssl_certificate_info), которое перенаправляется на community.crypto.x509_certificate_info. При использовании полных имён классов (FQCN) или ключевого слова collections, следует использовать новое имя community.crypto.x509_certificate_info, чтобы избежать предупреждений об устаревании.
Требования
Ниже перечислены требования, которые должны быть выполнены на хосте, на котором выполняется этот модуль.
- Если
name_encodingустановлено в значение, отличное отignore, требуется установка библиотеки idna Python. - cryptography >= 1.6
Параметры
Параметр | Комментарии |
|---|---|
content string added in community.crypto 1.0.0 | |
name_encoding string | Способ кодирования имён (DNS-имен, URI, адресов электронной почты) в возвращаемых значениях.
Примечание, что Варианты:
|
path path | |
select_crypto_backend string | Определяет, какой криптографический бэкенд использовать. По умолчанию выбирается Если установлено значение Варианты:
|
valid_at dictionary | Словарь с именами, сопоставленными с временными спецификациями. Для каждого времени, указанного здесь, будет проверяться, действителен ли сертификат в этот момент. Подробную информацию о результате см. в возвращаемом значении Время всегда интерпретируется как UTC. Допустимый формат — |
Атрибуты
Атрибут | Поддержка | Описание |
|---|---|---|
check_mode | Поддержка: полная Это действие не изменяет состояние. | Может работать в режиме |
diff_mode | Поддержка: нет Это действие не изменяет состояние. | При использовании режима diff вернёт детали изменений (или, возможно, требуемых изменений в |
Примечания
Примечание
- Все значения метки времени представлены в формате ASN.1 TIME, другими словами, следуя шаблону
YYYYMMDDHHMMSSZ. Все они находятся в формате UTC.
См. также
См. также
- community.crypto.x509_certificate
-
Генерация и/или проверка сертификатов OpenSSL.
- community.crypto.x509_certificate_pipe
-
Генерация и/или проверка сертификатов OpenSSL.
- community.crypto.x509_certificate_info фильтр-плагин
-
Вариант фильтра для этого модуля.
- community.crypto.to_serial фильтр-плагин
-
Преобразование целого числа в список шестнадцатеричных чисел, разделённых двоеточием.
Примеры
- 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
# Get information on the certificate
- name: Get information on generated certificate
community.crypto.x509_certificate_info:
path: /etc/ssl/crt/ansible.com.crt
register: result
- name: Dump information
ansible.builtin.debug:
var: result
# Check whether the certificate is valid or not valid at certain times, fail
# if this is not the case. The first task (x509_certificate_info) collects
# the information, and the second task (assert) validates the result and
# makes the playbook fail in case something is not as expected.
- name: Test whether that certificate is valid tomorrow and/or in three weeks
community.crypto.x509_certificate_info:
path: /etc/ssl/crt/ansible.com.crt
valid_at:
point_1: "+1d"
point_2: "+3w"
register: result
- name: Validate that certificate is valid tomorrow, but not in three weeks
ansible.builtin.assert:
that:
- result.valid_at.point_1 # valid in one day
- not result.valid_at.point_2 # not valid in three weeks
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
Ключ | Описание |
|---|---|
authority_cert_issuer список / элементы=строка | Издатель сертификата-уполномоченного органа в виде списка общих имён. Будет См. Возвращается при: успехе Пример: |
authority_cert_serial_number целое число | Серийный номер сертификата-уполномоченного органа. Будет Это значение возвращается как целое число. Если вам нужны серийные номера в виде шестнадцатеричной строки, разделённой двоеточием, например, Возвращается при: успехе Пример: |
authority_key_identifier строка | Идентификатор ключа уполномоченного органа. Идентификатор возвращается в шестнадцатеричном формате, с использованием Будет Возвращается при: успехе Пример: |
basic_constraints список / элементы=строка | Элементы в расширении Возвращается при: успехе Пример: |
basic_constraints_critical логическое значение | Является ли расширение Возвращается при: успехе |
expired логическое значение | Истек ли сертификат (другими словами, Возвращается при: успехе |
extended_key_usage список / элементы=строка | Элементы в расширении Возвращается при: успехе Пример: |
extended_key_usage_critical логическое значение | Является ли расширение Возвращается при: успехе |
extensions_by_oid словарь | Возвращает словарь для каждого расширения OID. Возвращается при: успехе Пример: |
|
critical логическое значение |
Является ли расширение критическим. Возвращается при: успехе |
|
value строка |
Значение расширения в кодировке Base64 (в формате DER). Примечание: в зависимости от используемой версии Возвращается при: успехе Пример: |
fingerprints словарь добавлено в community.crypto 1.2.0 | Отпечатки пальцев в DER-кодированном формате всего сертификата. Вычисляется для каждого доступного алгоритма хеширования. Возвращается при: успехе Пример: |
issuer словарь | Издатель сертификата. Обратите внимание, что для повторяющихся значений будет возвращено только последнее. Возвращается при: успехе Пример: |
issuer_ordered список / элементы=список | Издатель сертификата в виде упорядоченного списка кортежей. Возвращается при: успехе Пример: |
issuer_uri строка добавлено в community.crypto 2.9.0 | URI издателя, если он указан в сертификате. Будет Возвращается при: успехе |
key_usage строка | Элементы расширения Возвращаемое значение: успех Пример: |
key_usage_critical логическое значение | Является ли расширение Возвращаемое значение: успех |
not_after строка | Дата Возвращаемое значение: успех Пример: |
not_before строка | Дата Возвращаемое значение: успех Пример: |
ocsp_must_staple логическое значение |
Возвращаемое значение: успех |
ocsp_must_staple_critical логическое значение | Является ли расширение Возвращаемое значение: успех |
ocsp_uri строка | URI OCSP респондента, если включён в сертификат. Будет Возвращаемое значение: успех |
public_key строка | Открытый ключ сертификата в формате PEM. Возвращаемое значение: успех Пример: |
public_key_data словарь добавлен в community.crypto 1.7.0 | Данные открытого ключа. Зависит от типа открытого ключа. Возвращаемое значение: успех |
|
curve строка |
Имя кривой для ECC. Возвращаемое значение: при |
|
exponent целое число |
Показатель открытого ключа RSA. Возвращаемое значение: при |
|
exponent_size целое число |
Максимальное количество бит закрытого ключа. По сути, это размер в битах используемой подгруппы. Возвращаемое значение: при |
|
g целое число |
Значение Это элемент, охватывающий подгруппу мультипликативной группы используемого поля с простыми числами. Возвращаемое значение: при |
|
modulus целое число |
Модуль открытого ключа RSA. Возвращаемое значение: при |
|
p целое число |
Значение Это простая база модулей, на которой выполняется арифметика. Возвращаемое значение: при |
|
q целое число |
Значение Это простое число, которое делит Возвращаемое значение: при |
|
size целое число |
Размер модуля в битах (RSA) или простого числа (DSA). Возвращаемое значение: при |
|
x целое число |
Координата Возвращаемое значение: при |
|
y целое число |
Для Для Возвращаемое значение: при |
public_key_fingerprints словарь | Отпечатки цифровых подписей открытого ключа сертификата. Для каждого доступного алгоритма хеширования вычисляется отпечаток. Возвращается: успешно Пример: |
public_key_type строка добавлен в community.crypto 1.7.0 | Тип открытого ключа сертификата. Один из Начнётся с Возвращается: успешно Пример: |
serial_number целое число | Серийный номер сертификата. Это возвращаемое значение — целое число. Если вам нужны серийные номера в виде шестнадцатеричной строки, разделённой двоеточием, например Возвращается: успешно Пример: |
signature_algorithm строка | Алгоритм цифровой подписи, использованный для подписания сертификата. Возвращается: успешно Пример: |
subject словарь | Подпись сертификата в виде словаря. Обратите внимание, что для повторяющихся значений будет возвращено только последнее. Возвращается: успешно Пример: |
subject_alt_name список / элементы=строка | Элементы расширения См. Возвращается: успешно Пример: |
subject_alt_name_critical булево | Является ли расширение Возвращается: успешно |
subject_key_identifier строка | Идентификатор открытого ключа подписи. Идентификатор возвращается в шестнадцатеричном формате, разделённом Возвращает Возвращается: успешно Пример: |
subject_ordered список / элементы=список | Подпись сертификата в виде упорядоченного списка кортежей. Возвращается: успешно Пример: |
valid_at словарь | Для каждого отметки времени, указанного в параметре Возвращается: успешно |
version целое число | Версия сертификата. Возвращается: успешно Пример: |
Ссылки на коллекцию
© 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_info_module.html