Модуль community.crypto.acme_account_info — получение информации об учетных записях ACME
Примечание
Этот модуль входит в коллекцию community.crypto (версия 3.2.1).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install community.crypto. Для работы с этим модулем требуются дополнительные компоненты; подробности см. в разделе Требования.
Чтобы использовать модуль в плейбуке, укажите: community.crypto.acme_account_info.
Краткое описание
- Позволяет получать информацию об учетных записях в центре сертификации, поддерживающем протокол ACME, например в Let’s Encrypt.
- Этот модуль работает только с протоколом ACME v2.
Требования
На хосте, на котором выполняется этот модуль, должны быть установлены следующие компоненты.
- либо
openssl - либо cryptography >= 3.3
Параметры
Параметр | Комментарии |
|---|---|
account_key_content строка | Содержимое ключа учетной записи ACME RSA или ключа на эллиптических кривых. Для ключей на эллиптических кривых поддерживаются только следующие кривые: Несовместим с Обязателен, если не используется Предупреждение: содержимое будет записано во временный файл, который Ansible удалит после завершения работы модуля. Поскольку это важный закрытый ключ — его можно использовать для смены ключа учетной записи или отзыва сертификатов без знания их закрытых ключей, — такой способ может быть неприемлем. Если используется |
account_key_passphrase строка добавлено в community.crypto 1.6.0 | Парольная фраза для расшифровки ключа учетной записи. Примечание: эта возможность не поддерживается бэкендом |
account_key_src псевдонимы: account_key путь | Путь к файлу, содержащему ключ учетной записи ACME RSA или ключ на эллиптических кривых. Для ключей на эллиптических кривых поддерживаются только следующие кривые: Закрытые ключи можно создать с помощью модулей community.crypto.openssl_privatekey или community.crypto.openssl_privatekey_pipe. Если необходимая библиотека (cryptography) недоступна, ключи также можно создать напрямую с помощью инструмента командной строки Несовместим с Обязателен, если не используется |
account_uri строка | Если указано, предполагается, что URI учетной записи соответствует заданному значению. Если ключ учетной записи не соответствует этой учетной записи или учетная запись с таким URI не существует, модуль завершится с ошибкой. |
acme_directory строка / обязательный | Каталог ACME, который следует использовать. Это URL-адрес точки входа для доступа к API сервера центра сертификации ACME. В целях безопасности по умолчанию используется тестовый сервер Let’s Encrypt (для протокола ACME v1). Он создает технически корректные, но недоверенные сертификаты. Все тестовые конечные точки Let’s Encrypt перечислены здесь: https://letsencrypt.org/docs/staging-environment/. Для Let’s Encrypt URL-адрес рабочего каталога ACME v2: https://acme-v02.api.letsencrypt.org/directory. Для ZeroSSL URL-адрес рабочего каталога ACME v2: https://acme.zerossl.com/v2/DV90. Для Sectigo URL-адрес рабочего каталога ACME v2: https://acme-qa.secure.trust-provider.com/v2/DV. Для HARICA URL-адрес рабочего каталога ACME v2: https://acme.harica.gr/XXX/directory, где XXX зависит от вашей учетной записи. В примечаниях к этому модулю приведен список служб ACME, с которыми он был протестирован. |
acme_version целое число | Версия ACME конечной точки. Для стандартизированных конечных точек ACME v2 должно быть указано Значение Варианты:
|
request_timeout целое число добавлено в community.crypto 2.3.0 | Время, в течение которого Ansible ожидает ответ от API ACME. Это значение тайм-аута применяется ко всем HTTP(S)-запросам (HEAD, GET, POST). По умолчанию: |
retrieve_orders строка | Следует ли получать список URL-адресов заказов или объектов заказов, если сервер ACME их предоставляет. Значение Если значение не равно В настоящее время Let’s Encrypt не возвращает заказы, поэтому результат Варианты:
|
select_crypto_backend строка | Определяет, какой криптографический бэкенд использовать. По умолчанию выбрано Если задано значение Если задано значение Варианты:
|
validate_certs логическое значение | Следует ли проверять TLS-сертификаты при обращении к каталогу ACME. Предупреждение: устанавливайте значение Варианты:
|
Атрибуты
Атрибут | Поддержка | Описание |
|---|---|---|
action_group | Группы действий: community.crypto.acme, acme | Используйте |
check_mode | Поддержка: полная Это действие не изменяет состояние. | Может выполняться в режиме |
diff_mode | Поддержка: неприменимо Это действие не изменяет состояние. | В режиме diff будут возвращены сведения об изменениях (или о том, что, возможно, требуется изменить в |
idempotent | Поддержка: полная Это действие не изменяет состояние. | При повторном запуске с теми же аргументами вне режима check вторая операция не сообщает об изменениях. При этом предполагается, что система, которой управляет модуль или к которой он обращается, не изменилась существенным образом. |
Примечания
Примечание
- Модуль community.crypto.acme_account позволяет изменять, создавать и удалять учетные записи ACME.
- До Ansible 2.8 этот модуль назывался
acme_account_facts. Способ его использования не изменился. - Хотя значения по умолчанию подобраны для работы модуля с центром сертификации Let’s Encrypt, в принципе модуль можно использовать с любым центром сертификации, предоставляющим конечную точку ACME.
- На данный момент разработчики тестировали модули ACME только с Let’s Encrypt (тестовая и рабочая среды), ZeroSSL (рабочая среда) и тестовым сервером Pebble. Сообщество сообщало, что модули также работают с Sectigo ACME Service for InCommon и HARICA. Если у вас возникли проблемы с другим сервером ACME, пожалуйста, создайте задачу, чтобы помочь нам добавить его поддержку. Мы также будем рады отзывам о работе с серверами ACME, не упомянутыми здесь.
- Если доступна достаточно новая версия библиотеки
cryptography(подробности см. в разделе «Требования»), она будет использоваться вместо двоичного файлаopenssl. Эту возможность можно явно отключить или включить с помощью параметраselect_crypto_backend. Обратите внимание, что использование двоичного файлаopensslбудет медленнее и менее безопасно, поскольку содержимое закрытого ключа всегда необходимо хранить на диске (см.account_key_content).
См. также
См. также
- community.crypto.acme_account
-
Позволяет создавать, изменять и удалять учетные записи ACME.
Примеры
---
- name: Check whether an account with the given account key exists
community.crypto.acme_account_info:
account_key_src: /etc/pki/cert/private/account.key
register: account_data
- name: Verify that account exists
ansible.builtin.assert:
that:
- account_data.exists
- name: Print account URI
ansible.builtin.debug:
var: account_data.account_uri
- name: Print account contacts
ansible.builtin.debug:
var: account_data.account.contact
- name: Check whether the account exists and is accessible with the given account key
acme_account_info:
account_key_content: "{{ acme_account_key }}"
account_uri: "{{ acme_account_uri }}"
register: account_data
- name: Verify that account exists
ansible.builtin.assert:
that:
- account_data.exists
- name: Print account contacts
ansible.builtin.debug:
var: account_data.account.contact
Возвращаемые значения
Общие возвращаемые значения описаны здесь, ниже приведены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
account dictionary | Информация об учетной записи, полученная с сервера ACME. Возвращается: если учетная запись существует |
|
contact list / elements=string |
Ресурс проверки, который необходимо создать для подтверждения. Возвращается: всегда Пример: |
|
orders string |
URL-адрес, по которому можно получить список заказов для этой учетной записи. Используйте параметр Возвращается: всегда Пример: |
|
public_account_key string |
Открытый ключ учетной записи в формате JSON Web Key. Возвращается: всегда Пример: |
|
status string |
Статус учетной записи. Возвращается: всегда Может возвращать только:
Пример: |
account_uri string | URI учетной записи ACME или None, если учетная запись не существует. Возвращается: всегда |
exists boolean | Существует ли учетная запись. Возвращается: всегда |
order_uris list / elements=string добавлено в community.crypto 1.5.0 | Список заказов. Если Если Возвращается: если учетная запись существует, |
orders list / elements=dictionary | Список заказов. Возвращается: если учетная запись существует, |
|
authorizations list / elements=string |
Список URL-адресов авторизаций для этого заказа. Возвращается: при успешном выполнении |
|
certificate string |
URL-адрес для получения сертификата. Возвращается: когда сертификат выпущен |
|
error dictionary |
Если при обработке произошла ошибка, это поле содержит информацию о ней. Поле имеет структуру документа об ошибке (RFC7807). Возвращается: если произошла ошибка |
|
expires string |
Время истечения срока действия заказа. Временная метка должна быть отформатирована согласно RFC3339. Это поле обязательно включать в результат только в том случае, если Возвращается: если сервер указывает дату истечения срока действия |
|
finalize string |
URL-адрес для завершения обработки заказа ACME. Возвращается: при успешном выполнении |
|
identifiers list / elements=dictionary |
Список идентификаторов, для которых предназначен этот заказ. Возвращается: при успешном выполнении |
|
type string |
Тип идентификатора. Возвращается: при успешном выполнении Может возвращать только:
|
|
value string |
Имя идентификатора: имя хоста или IP-адрес. Возвращается: при успешном выполнении |
|
wildcard boolean |
Является ли Возвращается: обязательно включается, если идентификатор является подстановочным |
|
notAfter string |
Запрошенное значение поля Дата должна быть отформатирована согласно RFC3339. Сервер не обязан возвращать это значение. Возвращается: если сервер возвращает это значение |
|
notBefore string |
Запрошенное значение поля Дата должна быть отформатирована согласно RFC3339. Сервер не обязан возвращать это значение. Возвращается: если сервер возвращает это значение |
|
status string |
Статус заказа. Возвращается: при успешном выполнении Может возвращать только:
|
Ссылки на коллекцию
© 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/acme_account_info_module.html