acme_account_facts – Извлечение информации об учётных записях ACME
Новое в версии 2.7.
Обзор
- Позволяет извлекать информацию об учётных записях центра сертификации, поддерживающего протокол ACME, такой как Let’s Encrypt.
- Этот модуль работает только с протоколом ACME v2.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- python >= 2.6
- либо openssl, …
- … или cryptography >= 1.5
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| account_key_content - добавлен в 2.5 | Содержимое ключа RSA или ключа эллиптической кривой учётной записи ACME. Взаимоисключающий с account_key_src. Требуется, если account_key_src не используется.
Предупреждение: содержимое будет записано во временный файл, который будет удалён Ansible по завершении модуля. Поскольку это важный закрытый ключ — он может быть использован для изменения ключа учётной записи или для отзыва сертификатов, не зная их закрытых ключей —, это может быть неприемлемо. В случае использования cryptography, содержимое не записывается во временный файл. Тем не менее, возможно, что Ansible запишет его на диск в процессе перемещения модуля с его аргументом на узел, на котором он выполняется. | |
| account_key_src - | Путь к файлу, содержащему закрытый ключ учётной записи ACME RSA или эллиптической кривой. Ключи RSA можно создать с помощью openssl genrsa .... Ключи эллиптической кривой можно создать с помощью openssl ecparam -genkey .... Также можно использовать любой другой инструмент, создающий закрытые ключи в формате PEM.Взаимоисключающий с account_key_content.Требуется, если account_key_content не используется.псевдонимы: account_key | |
| account_uri - добавлен в 2.7 | Если указано, предполагается, что URI учётной записи указан. Если ключ учётной записи не соответствует этой учётной записи или учётная запись с этим URI не существует, модуль завершается ошибкой. | |
| acme_directory - | Значение по умолчанию: "https://acme-staging.api.letsencrypt.org/directory" | Используемый каталог ACME. Это URL-адрес точки входа для доступа к API сервера центра сертификации. По соображениям безопасности значение по умолчанию установлено на тестовый сервер Let’s Encrypt (для протокола ACME v1). Это создаст технически корректные, но недоверенные сертификаты. Все тестовые конечные точки Let’s Encrypt можно найти здесь: https://letsencrypt.org/docs/staging-environment/
Для Let’s Encrypt URL каталога для производства ACME v1 — https://acme-v01.api.letsencrypt.org/directory, а URL каталога для производства ACME v2 — https://acme-v02.api.letsencrypt.org/directory.
Предупреждение: На данный момент модуль протестирован только с Let’s Encrypt (тестовый и производственный) и с тестовым сервером Pebble. |
| acme_version - добавлен в 2.5 |
| Версия ACME конечной точки. Должно быть 1 для классической конечной точки ACME Let’s Encrypt или 2 для новой стандартизированной конечной точки ACME v2. |
| select_crypto_backend строка добавлен в 2.7 |
| Определяет, какой криптографический бэкенд использовать. Значение по умолчанию — auto, которое пытается использовать cryptography при наличии, и переходит на openssl в противном случае.Если установлено значение openssl, будет пытаться использовать openssl бинарник.Если установлено значение cryptography, будет пытаться использовать библиотеку cryptography. |
| validate_certs булево добавлен в 2.5 |
| Определяет, будут ли проверять TLS-сертификаты при вызовах каталога ACME.
Предупреждение: Должно быть установлено только в значение no в тестовых целях, например, при тестировании на локальном сервере Pebble. |
Примечания
Примечание
- Модуль acme_account позволяет изменять, создавать и удалять учётные записи ACME.
- Если доступна достаточно новая версия библиотеки
cryptography(см. Требования для подробностей), она будет использоваться вместо бинарникаopenssl. Это можно явно отключить или включить с помощью параметраselect_crypto_backend. Обратите внимание, что использование бинарникаopensslбудет медленнее и менее безопаснее, поскольку содержимое закрытых ключей всегда должно храниться на диске (см.account_key_content). - Хотя значения по умолчанию выбраны таким образом, чтобы модуль можно было использовать с центром сертификации Let’s Encrypt, модуль в принципе может использоваться с любым центром сертификации, предоставляющим конечную точку ACME.
Примеры
- name: Check whether an account with the given account key exists
acme_account_facts:
account_key_src: /etc/pki/cert/private/account.key
register: account_data
- name: Verify that account exists
assert:
that:
- account_data.exists
- name: Print account URI
debug: var=account_data.account_uri
- name: Print account contacts
debug: var=account_data.account.contact
- name: Check whether the account exists and is accessible with the given account key
acme_account_facts:
account_key_content: "{{ acme_account_key }}"
account_uri: "{{ acme_account_uri }}"
register: account_data
- name: Verify that account exists
assert:
that:
- account_data.exists
- name: Print account contacts
debug: var=account_data.account.contact
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие являются полями, уникальными для этого модуля:
| Ключ | Возвращённое значение | Описание | |
|---|---|---|---|
| account сложный | если учётная запись существует | Информация об учётной записи, полученная с сервера ACME. | |
| contact список | всегда | ресурс вызова, который должен быть создан для проверки Пример: ['mailto:me@example.com', 'tel:00123456789'] | |
| orders строка | всегда | URL, где можно получить список заказов для этой учётной записи Пример: https://example.ca/account/1/orders | |
| status строка | всегда | статус учётной записи Пример: valid | |
| account_uri строка | всегда | URI учётной записи ACME или None, если учётная запись не существует. | |
| exists булево | всегда | Существует ли учётная запись. | |
Статус
- Этот модуль не гарантирует обратную совместимость интерфейса. [превью]
- Этот модуль поддерживается сообществом Ansible. [community]
Авторы
- Felix Fontein (@felixfontein)
Подсказка
Если вы заметите какие-либо проблемы в этом документе, вы можете отредактировать его, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.7/modules/acme_account_facts_module.html