Spec-Zone.ru › Ansible 2.8

openssl_certificate_info – Предоставление информации об сертификатах OpenSSL X.509

Новая в версии 2.8.

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

Синопсис

  • Этот модуль позволяет запрашивать информацию о сертификатах OpenSSL.
  • Он использует библиотеки pyOpenSSL или cryptography для взаимодействия с OpenSSL. Если доступны обе библиотеки (и соответствуют минимальным требованиям к версиям), cryptography будет предпочтительнее в качестве бэкенда по сравнению с PyOpenSSL (если бэкенд не принудительно задан с select_crypto_backend)

Требования

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

  • PyOpenSSL >= 0.15 или cryptography >= 1.6

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
path
path / обязательный
Полный путь к удаленному файлу сертификата.
select_crypto_backend
строка
    Варианты:
  • auto ←
  • cryptography
  • pyopenssl
Определяет, какой криптографический бэкенд использовать.
По умолчанию выбирается auto, который пытается использовать cryptography если доступен, и переходит к pyopenssl.
Если установлено значение pyopenssl, будет попытка использовать библиотеку pyOpenSSL.
Если установлено значение cryptography, будет попытка использовать библиотеку cryptography.
valid_at
словарь
Словарь, сопоставляющий имена с временными спецификациями. Для каждого указанного времени будет проверено, действителен ли сертификат в этот момент. Смотрите возвращаемое значение valid_at для информации о результате.
Время можно задать как относительное время, так и как абсолютную временную метку.
Время всегда интерпретируется как UTC.
Допустимый формат [+-]timespec | ASN.1 TIME, где timespec может быть целым числом + [w | d | h | m | s] (например, +32w1d2h, и ASN.1 TIME (т.е. шаблон YYYYMMDDHHMMSSZ). Обратите внимание, что все временные метки будут обрабатываться как UTC.

Примечания

Примечание

  • Все значения временных меток представлены в формате ASN.1 TIME, т.е. следуют шаблону YYYYMMDDHHMMSSZ. Все они находятся в формате UTC.

См. также

См. также

openssl_certificate – Генерация и/или проверка сертификатов OpenSSL
Официальная документация модуля openssl_certificate.

Примеры

- name: Generate a Self Signed OpenSSL certificate
  openssl_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
  openssl_certificate_info:
    path: /etc/ssl/crt/ansible.com.crt
  register: result

- name: Dump information
  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 (openssl_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
  openssl_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
  assert:
    that:
      - result.valid_at.point_1      # valid in one day
      - not result.valid_at.point_2  # not valid in three weeks

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

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

Ключ Возвращаемое значение Описание
basic_constraints
список
успех
Элементы расширения basic_constraints, или none, если расширение отсутствует.

Пример:
[CA:TRUE, pathlen:1]
basic_constraints_critical
логическое значение
успех
Является ли расширение basic_constraints критическим.

expired
логическое значение
успех
Истек срок действия сертификата (т.е. notAfter в прошлом)

extended_key_usage
список
успех
Элементы расширения extended_key_usage, или none, если расширение отсутствует.

Пример:
[Biometric Info, DVCS, Time Stamping]
extended_key_usage_critical
логическое значение
успех
Является ли расширение extended_key_usage критическим.

extensions_by_oid
сложное
успех
Возвращает словарь для каждого расширения OID

Пример:
{"1.3.6.1.5.5.7.1.24": { "critical": false, "value": "MAMCAQU="}}
critical
логическое значение
успех
Является ли расширение критическим.

value
строка
успех
Значение, закодированное в Base64 (в формате DER), расширения

Пример:
MAMCAQU=
issuer
словарь
успех
Выпускающий орган сертификата.

Пример:
{"organizationName": "Ansible"}
key_usage
строка
успех
Элементы расширения key_usage, или none, если расширение отсутствует.

Пример:
[Key Agreement, Data Encipherment]
key_usage_critical
логическое значение
успех
Является ли расширение key_usage критическим.

not_after
строка
успех
notAfter дата в формате ASN.1 TIME

Пример:
20190413202428Z
not_before
строка
успех
notBefore дата в формате ASN.1 TIME

Пример:
20190331202428Z
ocsp_must_staple
логическое значение
успех
yes если расширение OCSP Must Staple присутствует, none в противном случае.

ocsp_must_staple_critical
логическое значение
успех
Является ли расширение ocsp_must_staple критическим.

public_key
строка
успех
Открытый ключ сертификата в формате PEM

Пример:
-----BEGIN PUBLIC KEY----- MIICIjANBgkqhkiG9w0BAQEFAAOCAg8A...
public_key_fingerprints
словарь
успех
Отпечатки пальцев открытого ключа сертификата.
Для каждого доступного алгоритма хеширования вычисляется отпечаток пальца.

Пример:
{'sha256': 'd4:b3:aa:6d:c8:04:ce:4e:ba:f6:29:4d:92:a3:94:b0:c2:ff:bd:bf:33:63:11:43:34:0f:51:b0:95:09:2f:63', 'sha512': 'f7:07:4a:f0:b0:f0:e6:8b:95:5f:f9:e6:61:0a:32:68:f1...
serial_number
целое число
успех
Серийный номер сертификата.

Пример:
1234
signature_algorithm
строка
успех
Используемый алгоритм подписи сертификата.

Пример:
sha256WithRSAEncryption
subject
словарь
успех
Подпись сертификата.

Пример:
{"commonName": "www.example.com", "emailAddress": "test@example.com"}
subject_alt_name
список
успех
Элементы расширения subject_alt_name, или none, если расширение отсутствует.

Пример:
[DNS:www.ansible.com, IP:1.2.3.4]
subject_alt_name_critical
логическое значение
успех
Является ли расширение subject_alt_name критическим.

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

version
целое число
успех
Версия сертификата.

Пример:
3


Статус

  • Данный модуль не гарантирует обратной совместимости интерфейса. [превью]
  • Этот модуль поддерживается сообществом Ansible. [community]

Авторы

  • Felix Fontein (@felixfontein)
  • Yanis Guenane (@Spredzy)
  • Markus Teufelberger (@MarkusTeufelberger)

Подсказка

Если вы заметите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.8/modules/openssl_certificate_info_module.html

Spec-Zone.ru

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