Spec-Zone.ru › Ansible

Примечания к выпуску Community.Crypto

  • v3.2.1

    • Обзор выпуска
    • Исправления ошибок
  • v3.2.0

    • Обзор выпуска
    • Незначительные изменения
    • Исправления ошибок
    • Новые плагины

      • Фильтр
  • v3.1.1

    • Обзор выпуска
    • Исправления ошибок
  • v3.1.0

    • Обзор выпуска
    • Незначительные изменения
  • v3.0.5

    • Обзор выпуска
    • Исправления ошибок
  • v3.0.4

    • Обзор выпуска
    • Исправления ошибок
  • v3.0.3

    • Обзор выпуска
    • Исправления ошибок
  • v3.0.2

    • Обзор выпуска
    • Исправления ошибок
  • v3.0.1

    • Обзор выпуска
    • Исправления ошибок
  • v3.0.0

    • Обзор выпуска
    • Незначительные изменения
    • Несовместимые изменения / Руководство по переносу
    • Устаревшие функции
    • Удалённые функции (ранее объявленные устаревшими)
    • Исправления ошибок
  • v2.26.1

    • Обзор выпуска
    • Исправления ошибок
  • v2.26.0

    • Обзор выпуска
    • Незначительные изменения
  • v2.25.0

    • Обзор выпуска
    • Незначительные изменения
  • v2.24.0

    • Обзор выпуска
    • Незначительные изменения
    • Устаревшие функции
    • Исправления ошибок
    • Новые модули
  • v2.23.0

    • Обзор выпуска
    • Незначительные изменения
    • Устаревшие функции
  • v2.22.3

    • Обзор выпуска
    • Исправления ошибок
  • v2.22.2

    • Обзор выпуска
    • Исправления ошибок
  • v2.22.1

    • Обзор выпуска
    • Исправления ошибок
  • v2.22.0

    • Обзор выпуска
    • Незначительные изменения
  • v2.21.1

    • Обзор выпуска
    • Исправления ошибок
  • v2.21.0

    • Обзор выпуска
    • Незначительные изменения
  • v2.20.0

    • Обзор выпуска
    • Незначительные изменения
    • Устаревшие функции
    • Исправления ошибок
    • Новые модули
  • v2.19.1

    • Обзор выпуска
    • Исправления ошибок
  • v2.19.0

    • Обзор выпуска
    • Незначительные изменения
    • Устаревшие функции
    • Исправления ошибок
    • Новые модули
  • v2.18.0

    • Обзор выпуска
    • Незначительные изменения
    • Устаревшие функции
    • Исправления ошибок
    • Новые плагины

      • Фильтр
  • v2.17.1

    • Обзор выпуска
    • Исправления ошибок
  • v2.17.0

    • Обзор выпуска
    • Незначительные изменения
  • v2.16.2

    • Обзор выпуска
    • Исправления ошибок
  • v2.16.1

    • Обзор выпуска
    • Исправления ошибок
  • v2.16.0

    • Обзор выпуска
    • Незначительные изменения
    • Исправления ошибок
  • v2.15.1

    • Обзор выпуска
    • Исправления ошибок
  • v2.15.0

    • Обзор выпуска
    • Незначительные изменения
    • Устаревшие функции
    • Исправления ошибок
    • Новые плагины

      • Фильтр
      • Поиск
  • v2.14.1

    • Обзор выпуска
    • Исправления ошибок
    • Известные проблемы
  • v2.14.0

    • Обзор выпуска
    • Незначительные изменения
  • v2.13.1

    • Обзор выпуска
    • Исправления ошибок
  • v2.13.0

    • Обзор выпуска
    • Незначительные изменения
    • Устаревшие функции
    • Исправления ошибок
  • v2.12.0

    • Обзор выпуска
    • Незначительные изменения
  • v2.11.1

    • Обзор выпуска
  • v2.11.0

    • Обзор выпуска
    • Незначительные изменения
    • Исправления ошибок
  • v2.10.0

    • Обзор выпуска
    • Исправления ошибок
    • Новые плагины

      • Фильтр
  • v2.9.0

    • Обзор выпуска
    • Незначительные изменения
  • v2.8.1

    • Обзор выпуска
  • v2.8.0

    • Обзор выпуска
    • Незначительные изменения
  • v2.7.1

    • Обзор выпуска
    • Исправления ошибок
  • v2.7.0

    • Обзор выпуска
    • Незначительные изменения
    • Исправления ошибок
  • v2.6.0

    • Обзор выпуска
    • Незначительные изменения
  • v2.5.0

    • Обзор выпуска
    • Незначительные изменения
  • v2.4.0

    • Обзор выпуска
    • Устаревшие функции
    • Исправления ошибок
  • v2.3.4

    • Обзор выпуска
  • v2.3.3

    • Обзор выпуска
    • Исправления ошибок
  • v2.3.2

    • Обзор выпуска
    • Исправления ошибок
  • v2.3.1

    • Обзор выпуска
    • Исправления ошибок
  • v2.3.0

    • Обзор выпуска
    • Незначительные изменения
    • Исправления ошибок
  • v2.2.4

    • Обзор выпуска
    • Исправления ошибок
  • v2.2.3

    • Обзор выпуска
    • Исправления ошибок
  • v2.2.2

    • Обзор выпуска
    • Исправления ошибок
  • v2.2.1

    • Обзор выпуска
    • Исправления ошибок
  • v2.2.0

    • Обзор выпуска
    • Незначительные изменения
    • Исправления ошибок
  • v2.1.0

    • Обзор выпуска
    • Незначительные изменения
    • Исправления ошибок
    • Новые модули
  • v2.0.2

    • Обзор выпуска
  • v2.0.1

    • Обзор выпуска
    • Незначительные изменения
    • Исправления ошибок
  • v2.0.0

    • Обзор выпуска
    • Незначительные изменения
    • Несовместимые изменения / Руководство по переносу
    • Устаревшие функции
    • Удалённые функции (ранее объявленные устаревшими)
    • Исправления ошибок
  • v1.9.4

    • Обзор выпуска
    • Исправления ошибок
  • v1.9.3

    • Обзор выпуска
    • Исправления ошибок
  • v1.9.2

    • Обзор выпуска
  • v1.9.1

    • Обзор выпуска
  • v1.9.0

    • Обзор выпуска
    • Незначительные изменения
    • Исправления ошибок
  • v1.8.0

    • Обзор выпуска
    • Незначительные изменения
    • Исправления ошибок
  • v1.7.1

    • Обзор выпуска
    • Исправления ошибок
  • v1.7.0

    • Обзор выпуска
    • Незначительные изменения
    • Исправления ошибок
    • Новые модули
  • v1.6.2

    • Обзор выпуска
    • Исправления ошибок
  • v1.6.1

    • Обзор выпуска
    • Исправления ошибок
  • v1.6.0

    • Обзор выпуска
    • Незначительные изменения
    • Устаревшие функции
    • Исправления ошибок
  • v1.5.0

    • Обзор выпуска
    • Незначительные изменения
    • Устаревшие функции
    • Исправления ошибок
  • v1.4.0

    • Обзор выпуска
    • Незначительные изменения
    • Исправления ошибок
  • v1.3.0

    • Обзор выпуска
    • Незначительные изменения
    • Исправления ошибок
    • Новые модули
  • v1.2.0

    • Обзор выпуска
    • Незначительные изменения
    • Исправления уязвимостей
    • Исправления ошибок
  • v1.1.1

    • Обзор выпуска
    • Исправления ошибок
  • v1.1.0

    • Обзор выпуска
    • Незначительные изменения
    • Исправления ошибок
    • Новые модули
  • v1.0.0

    • Обзор выпуска
    • Незначительные изменения
    • Устаревшие функции
    • Удалённые функции (ранее объявленные устаревшими)
    • Исправления ошибок
    • Новые модули

v3.2.1

Обзор выпуска

Выпуск с исправлениями ошибок.

Исправления ошибок

  • Модули acme_* — адаптирован разбор выходных данных закрытого ключа RSA OpenSSL для OpenSSL 4.0.0 (https://github.com/ansible-collections/community.crypto/pull/1005).
  • acme_challenge_cert_helper — скорректирована проверка закрытого ключа для новых типов закрытых ключей в cryptography 47.0.0 (https://github.com/ansible-collections/community.crypto/pull/1007).

v3.2.0

Обзор выпуска

Выпуск с исправлениями ошибок и новыми функциями.

Этот выпуск посвящён памяти Майкла О. Рабина, который скончался за несколько дней до выхода этого выпуска.

Незначительные изменения

  • Модули acme_* — экспериментальная поддержка типа вызова dns-account-01 в соответствии с черновиком acme-dns-account-label 02. Обратите внимание, что несовместимые изменения для этого типа вызова могут также появиться в минорных выпусках, пока черновик acme-dns-account-label не будет утверждён в качестве RFC (https://github.com/ansible-collections/community.crypto/pull/996).
  • Модули acme_* — экспериментальная поддержка типа вызова dns-persist-01 в соответствии с черновиком acme-dns-persist 01. Обратите внимание, что несовместимые изменения для этого типа вызова могут также появиться в минорных выпусках, пока черновик acme-dns-persist не будет утверждён в качестве RFC (https://github.com/ansible-collections/community.crypto/pull/997).

Исправления ошибок

  • Модули acme_* — улучшена обработка деактивации authz, а также сообщения об ошибках при некорректных состояниях authz (https://github.com/ansible-collections/community.crypto/pull/998).

Новые плагины

Фильтр

  • community.crypto.acme_dns_persist_record — создание записи DNS для вызовов ACME dns-persist-01.
  • community.crypto.acme_dns_persist_record_parse — разбор записи DNS для вызовов ACME dns-persist-01.

v3.1.1

Обзор выпуска

Выпуск с исправлениями ошибок.

Исправления ошибок

  • crypto_info, openssl_privatekey, openssl_privatekey_pipe — исправлено обнаружение поддержки EC для cryptography 46.0.5+ (https://github.com/ansible-collections/community.crypto/pull/981).

v3.1.0

Обзор выпуска

Выпуск с новыми функциями.

Незначительные изменения

  • luks_device — добавлена поддержка регистрации TPM2 с использованием systemd-cryptsetup (https://github.com/ansible-collections/community.crypto/issues/850, https://github.com/ansible-collections/community.crypto/pull/972).
  • luks_device — добавлена поддержка приоритета слотов ключей (https://github.com/ansible-collections/community.crypto/issues/850, https://github.com/ansible-collections/community.crypto/pull/972).

v3.0.5

Обзор выпуска

Технический выпуск.

Исправления ошибок

  • Небольшая очистка кода (https://github.com/ansible-collections/community.crypto/pull/963).

v3.0.4

Обзор выпуска

Технический выпуск.

Исправления ошибок

  • Исключено использование устаревших функций в ansible-core 2.20 (https://github.com/ansible-collections/community.crypto/pull/953).

v3.0.3

Сводка выпуска

Выпуск с исправлениями ошибок.

Исправления ошибок

  • Модули acme_* — повторять запросы также при HTTP-ответах 502 Bad Gateway и 504 Gateway Timeout. Последнее необходимо для ZeroSSL, у которого, по-видимому, часто возникают ошибки 504 (https://github.com/ansible-collections/community.crypto/issues/945, https://github.com/ansible-collections/community.crypto/pull/947).
  • Модули acme_* — увеличить максимальное количество повторных попыток с 10 до 20, чтобы учесть ошибки в реализации ZeroSSL (https://github.com/ansible-collections/community.crypto/pull/949).

v3.0.2

Сводка выпуска

Выпуск с исправлениями ошибок.

Исправления ошибок

  • Улучшено сообщение об ошибке при сбое загрузки закрытого ключа из-за некорректных файлов закрытого ключа или неверных паролей. Также включена исходная ошибка cryptography, поскольку она, вероятно, содержит более полезную информацию (https://github.com/ansible-collections/community.crypto/issues/936, https://github.com/ansible-collections/community.crypto/pull/939).

v3.0.1

Сводка выпуска

Выпуск с исправлениями ошибок.

Исправления ошибок

  • openssl_csr и openssl_csr_pipe — проверка идемпотентности для key_usage приводила к аварийному завершению, если Key Agreement/keyAgreement не был задан (https://github.com/ansible-collections/community.crypto/issues/934, https://github.com/ansible-collections/community.crypto/pull/935).

v3.0.0

Сводка выпуска

Новый мажорный выпуск community.crypto со значительной модернизацией кода. В этом выпуске прекращена поддержка ansible-core до версии 2.17, Python до версии 3.7 и cryptography до версии 3.3. Также удалены все модули Entrust и провайдер Entrust для модулей community.crypto.x509_certificate*.

Подробный список изменений приведён ниже.

Минорные изменения

  • Больше не предоставляется параметр backend из cryptography. Это приведёт к сбою при использовании cryptography < 3.1 (https://github.com/ansible-collections/community.crypto/pull/878).
  • В cryptography 36.0.0 и новее для объектов расширений X.509 всегда используется public_bytes() вместо обращения к внутренним компонентам cryptography для получения значения DER расширения (https://github.com/ansible-collections/community.crypto/pull/878).
  • Модернизация кода Python: добавлены аннотации типов и проверка типов (https://github.com/ansible-collections/community.crypto/pull/885).
  • Модернизация кода Python: исключено ненужное преобразование строк (https://github.com/ansible-collections/community.crypto/pull/880).
  • Модернизация кода Python: исключено использование six (https://github.com/ansible-collections/community.crypto/pull/884).
  • Модернизация кода Python: удалён код, специфичный для Python 3 (https://github.com/ansible-collections/community.crypto/pull/877).
  • Модернизация кода Python: обновлены импорты __future__, удалены шаблонные фрагменты, специфичные для Python 2 (https://github.com/ansible-collections/community.crypto/pull/876).
  • Модернизация кода Python: используется unittest.mock вместо ansible_collections.community.internal_test_tools.tests.unit.compat.mock (https://github.com/ansible-collections/community.crypto/pull/881).
  • Модернизация кода Python: используются f-строки вместо % и str.format() (https://github.com/ansible-collections/community.crypto/pull/875).
  • По возможности удалён параметр backend из внутреннего кода (https://github.com/ansible-collections/community.crypto/pull/883).
  • Удалён различный код совместимости с cryptography < 3.3 (https://github.com/ansible-collections/community.crypto/pull/878).
  • Удалены различные уровни абстракции для нескольких серверных компонентов, которые больше не требуются (https://github.com/ansible-collections/community.crypto/pull/912).
  • Удалена включённая в поставку копия distutils.version; вместо неё используется копия, включённая в ansible-core 2.12 и новее (https://github.com/ansible-collections/community.crypto/pull/371).
  • Различные рефакторинги кода (https://github.com/ansible-collections/community.crypto/pull/905, https://github.com/ansible-collections/community.crypto/pull/909, https://github.com/ansible-collections/community.crypto/pull/911, https://github.com/ansible-collections/community.crypto/pull/913, https://github.com/ansible-collections/community.crypto/pull/914, https://github.com/ansible-collections/community.crypto/pull/917).
  • Модули acme_* — улучшен разбор заголовков ответа Retry-After в обычных запросах ACME (https://github.com/ansible-collections/community.crypto/pull/890).
  • Утилиты плагина action_module — удалена совместимость со старыми версиями ansible-core/ansible-base/Ansible (https://github.com/ansible-collections/community.crypto/pull/872).
  • x509_certificate, x509_certificate_pipe — параметры ownca_version и selfsigned_version явно допускают только значение 3. Ранее модуль уже завершался с ошибкой при других значениях; теперь это проверяется в спецификации аргументов модуля (https://github.com/ansible-collections/community.crypto/pull/890).

Несовместимые изменения / руководство по переносу

  • Все doc_fragments теперь являются закрытыми для коллекции и не должны использоваться в других коллекциях или не связанных с ней плагинах/модулях. В них могут в любой момент появиться несовместимые изменения, даже в выпусках с исправлениями ошибок (https://github.com/ansible-collections/community.crypto/pull/898).
  • Все module_utils и plugin_utils теперь являются закрытыми для коллекции и не должны использоваться в других коллекциях или не связанных с ней плагинах/модулях. В них могут в любой момент появиться несовместимые изменения, даже в выпусках с исправлениями ошибок (https://github.com/ansible-collections/community.crypto/pull/887).
  • Значение select_crypto_backend игнорируется всеми модулями, кроме acme_* и …; всегда предполагается значение auto. Это гарантирует, что версия cryptography всегда проверяется (https://github.com/ansible-collections/community.crypto/pull/883).
  • Проверка относительных временных меток теперь стала строже. Строка, начинающаяся с + или -, должна быть корректной, иначе проверка завершится ошибкой. Раньше такие строки часто молча игнорировались, а во многих случаях код, запускавший проверку, не мог обработать отсутствие результата (https://github.com/ansible-collections/community.crypto/pull/885).
  • Утилиты модулей acme.certificates — вспомогательная функция retrieve_acme_v1_certificate() удалена (https://github.com/ansible-collections/community.crypto/pull/873).
  • get_certificate — значение по умолчанию для asn1_base64 изменено с false на true (https://github.com/ansible-collections/community.crypto/pull/873).
  • x509_crl — параметр mode теперь обозначает режим файла CRL, а не режим обновления. Для режима обновления вместо него используйте crl_mode (https://github.com/ansible-collections/community.crypto/pull/873).

Устаревшие возможности

  • acme_certificate — параметр agreement, который больше ни на что не влияет, объявлен устаревшим. Он будет удалён из community.crypto 4.0.0 (https://github.com/ansible-collections/community.crypto/pull/891).
  • acme_certificate — значение по умолчанию true для параметра modify_account объявлено устаревшим. В community.crypto 4.0.0 оно изменится на false. Рекомендуем задать этому параметру явное значение, чтобы избежать предупреждений об устаревании; уже сейчас предпочтительно установить false. Вместо этого лучше использовать модуль community.crypto.acme_account (https://github.com/ansible-collections/community.crypto/issues/924).
  • openssl_pkcs12 — параметр maciter_size, который больше ни на что не влияет, объявлен устаревшим. Он будет удалён из community.crypto 4.0.0 (https://github.com/ansible-collections/community.crypto/pull/891).

Удалённые возможности (ранее объявленные устаревшими)

  • Весь функционал Entrust удаляется, поскольку служба Entrust в настоящее время прекращает работу после продажи подразделения Entrust по выпуску публичных сертификатов компании Sectigo; подробности см. в объявлении с ключевыми датами и кратком руководстве по миграции для клиентов. Поскольку этот процесс завершится в 2025 году, мы решили удалить весь функционал Entrust из community.general 3.0.0 (https://github.com/ansible-collections/community.crypto/issues/895, https://github.com/ansible-collections/community.crypto/pull/901).
  • Коллекция больше не поддерживает cryptography < 3.3 (https://github.com/ansible-collections/community.crypto/pull/878, https://github.com/ansible-collections/community.crypto/pull/882).
  • Утилиты модулей acme.acme — функция get_default_argspec() удалена. Вместо неё используйте create_default_argspec() (https://github.com/ansible-collections/community.crypto/pull/873).
  • Утилиты модулей acme.backends — теперь необходимо реализовать методы get_ordered_csr_identifiers() и get_cert_information() класса CryptoBackend (https://github.com/ansible-collections/community.crypto/pull/873).
  • Фрагмент документации acme.documentation — фрагмент документации documentation удалён. Вместо него используйте оба фрагмента документации basic и account в acme (https://github.com/ansible-collections/community.crypto/pull/873).
  • Модули acme_* — поддержка ACME v1 удалена (https://github.com/ansible-collections/community.crypto/pull/873).
  • community.crypto больше не поддерживает Ansible 2.9, ansible-base 2.10 и версии ansible-core 2.11, 2.12, 2.13, 2.14, 2.15 и 2.16. Хотя материалы этой коллекции могут по-прежнему работать с некоторыми старыми версиями ansible-core, они не будут работать ни с одной версией Python ниже 3.7 (https://github.com/ansible-collections/community.crypto/pull/870).
  • Утилиты модулей crypto.basic — удалены флаги CRYPTOGRAPHY_HAS_*. Все проверенные возможности поддерживаются начиная с cryptography 3.0 (https://github.com/ansible-collections/community.crypto/pull/878).
  • Утилиты модулей crypto.cryptography_support — удалена вспомогательная функция cryptography_serial_number_of_cert() (https://github.com/ansible-collections/community.crypto/pull/878).
  • Утилиты модулей crypto.module_backends.common — эти утилиты модулей удалены. Вместо них используйте утилиты модулей argspec (https://github.com/ansible-collections/community.crypto/pull/873).
  • Утилиты модулей crypto.support — удалён серверный компонент pyopenssl (https://github.com/ansible-collections/community.crypto/pull/874).
  • ecs_certificate — модуль удалён. Если вам нужен этот модуль, используйте community.crypto 2.x.y (https://github.com/ansible-collections/community.crypto/pull/900).
  • ecs_domain — модуль удалён. Если вам нужен этот модуль, используйте community.crypto 2.x.y (https://github.com/ansible-collections/community.crypto/pull/900).
  • Зависимости среды выполнения — удалена зависимость PyOpenSSL (https://github.com/ansible-collections/community.crypto/pull/874).
  • openssl_csr_pipe — теперь модуль игнорирует режим проверки и всегда работает так, как если бы режим проверки был выключен (https://github.com/ansible-collections/community.crypto/pull/873).
  • openssl_pkcs12 — поддержка серверного компонента pyopenssl удалена (https://github.com/ansible-collections/community.crypto/pull/873).
  • openssl_privatekey_pipe — теперь модуль игнорирует режим проверки и всегда работает так, как если бы режим проверки был выключен (https://github.com/ansible-collections/community.crypto/pull/873).
  • Утилиты модулей time — удалён серверный компонент pyopenssl (https://github.com/ansible-collections/community.crypto/pull/874).
  • x509_certificate — провайдер entrust удалён. Если вам нужен этот провайдер, используйте community.crypto 2.x.y (https://github.com/ansible-collections/community.crypto/pull/900).
  • x509_certificate_pipe — провайдер entrust удалён. Если вам нужен этот провайдер, используйте community.crypto 2.x.y (https://github.com/ansible-collections/community.crypto/pull/900).
  • x509_certificate_pipe — теперь модуль игнорирует режим проверки и всегда работает так, как если бы режим проверки был выключен (https://github.com/ansible-collections/community.crypto/pull/873).

Исправления ошибок

  • acme_account — обеспечена работа с центрами сертификации, которые не принимают запросы на создание учётной записи без данных External Account Binding (https://github.com/ansible-collections/community.crypto/issues/918, https://github.com/ansible-collections/community.crypto/pull/919).
  • openssl_csr, openssl_csr_pipe — исключено обращение к внутренним элементам объекта расширения KeyUsage из cryptography (https://github.com/ansible-collections/community.crypto/pull/910).

v2.26.1

Сводка выпуска

Выпуск с исправлениями ошибок и обновлениями обслуживания, улучшен CI.

Исправления ошибок

  • luks_device — параметр passphrase_encoding помечен как no_log=False, чтобы избежать вводящего в заблуждение предупреждения (https://github.com/ansible-collections/community.crypto/pull/867).
  • luks_device — удаление определённого слота ключа с помощью remove_keyslot приводило к зависанию модуля: cryptsetup ожидал парольную фразу из stdin, но модуль её не предоставлял. Поскольку слот ключа не обязателен, он не передаётся (https://github.com/ansible-collections/community.crypto/issues/864, https://github.com/ansible-collections/community.crypto/pull/868).

v2.26.0

Сводка выпуска

Выпуск с новыми возможностями.

Минорные изменения

  • openssl_pkcs12 — модуль теперь поддерживает certificate_content/other_certificates_content в случаях, когда данные уже находятся в памяти, но ещё не записаны в файл (https://github.com/ansible-collections/community.crypto/issues/847, https://github.com/ansible-collections/community.crypto/pull/848).

v2.25.0

Сводка выпуска

Выпуск с новыми возможностями.

Минорные изменения

  • luks_device — разрешено использовать в парольных фразах символы перевода строки (https://github.com/ansible-collections/community.crypto/pull/844).

v2.24.0

Сводка выпуска

Выпуск с новыми возможностями и исправлениями ошибок, включающий несколько новых модулей. Также объявлена устаревшей поддержка старых версий ansible-core и Python.

Минорные изменения

  • acme_certificate — добавлены параметры order_creation_error_strategy и order_creation_max_retries, позволяющие настроить обработку ошибок при сбое создания нового заказа ACME. Это особенно важно при использовании параметра include_renewal_cert_id; значение по умолчанию auto для order_creation_error_strategy обеспечивает корректную обработку связанных ошибок (https://github.com/ansible-collections/community.crypto/pull/842).
  • acme_certificate — добавлена возможность выбирать профиль для создания сертификата, если центр сертификации поддерживает эту функцию с помощью Internet-Draft draft-aaron-acme-profiles (https://github.com/ansible-collections/community.crypto/pull/835).
  • acme_certificate_renewal_info — добавлены возвращаемые значения exists и parsable, а также параметр treat_parsing_error_as_non_existing (https://github.com/ansible-collections/community.crypto/pull/838).

Устаревшие возможности

  • Поддержка ansible-core 2.11, 2.12, 2.13, 2.14, 2.15 и 2.16 объявлена устаревшей и будет удалена в следующем мажорном выпуске (community.crypto 3.0.0). Некоторые модули могут продолжить работать с отдельными из этих версий, но мы больше не будем сохранять код совместимости, необходимый для их поддержки. Обратите внимание: это означает прекращение поддержки всех версий Python ниже 3.7, в том числе на целевом узле (https://github.com/ansible-collections/community.crypto/issues/559, https://github.com/ansible-collections/community.crypto/pull/839).
  • Поддержка cryptography < 3.4 объявлена устаревшей и будет удалена в следующем мажорном выпуске (community.crypto 3.0.0). Некоторые модули могут продолжить работать со старыми версиями cryptography, но мы больше не будем сохранять код совместимости, необходимый для их поддержки (https://github.com/ansible-collections/community.crypto/issues/559, https://github.com/ansible-collections/community.crypto/pull/839).

Исправления ошибок

  • crypto_info — при запуске модуля в Fedora 41 с cryptography, установленным из репозитория пакетов, происходил сбой. По-видимому, это было вызвано удалением из libssl некоторых эллиптических кривых, с которыми работает cryptography, чего cryptography не ожидала (https://github.com/ansible-collections/community.crypto/pull/834).

Новые модули

  • community.crypto.acme_certificate_order_create — создать заказ ACME v2.
  • community.crypto.acme_certificate_order_finalize — завершить заказ ACME v2.
  • community.crypto.acme_certificate_order_info — получить сведения о заказе ACME v2.
  • community.crypto.acme_certificate_order_validate — проверить авторизации заказа ACME v2.

v2.23.0

Сводка выпуска

Выпуск с новыми возможностями.

Минорные изменения

  • acme_certificate — добавлена совместимость с центрами сертификации ACME, которые не полностью соответствуют RFC8555 и не предоставляют challenges в объектах authz (https://github.com/ansible-collections/community.crypto/issues/824, https://github.com/ansible-collections/community.crypto/pull/832).
  • luks_device — разрешено передавать парольные фразы в кодировке base64 (https://github.com/ansible-collections/community.crypto/issues/827, https://github.com/ansible-collections/community.crypto/pull/829).
  • x509_certificate_convert — добавлен новый параметр verify_cert_parsable, позволяющий проверить, можно ли фактически разобрать сертификат (https://github.com/ansible-collections/community.crypto/issues/809, https://github.com/ansible-collections/community.crypto/pull/830).

Устаревшие возможности

  • openssl_pkcs12 — серверный компонент на основе PyOpenSSL объявлен устаревшим и будет удалён из community.crypto 3.0.0. После этого для использования данного модуля потребуется cryptography версии 3.0 или новее (https://github.com/ansible-collections/community.crypto/issues/667, https://github.com/ansible-collections/community.crypto/pull/831).

v2.22.3

Сводка выпуска

Выпуск с исправлениями ошибок.

Исправления ошибок

  • Модули acme_* — при использовании серверного компонента OpenSSL в коде Python явно задаётся часовой пояс UTC (https://github.com/ansible-collections/community.crypto/pull/811).
  • Утилиты модулей time — исправлено преобразование объектов datetime без часового пояса в метки времени UNIX для Python 3 (https://github.com/ansible-collections/community.crypto/issues/808, https://github.com/ansible-collections/community.crypto/pull/810).

v2.22.2

Сводка выпуска

Выпуск с исправлениями ошибок.

Исправления ошибок

  • acme_certificate — исправлен сбой авторизации, если CSR содержит SAN с буквами в разном регистре (https://github.com/ansible-collections/community.crypto/pull/803).

v2.22.1

Краткое описание выпуска

Выпуск с исправлениями ошибок.

Исправления ошибок

  • модули acme_* — при запросе сведений о продлении обеспечено добавление косой черты между базовым URL и идентификатором сертификата (https://github.com/ansible-collections/community.crypto/issues/801, https://github.com/ansible-collections/community.crypto/pull/802).
  • различные модули — передача абсолютных путей в module.atomic_move() (https://github.com/ansible/ansible/issues/83950, https://github.com/ansible-collections/community.crypto/pull/799).

v2.22.0

Краткое описание выпуска

Выпуск с новыми функциями.

Незначительные изменения

  • openssl_privatekey, openssl_privatekey_pipe — добавлено значение по умолчанию auto для параметра cipher, которое и так является единственным поддерживаемым значением для этого параметра. Поэтому при указании passphrase больше не нужно указывать cipher=auto (https://github.com/ansible-collections/community.crypto/issues/793, https://github.com/ansible-collections/community.crypto/pull/794).

v2.21.1

Краткое описание выпуска

Выпуск с обновлениями для поддержки.

Исправления ошибок

  • При использовании cryptography >= 43.0.0 для расширения X.509 CRL InvalidityDate вместо меток времени UTC без учета смещения используются объекты datetime.datetime с учетом смещения (с часовым поясом UTC) (https://github.com/ansible-collections/community.crypto/issues/726, https://github.com/ansible-collections/community.crypto/pull/730).

v2.21.0

Краткое описание выпуска

Выпуск с новыми функциями.

Незначительные изменения

  • certificate_complete_chain — добавлена возможность определять полные цепочки Ed25519 и Ed448 (https://github.com/ansible-collections/community.crypto/pull/777).
  • get_certificate — добавлен параметр tls_ctx_options для указания параметров SSL CTX (https://github.com/ansible-collections/community.crypto/pull/779).
  • get_certificate — добавлена возможность получать цепочку сертификатов, отправленную сервером, и цепочку, использованную для проверки, с помощью нового параметра get_certificate_chain. Обратите внимание, что этот параметр работает только при запуске модуля с Python 3.10 или новее (https://github.com/ansible-collections/community.crypto/issues/568, https://github.com/ansible-collections/community.crypto/pull/784).

v2.20.0

Краткое описание выпуска

Выпуск с новыми функциями и исправлениями ошибок.

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

Незначительные изменения

  • acme_certificate — добавлен параметр include_renewal_cert_id, позволяющий запрашивать продление определенного сертификата в соответствии с текущим проектом спецификации ACME Renewal Information (https://github.com/ansible-collections/community.crypto/pull/739).

Устаревшие функции

  • фрагмент документации acme — стандартный фрагмент документации community.crypto.acme[.documentation] признан устаревшим и будет удален из community.crypto 3.0.0. Замените его обоими новыми фрагментами community.crypto.acme.basic и community.crypto.acme.account (https://github.com/ansible-collections/community.crypto/pull/735).
  • служебные функции модуля acme.backends — метод get_cert_information() должен быть реализован для серверной части ACME-криптографии начиная с community.crypto 3.0.0 (https://github.com/ansible-collections/community.crypto/pull/736).
  • служебные функции модуля crypto.module_backends.common — служебный модуль crypto.module_backends.common признан устаревшим и будет удален из community.crypto 3.0.0. Вместо него используйте улучшенную служебную функцию модуля argspec (https://github.com/ansible-collections/community.crypto/pull/749).

Исправления ошибок

  • x509_crl, x509_certificate, x509_certificate_info — при разборе абсолютных меток времени без указания секунд первая цифра минут использовалась как однозначное значение минут, а вторая цифра минут — как однозначное значение секунд (https://github.com/ansible-collections/community.crypto/pull/745).

Новые модули

  • community.crypto.acme_ari_info — получает сведения ACME Renewal Information (ARI) для сертификата.
  • community.crypto.acme_certificate_deactivate_authz — деактивирует все authz для заказа ACME v2.
  • community.crypto.acme_certificate_renewal_info — определяет, следует ли продлевать сертификат.

v2.19.1

Краткое описание выпуска

Выпуск с исправлениями ошибок.

Исправления ошибок

  • служебные функции модуля crypto.math — изменены возвращаемые значения для quick_is_not_prime() и convert_int_to_bytes(0, 0) в особых случаях, которые не возникают при использовании коллекции (https://github.com/ansible-collections/community.crypto/pull/733).
  • ecs_certificate — исправлен параметр csr: теперь он может быть пустым и позволяет продлить определенный сертификат в соответствии со спецификацией Renewal Information (https://github.com/ansible-collections/community.crypto/pull/740).
  • x509_certificate — начиная с community.crypto 2.19.0 модуль перестал быть идемпотентным относительно времени not_before и not_after. Эта ошибка исправлена (https://github.com/ansible-collections/community.crypto/issues/753, https://github.com/ansible-collections/community.crypto/pull/754).

v2.19.0

Краткое описание выпуска

Выпуск с исправлениями ошибок и новыми функциями.

Незначительные изменения

  • При использовании cryptography >= 42.0.0 вместо меток времени UTC без учета смещения используются объекты datetime.datetime с учетом смещения (с часовым поясом UTC) (https://github.com/ansible-collections/community.crypto/issues/726, https://github.com/ansible-collections/community.crypto/pull/727).
  • openssh_cert — при использовании Python 3 не применяются функции UTC, устаревшие в Python 3.12 (https://github.com/ansible-collections/community.crypto/pull/727).

Устаревшие функции

  • служебные функции модуля acme.backends — начиная с community.crypto все реализации CryptoBackend должны переопределять get_ordered_csr_identifiers(). Текущая реализация по умолчанию, которая просто сортирует результат get_csr_identifiers(), после этого будет удалена (https://github.com/ansible-collections/community.crypto/pull/725).

Исправления ошибок

  • acme_certificate — при создании заказа ACME соблюдается порядок идентификаторов CNAME и SAN (https://github.com/ansible-collections/community.crypto/issues/723, https://github.com/ansible-collections/community.crypto/pull/725).

Новые модули

  • community.crypto.x509_certificate_convert — преобразует сертификаты X.509

v2.18.0

Краткое описание выпуска

Выпуск с исправлениями ошибок и новыми функциями.

Незначительные изменения

  • x509_crl — новый параметр serial_numbers позволяет настроить формат серийных номеров, передаваемых в revoked_certificates[].serial_number. Для обратной совместимости по умолчанию используются целые числа (serial_numbers=integer); установка serial_numbers=hex-octets позволяет указывать шестнадцатеричные октетные строки, разделенные двоеточиями, например 00:11:22:FF (https://github.com/ansible-collections/community.crypto/issues/687, https://github.com/ansible-collections/community.crypto/pull/715).

Устаревшие функции

  • openssl_csr_pipe, openssl_privatekey_pipe, x509_certificate_pipe — текущий режим работы в режиме проверки признан устаревшим и изменится в community.crypto 3.0.0. Сейчас поведение аналогично модулям без _pipe: если объект нужно создать заново, устанавливается только статус changed, но сам объект не обновляется. Начиная с community.crypto 3.0.0 модули будут игнорировать режим проверки и всегда работать так, как если бы он не был включен. Уже сейчас можно включить такое поведение, добавив check_mode: false в задачу. Если вы считаете, что это нарушает ваш сценарий использования модуля, пожалуйста, создайте issue в репозитории community.crypto (https://github.com/ansible-collections/community.crypto/issues/712, https://github.com/ansible-collections/community.crypto/pull/714).

Исправления ошибок

  • luks_device — исправлена ошибка модуля, из-за которой remove_keyslot нельзя было использовать со значением 0 (https://github.com/ansible-collections/community.crypto/pull/710).
  • luks_device — исправлена ошибка, из-за которой модуль выдавал changed=false при попытке добавить новый слот с ключом, уже имеющимся в другом слоте. Теперь модуль отклоняет добавление ключей, уже присутствующих в других слотах (https://github.com/ansible-collections/community.crypto/pull/710).
  • luks_device — исправлена проверка парольных фраз LUKS при указании keyslot для cryptsetup версии 2.0.3. Вывод этой версии cryptsetup немного отличается от вывода более поздних версий (https://github.com/ansible-collections/community.crypto/pull/710).

Новые плагины

Фильтр

  • community.crypto.parse_serial — преобразует серийный номер в виде списка шестнадцатеричных чисел, разделенных двоеточиями, в целое число
  • community.crypto.to_serial — преобразует целое число в список шестнадцатеричных чисел, разделенных двоеточиями

v2.17.1

Краткое описание выпуска

Выпуск с исправлениями ошибок для совместимости с cryptography 42.0.0.

Исправления ошибок

  • openssl_dhparam — при использовании серверной части cryptography для загрузки файлов параметров DH применялась внутренняя функция вместо публичного API. Эта внутренняя функция удалена в cryptography 42.0.0. Теперь модуль использует публичный API, доступный с момента добавления поддержки параметров DH в cryptography (https://github.com/ansible-collections/community.crypto/pull/698).
  • openssl_privatekey_info — check_consistency=true больше не работает с ключами RSA в cryptography 42.0.0 и новее (https://github.com/ansible-collections/community.crypto/pull/701).
  • openssl_privatekey_info — check_consistency=true теперь выводит предупреждение, если не удается определить согласованность (https://github.com/ansible-collections/community.crypto/pull/705).

v2.17.0

Краткое описание выпуска

Выпуск с новыми функциями.

Незначительные изменения

  • luks_device — добавлен параметр разрешения отбрасывания данных (https://github.com/ansible-collections/community.crypto/pull/693).

v2.16.2

Краткое описание выпуска

Выпуск с исправлениями ошибок.

Исправления ошибок

  • модули acme_* — немедленная обработка некорректных данных в ответах на запросы создания, получения и обновления учетных записей (https://github.com/ansible-collections/community.crypto/pull/682).
  • модули acme_* — улучшена отчетность об ошибках сокетов, некорректных строках состояния и неизвестных ошибках подключения (https://github.com/ansible-collections/community.crypto/pull/684).
  • модули acme_* — количество повторных попыток увеличено с 5 до 10 для повышения стабильности при работе с нестабильными конечными точками ACME (https://github.com/ansible-collections/community.crypto/pull/685).
  • модули acme_* — обработка регистрации учетной записи стала гибче: теперь принимается ответ 404 вместо 400, который отправляет конечная точка ACME DigiCert, если учетная запись не существует (https://github.com/ansible-collections/community.crypto/pull/681).

v2.16.1

Краткое описание выпуска

Выпуск с исправлениями ошибок.

Исправления ошибок

  • модули acme_* — запросы также повторяются при ошибках сокетов, некорректных строках состояния и неизвестных ошибках подключения; в этих случаях улучшены сообщения об ошибках (https://github.com/ansible-collections/community.crypto/issues/680).

v2.16.0

Краткое описание выпуска

Выпуск с исправлениями ошибок.

Незначительные изменения

  • luks_devices — добавлены новые параметры keyslot, new_keyslot и remove_keyslot, позволяющие добавлять и удалять ключи в определенных слотах ключей (https://github.com/ansible-collections/community.crypto/pull/664).

Исправления ошибок

  • openssl_pkcs12 — скорректировано автоматическое определение: теперь не определяется pyOpenSSL >= 23.3.0, в котором удалена поддержка PKCS#12 (https://github.com/ansible-collections/community.crypto/pull/666).

v2.15.1

Краткое описание выпуска

Выпуск с исправлениями ошибок.

Исправления ошибок

  • модули acme_* — корректная обработка документов с ошибками без type (https://github.com/ansible-collections/community.crypto/issues/651, https://github.com/ansible-collections/community.crypto/pull/652).

v2.15.0

Краткое описание выпуска

Выпуск с исправлениями ошибок и новыми функциями.

Незначительные изменения

  • openssh_keypair — завершение с ошибкой, если не удается обновить комментарий (https://github.com/ansible-collections/community.crypto/pull/646).

Устаревшие функции

  • get_certificate — значение false по умолчанию для параметра asn1_base64 признано устаревшим и изменится на true в community.crypto 3.0.0 (https://github.com/ansible-collections/community.crypto/pull/600).

Исправления ошибок

  • openssh_cert, openssh_keypair — в некоторых случаях модули игнорировали коды возврата ssh и ssh-keygen (https://github.com/ansible-collections/community.crypto/issues/645, https://github.com/ansible-collections/community.crypto/pull/646).
  • openssh_keypair — исправлено обновление комментария в OpenSSH до версии 6.5 (https://github.com/ansible-collections/community.crypto/pull/646).

Новые плагины

Фильтр

  • community.crypto.gpg_fingerprint — получает отпечаток GPG из открытого или закрытого ключа GPG

Поиск

  • community.crypto.gpg_fingerprint — получает отпечаток GPG из файла с открытым или закрытым ключом GPG

v2.14.1

Краткое описание выпуска

Выпуск с исправлениями ошибок и обновленной документацией.

Начиная с этой версии, в документации community.crypto используется новая семантическая разметка Ansible. Обратите внимание: если вы просматриваете документацию с помощью CLI-инструмента ansible-doc из ansible-core версии ниже 2.15, разметка отображается некорректно. В большинстве случаев документацию все равно можно прочитать, однако для ее отображения в задуманном виде требуется ansible-core 2.15 или новее. Также можно посетить сайт документации для ветки devel, где доступна отрисованная HTML-версия документации последнего выпуска.

Исправления ошибок

  • Обнаружение и идентификация PEM исправлены: теперь допускаются произвольные дополнительные строки перед строкой, начинающейся с -----BEGIN (https://github.com/ansible-collections/community.crypto/issues/627, https://github.com/ansible-collections/community.crypto/pull/628).

Известные проблемы

  • В текстовом выводе ansible-doc для ansible-core версий ниже 2.15 разметка Ansible отображается в исходном виде. Если вам сложно разобраться в разметке документации, обновите ansible-core до версии 2.15 или новее либо прочитайте документацию в формате HTML по адресу https://docs.ansible.com/ansible/devel/collections/community/crypto/.

v2.14.0

Краткое описание выпуска

Выпуск с новыми функциями.

Незначительные изменения

  • acme_certificate — разрешено использовать вариант без challenge, указав no challenge для параметра challenge. Это необходимо для серверов ACME, на которых проверка выполняется без challenge (https://github.com/ansible-collections/community.crypto/issues/613, https://github.com/ansible-collections/community.crypto/pull/615).
  • acme_certificate — проверка и ожидание challenge теперь выполняются параллельно, а не последовательно (https://github.com/ansible-collections/community.crypto/pull/617).
  • x509_certificate_info — добавлена поддержка сертификатов в формате DER при использовании параметра path (https://github.com/ansible-collections/community.crypto/issues/603).

v2.13.1

Краткое описание выпуска

Выпуск с исправлениями ошибок.

Исправления ошибок

  • определение среды выполнения — исправлена установка пакета python3-pyOpenSSL в CentOS и RHEL (https://github.com/ansible-collections/community.crypto/pull/606).
  • определение среды выполнения — исправлен источник пакета python3-pyOpenSSL для Rocky Linux 9 и новее (https://github.com/ansible-collections/community.crypto/pull/606).

v2.13.0

Краткое описание выпуска

Выпуск с исправлениями ошибок и обновлениями для поддержки.

Незначительные изменения

  • x509_crl — добавлен параметр crl_mode, заменяющий существующий параметр mode (https://github.com/ansible-collections/community.crypto/issues/596).

Устаревшие функции

  • x509_crl — параметр mode признан устаревшим; вместо него используйте crl_mode. В community.crypto 3.0.0 параметр mode изменит значение и будет указывать на режим файла CRL (https://github.com/ansible-collections/community.crypto/issues/596).

Исправления ошибок

  • openssh_keypair — если закрытый ключ не существует, всегда создается новая пара ключей. Ранее модуль завершался с ошибкой при regenerate=fail без существующего ключа, что противоречило документации (https://github.com/ansible-collections/community.crypto/pull/598).
  • x509_crl — устранена проблема с ansible-core 2.16: AnsibleModule теперь проверяет значения параметра mode (https://github.com/ansible-collections/community.crypto/issues/596).

v2.12.0

Краткое описание выпуска

Выпуск с новыми функциями.

Незначительные изменения

  • get_certificate — добавлен параметр asn1_base64, позволяющий управлять тем, возвращаются ли данные ASN.1 в значении extensions в двоичном виде или в кодировке Base64 (https://github.com/ansible-collections/community.crypto/pull/592).

v2.11.1

Краткое описание выпуска

Выпуск с обновлениями для поддержки и улучшенной документацией.

v2.11.0

Краткое описание выпуска

Выпуск с новыми функциями и исправлениями ошибок.

Незначительные изменения

  • get_certificate — добавлен параметр ciphers для выбора шифров (https://github.com/ansible-collections/community.crypto/pull/571).

Исправления ошибок

  • вспомогательный модуль action plugin — исправлена обработка устаревших элементов в ansible-core 2.14.2 (https://github.com/ansible-collections/community.crypto/pull/572).
  • бинарные зависимости среды выполнения (bindep.txt) — исправлено разрешение зависимости python3-pyOpenSSL на платформах RHEL 9 и новее и CentOS Stream 9 и новее (https://github.com/ansible-collections/community.crypto/pull/575).
  • различные плагины — удалены ненужные импорты (https://github.com/ansible-collections/community.crypto/pull/569).

v2.10.0

Краткое описание выпуска

Выпуск с исправлениями ошибок и новыми функциями.

Исправления ошибок

  • openssl_csr, openssl_csr_pipe — запрещены недопустимые значения crl_distribution_points, не содержащие один из элементов full_name, relative_name и crl_issuer (https://github.com/ansible-collections/community.crypto/pull/560).
  • openssl_publickey_info — предотвращено аварийное завершение с внутренней ошибкой, если не удается разобрать открытый ключ (https://github.com/ansible-collections/community.crypto/pull/551).

Новые плагины

Фильтр

  • community.crypto.openssl_csr_info — получает сведения из запросов на подпись сертификата OpenSSL (CSR)
  • community.crypto.openssl_privatekey_info — получает сведения о закрытых ключах OpenSSL
  • community.crypto.openssl_publickey_info — получает сведения об открытых ключах OpenSSL в формате PEM
  • community.crypto.split_pem — разделяет содержимое файла PEM на несколько объектов
  • community.crypto.x509_certificate_info — получает сведения о сертификатах X.509 в формате PEM
  • community.crypto.x509_crl_info — получает сведения о списках отзыва сертификатов X.509 (CRL) в формате PEM

v2.9.0

Сводка выпуска

Плановый выпуск с новыми функциями.

Незначительные изменения

  • x509_certificate_info — добавлено поле issuer_uri в возвращаемое значение на основе данных Authority Information Access (https://github.com/ansible-collections/community.crypto/pull/530).

v2.8.1

Сводка выпуска

Выпуск с исправлениями документации и улучшениями для сопровождения.

v2.8.0

Сводка выпуска

Выпуск с новыми функциями.

Незначительные изменения

  • Модули acme_* — более корректно обрабатывают ситуацию, когда новый запрос nonce от CA не возвращает nonce (https://github.com/ansible-collections/community.crypto/pull/525).
  • Модули acme_* — при наличии включают символьные коды состояния HTTP в сообщения об ошибках и журналы (https://github.com/ansible-collections/community.crypto/pull/524).
  • openssl_pkcs12 — добавлен параметр encryption_level, который позволяет выбрать compatibility2022 при использовании cryptography >= 38.0.0, чтобы включить более совместимый со старыми версиями алгоритм шифрования. Если cryptography использует OpenSSL 3.0.0 или новее, алгоритм по умолчанию несовместим со старым программным обеспечением (https://github.com/ansible-collections/community.crypto/pull/523).

v2.7.1

Сводка выпуска

Выпуск с исправлениями для сопровождения.

Исправления ошибок

  • Модули acme_* — улучшена обратная связь, если импорт cryptography не выполняется (https://github.com/ansible-collections/community.crypto/issues/518, https://github.com/ansible-collections/community.crypto/pull/519).

v2.7.0

Сводка выпуска

Выпуск с новыми функциями.

Незначительные изменения

  • Модули acme* — также поддерживают коды состояния HTTP 503 Service Unavailable и 408 Request Timeout для автоматических повторных попыток (https://github.com/ansible-collections/community.crypto/pull/513).

Исправления ошибок

  • openssl_privatekey_pipe — обеспечена совместимость с более новыми версиями ansible-core (https://github.com/ansible-collections/community.crypto/pull/515).

v2.6.0

Сводка выпуска

Выпуск с новыми функциями.

Незначительные изменения

  • Модули acme* — поддерживают код состояния HTTP 429 Too Many Requests (https://github.com/ansible-collections/community.crypto/pull/508).
  • openssh_keypair — добавлены pkcs1, pkcs8 и ssh в список доступных значений параметра private_key_format (https://github.com/ansible-collections/community.crypto/pull/511).

v2.5.0

Сводка выпуска

Выпуск с улучшенным объявлением лицензий и исправлениями документации.

Незначительные изменения

  • Все лицензии на программное обеспечение теперь находятся в каталоге LICENSES/ в корне коллекции. Кроме того, для объявления применимой лицензии каждого файла, который не создаётся автоматически, используется SPDX-License-Identifier: (https://github.com/ansible-collections/community.crypto/pull/491).

v2.4.0

Сводка выпуска

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

Устаревшие функции

  • Поддержка Ansible 2.9 и ansible-base 2.10 объявлена устаревшей и будет удалена в следующем основном выпуске (community.crypto 3.0.0). Некоторые модули могут продолжить работать с этими версиями и после этого, но мы больше не будем сохранять код совместимости, необходимый для их поддержки (https://github.com/ansible-collections/community.crypto/pull/460).

Исправления ошибок

  • openssl_pkcs12 — при использовании бэкенда pyOpenSSL не завершает работу с ошибкой при попытке чтения отсутствующих дополнительных сертификатов (https://github.com/ansible-collections/community.crypto/issues/486, https://github.com/ansible-collections/community.crypto/pull/487).

v2.3.4

Сводка выпуска

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

Ошибка в процессе выпуска привела к тому, что тег 2.3.3 был присвоен коммиту для версии 1.9.17, из-за чего конвейер выпуска повторно опубликовал версию 1.9.17 как 2.3.3.

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

v2.3.3

Сводка выпуска

Выпуск с исправлениями ошибок.

Исправления ошибок

  • Добавлен файл Apache-2.0.txt для plugins/module_utils/crypto/_obj2txt.py и plugins/module_utils/crypto/_objects_data.py.
  • openssl_csr — модуль больше не завершается с ошибкой «permitted_subtrees/excluded_subtrees must be a non-empty list or None», если указано только одно из значений name_constraints_permitted и name_constraints_excluded (https://github.com/ansible-collections/community.crypto/issues/481).
  • x509_crl — предотвращено завершение с ошибкой при подписании CRL ключами Ed25519 или Ed448 (https://github.com/ansible-collections/community.crypto/issues/473, https://github.com/ansible-collections/community.crypto/pull/474).

v2.3.2

Сводка выпуска

Выпуск с исправлениями для сопровождения и исправлениями ошибок.

Исправления ошибок

  • Добавлен файл лицензии simplified_bsd.txt для утилит модуля ECS.
  • certificate_complete_chain — выполнение не прекращается при обнаружении неподдерживаемого алгоритма подписи; вместо этого выводится предупреждение (https://github.com/ansible-collections/community.crypto/pull/457).

v2.3.1

Сводка выпуска

Выпуск с исправлениями для сопровождения.

Исправления ошибок

  • Добавлен файл PSF-license.txt для plugins/module_utils/_version.py.

v2.3.0

Сводка выпуска

Выпуск с новыми функциями и исправлениями ошибок.

Незначительные изменения

  • Коллекция подготовлена для включения в среду выполнения (Execution Environment): объявлены её зависимости. Обратите внимание, что для cryptography и PyOpenSSL используются системные пакеты, возможности которых могут быть весьма ограничены. Если вам нужны функции из более новых версий cryptography, потребуется вручную указать pip установить более новую версию, добавив, например, cryptography >= 37.0.0 в файл зависимостей Python вашей среды выполнения (https://github.com/ansible-collections/community.crypto/pull/440).
  • Добавлена поддержка автоматического преобразования интернационализированных доменных имён (IDN). При передаче общих имён, например альтернативных имён субъекта, в community.crypto.openssl_csr они будут автоматически преобразованы в IDNA. Преобразование выполняется для каждой метки: используется IDNA2008, если это возможно, и IDNA2003, если преобразование метки в IDNA2008 не удалось. Обратите внимание, что для преобразования IDNA требуется установить библиотеку Python idna. В зависимости от используемых версий библиотеки cryptography, она может повторно обработать преобразованные IDNA-данные с помощью библиотеки Python idna и отклонить значения в кодировке IDNA2003. Этого можно избежать, используя достаточно новую версию cryptography (https://github.com/ansible-collections/community.crypto/issues/426, https://github.com/ansible-collections/community.crypto/pull/436).
  • Модули acme_* — добавлен параметр request_timeout для настройки времени ожидания HTTP(S)-запроса (https://github.com/ansible-collections/community.crypto/issues/447, https://github.com/ansible-collections/community.crypto/pull/448).
  • luks_devices — добавлены perf_same_cpu_crypt, perf_submit_from_crypt_cpus, perf_no_read_workqueue и perf_no_write_workqueue для настройки производительности при открытии контейнеров LUKS2 (https://github.com/ansible-collections/community.crypto/issues/427).
  • luks_devices — добавлен параметр persistent для открытия контейнеров LUKS2 (https://github.com/ansible-collections/community.crypto/pull/434).
  • openssl_csr_info — добавлен параметр name_encoding для управления кодировкой (IDNA, Unicode), используемой при возврате доменных имён в общих именах (https://github.com/ansible-collections/community.crypto/pull/436).
  • openssl_pkcs12 — закрытый ключ можно передавать в виде текста, не считывая его из файла. Это позволяет хранить закрытый ключ в зашифрованном виде, например в Ansible Vault (https://github.com/ansible-collections/community.crypto/pull/452).
  • x509_certificate_info — добавлен параметр name_encoding для управления кодировкой (IDNA, Unicode), используемой при возврате доменных имён в общих именах (https://github.com/ansible-collections/community.crypto/pull/436).
  • x509_crl — добавлен параметр name_encoding для управления кодировкой (IDNA, Unicode), используемой при возврате доменных имён в общих именах (https://github.com/ansible-collections/community.crypto/pull/436).
  • x509_crl_info — добавлен параметр name_encoding для управления кодировкой (IDNA, Unicode), используемой при возврате доменных имён в общих именах (https://github.com/ansible-collections/community.crypto/pull/436).

Исправления ошибок

  • Повышена устойчивость коллекции при использовании PyOpenSSL с несовместимой версией cryptography (https://github.com/ansible-collections/community.crypto/pull/445).
  • x509_crl — исправлено завершение с ошибкой при указании issuer для отозванного сертификата (https://github.com/ansible-collections/community.crypto/pull/441).

v2.2.4

Сводка выпуска

Плановый выпуск с исправлениями для сопровождения.

Исправления ошибок

  • Модули openssh_* — исправлена обработка исключений: теперь пользователям передаётся трассировка стека для упрощения отслеживания ошибок (https://github.com/ansible-collections/community.crypto/pull/417).

v2.2.3

Сводка выпуска

Плановый выпуск с исправлениями ошибок.

Исправления ошибок

  • luks_device — исправлен разбор вывода lsblk, если имя устройства оканчивается на crypt (https://github.com/ansible-collections/community.crypto/issues/409, https://github.com/ansible-collections/community.crypto/pull/410).

v2.2.2

Сводка выпуска

Плановый выпуск с исправлениями ошибок.

В этом выпуске мы расширили матрицу тестирования, добавив Alpine 3, ArchLinux, Debian Bullseye и CentOS Stream 8. CentOS 8 был удалён из матрицы тестирования.

Исправления ошибок

  • certificate_complete_chain — разрешено наличие нескольких потенциальных промежуточных сертификатов с одним и тем же субъектом (https://github.com/ansible-collections/community.crypto/issues/399, https://github.com/ansible-collections/community.crypto/pull/403).
  • x509_certificate — для поставщика ownca проверяется, действительно ли закрытый ключ CA соответствует сертификату CA (https://github.com/ansible-collections/community.crypto/pull/407).
  • x509_certificate — сертификат пересоздаётся при изменении открытого ключа CA для provider=ownca (https://github.com/ansible-collections/community.crypto/pull/407).
  • x509_certificate — сертификат пересоздаётся при изменении субъекта CA для provider=ownca (https://github.com/ansible-collections/community.crypto/issues/400, https://github.com/ansible-collections/community.crypto/pull/402).
  • x509_certificate — сертификат пересоздаётся при изменении закрытого ключа для provider=selfsigned (https://github.com/ansible-collections/community.crypto/pull/407).

v2.2.1

Сводка выпуска

Выпуск с исправлениями ошибок.

Исправления ошибок

  • openssh_cert — исправлена ошибочная отметка changed у сертификатов host при использовании full_idempotence (https://github.com/ansible-collections/community.crypto/issues/395, https://github.com/ansible-collections/community.crypto/pull/396).

v2.2.0

Сводка выпуска

Плановый выпуск с исправлениями ошибок и новыми функциями.

Незначительные изменения

  • openssh_cert — добавлен параметр ignore_timestamps, позволяющий использовать модуль с относительными временными метками в valid_to/valid_from в полурежиме идемпотентности (https://github.com/ansible-collections/community.crypto/issues/379).

Исправления ошибок

  • luks_devices — задаются LANG и аналогичные переменные окружения, чтобы предотвратить перевод вывода, который может нарушить работу некоторых функций модуля, например управления ключами (https://github.com/ansible-collections/community.crypto/pull/388, https://github.com/ansible-collections/community.crypto/issues/385).

v2.1.0

Сводка выпуска

Выпуск с новыми функциями и исправлениями ошибок.

Незначительные изменения

  • Скорректированы сообщения об ошибках, указывающие на отсутствие cryptography: теперь в них вместо Can't используется Cannot (https://github.com/ansible-collections/community.crypto/pull/374).

Исправления ошибок

  • Различные модули и плагины — используется включённая в коллекцию версия distutils.version вместо устаревшей стандартной библиотеки Python distutils (https://github.com/ansible-collections/community.crypto/pull/353).
  • certificate_complete_chain — корневой сертификат не добавляется повторно, если цепочка уже заканчивается корневым сертификатом (https://github.com/ansible-collections/community.crypto/pull/360).
  • certificate_complete_chain — предотвращено зависание при обнаружении бесконечного цикла (https://github.com/ansible-collections/community.crypto/issues/355, https://github.com/ansible-collections/community.crypto/pull/360).

Новые модули

  • community.crypto.crypto_info — получение сведений о криптографических возможностях
  • community.crypto.openssl_privatekey_convert — преобразование закрытых ключей OpenSSL

v2.0.2

Сводка выпуска

Выпуск с исправлениями документации. Фактических изменений кода нет.

v2.0.1

Сводка выпуска

Выпуск с исправлениями ошибок и дополнительной обратной совместимостью с более новыми версиями cryptography.

Незначительные изменения

  • Модули acme_* — исправлено использование fetch_url с учётом изменений в последней ветке devel ansible-core (https://github.com/ansible-collections/community.crypto/pull/339).

Исправления ошибок

  • acme_certificate — предотвращена передача нескольких сертификатов загрузчику сертификатов X.509 из cryptography при использовании fullchain_dest (https://github.com/ansible-collections/community.crypto/pull/324).
  • get_certificate, openssl_csr_info, x509_certificate_info — добавлен резервный код разбора расширений, совместимый с cryptography 36.0.0 и новее. Этот код повторно сериализует десериализованные расширения и поэтому может возвращать несколько отличающиеся значения, если расширение в исходном CSR или сертификате было канонизировано неправильно. Сейчас этот код используется в качестве резервного варианта на случай, если существующий код перестанет работать, но в будущем выпуске мы сделаем его основным (https://github.com/ansible-collections/community.crypto/pull/331).
  • luks_device — теперь также запускает встроенную утилиту очистки сигнатур LUKS для state=absent, чтобы убедиться, что при использовании старых версий wipefs стирается и вторичный заголовок LUKS2 (https://github.com/ansible-collections/community.crypto/issues/326, https://github.com/ansible-collections/community.crypto/pull/327).
  • openssl_pkcs12 — при наличии используется новая инфраструктура десериализации PKCS#12 из cryptography 36.0.0 (https://github.com/ansible-collections/community.crypto/pull/302).

v2.0.0

Обзор выпуска

Новый крупный выпуск коллекции community.crypto. Основные изменения — удаление бэкендов PyOpenSSL почти для всех модулей (openssl_pkcs12 — единственное исключение) и удаление провайдера assertonly из провайдера x509_certificate. Также внесены другие несовместимые изменения, которые в долгосрочной перспективе должны улучшить интерфейс и удобство работы с этой коллекцией.

Незначительные изменения

  • acme_certificate — поля subject и issuer в записях select_chain теперь проверяются строже (https://github.com/ansible-collections/community.crypto/pull/316).
  • openssl_csr, openssl_csr_pipe — добавлена новая опция subject_ordered на случай, если порядок компонентов в субъекте имеет значение (https://github.com/ansible-collections/community.crypto/issues/291, https://github.com/ansible-collections/community.crypto/pull/316).
  • openssl_csr, openssl_csr_pipe — теперь значения опции subject проверяются строже (https://github.com/ansible-collections/community.crypto/pull/316).
  • openssl_privatekey_info — добавлена опция check_consistency для запроса проверки согласованности закрытого ключа (https://github.com/ansible-collections/community.crypto/pull/309).
  • x509_certificate, x509_certificate_pipe — добавлена опция ignore_timestamps, позволяющая включить идемпотентность для параметров «not before» и «not after» (https://github.com/ansible-collections/community.crypto/issues/295, https://github.com/ansible-collections/community.crypto/pull/317).
  • x509_crl — добавлена новая опция issuer_ordered на случай, если порядок компонентов издателя имеет значение (https://github.com/ansible-collections/community.crypto/issues/291, https://github.com/ansible-collections/community.crypto/pull/316).
  • x509_crl — теперь значения опции issuer проверяются строже (https://github.com/ansible-collections/community.crypto/pull/316).

Несовместимые изменения / руководство по переносу

  • Изменен код разбора текста dirName и преобразования в текст в соответствии с разделами 2 и 3 RFC 4514. Это аналогично тому, как библиотека cryptography обрабатывает эти данные (https://github.com/ansible-collections/community.crypto/pull/274).
  • Утилиты модулей acme — удален код обеспечения совместимости (https://github.com/ansible-collections/community.crypto/pull/290).
  • Модули acme_* — удалена поставляемая вместе с коллекцией копия библиотеки Python ipaddress. Если вы используете Python 2.x, убедитесь, что библиотека установлена (https://github.com/ansible-collections/community.crypto/pull/287).
  • compatibility module_utils — удалена поставляемая вместе с коллекцией копия библиотеки Python ipaddress (https://github.com/ansible-collections/community.crypto/pull/287).
  • Утилиты криптографических модулей — удален код обеспечения совместимости (https://github.com/ansible-collections/community.crypto/pull/290).
  • get_certificate, openssl_csr_info, x509_certificate_info — в зависимости от используемой версии cryptography модули могут возвращать не значение ASN.1 расширения, содержащееся в сертификате или CSR, а его повторно закодированную версию. Обычно она должна совпадать со значением в исходном файле, если только это значение не было некорректным. Для расширений, не обрабатываемых C(cryptography), всегда возвращается исходное значение без изменений (https://github.com/ansible-collections/community.crypto/pull/318).
  • module_utils — удалены различные вспомогательные функции для поддержки PyOpenSSL и значения бэкенда по умолчанию, не требуемые модулю openssl_pkcs12 (https://github.com/ansible-collections/community.crypto/pull/273).
  • openssl_csr, openssl_csr_pipe, x509_crl — поля subject и issuer больше не игнорируют пустые значения, а завершают работу с ошибкой при их обнаружении (https://github.com/ansible-collections/community.crypto/pull/316).
  • openssl_privatekey_info — по умолчанию проверки согласованности не выполняются; для их запуска необходимо явно передать check_consistency=true (https://github.com/ansible-collections/community.crypto/pull/309).
  • x509_crl — при проверке идемпотентности порядок issuer игнорируется. Если порядок имеет значение, используйте новую опцию issuer_ordered (https://github.com/ansible-collections/community.crypto/pull/316).

Устаревшие функции

  • Модули acme_* — поддержка ACME версии 1 объявлена устаревшей и будет удалена в community.crypto 2.0.0 (https://github.com/ansible-collections/community.crypto/pull/288).

Удаленные функции (ранее объявленные устаревшими)

  • Модули acme_* — параметр acme_directory теперь является обязательным (https://github.com/ansible-collections/community.crypto/pull/290).
  • Модули acme_* — параметр acme_version теперь является обязательным (https://github.com/ansible-collections/community.crypto/pull/290).
  • acme_account_facts — удалено перенаправление, объявленное устаревшим. Вместо него используйте community.crypto.acme_account_info (https://github.com/ansible-collections/community.crypto/pull/290).
  • acme_account_info — retrieve_orders=url_list больше не возвращает значение orders. Вместо него используйте возвращаемое значение order_uris (https://github.com/ansible-collections/community.crypto/pull/290).
  • crypto.info module_utils — удалено перенаправление, объявленное устаревшим. Вместо него используйте crypto.pem (https://github.com/ansible-collections/community.crypto/pull/290).
  • get_certificate — удален бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • openssl_certificate — удалено перенаправление, объявленное устаревшим. Вместо него используйте community.crypto.x509_certificate (https://github.com/ansible-collections/community.crypto/pull/290).
  • openssl_certificate_info — удалено перенаправление, объявленное устаревшим. Вместо него используйте community.crypto.x509_certificate_info (https://github.com/ansible-collections/community.crypto/pull/290).
  • openssl_csr — удален бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • openssl_csr и openssl_csr_pipe — version теперь принимает только значение 1 (используемое по умолчанию) (https://github.com/ansible-collections/community.crypto/pull/290).
  • openssl_csr_info — удален бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • openssl_csr_pipe — удален бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • openssl_privatekey — удален бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • openssl_privatekey_info — удален бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • openssl_privatekey_pipe — удален бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • openssl_publickey — удален бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • openssl_publickey_info — удален бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • openssl_signature — удален бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • openssl_signature_info — удален бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • x509_certificate — удален провайдер assertonly (https://github.com/ansible-collections/community.crypto/pull/289).
  • x509_certificate — удален бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • x509_certificate_info — удален бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • x509_certificate_pipe — удален бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).

Исправления ошибок

  • Бэкенд cryptography — улучшена обработка Unicode в Python 2 (https://github.com/ansible-collections/community.crypto/pull/313).
  • get_certificate — исправлена совместимость с выпуском cryptography 35.0.0 (https://github.com/ansible-collections/community.crypto/pull/294).
  • openssl_csr_info — исправлена совместимость с выпуском cryptography 35.0.0 (https://github.com/ansible-collections/community.crypto/pull/294).
  • openssl_pkcs12 — исправлена совместимость с выпуском cryptography 35.0.0 (https://github.com/ansible-collections/community.crypto/pull/296).
  • x509_certificate_info — исправлена совместимость с выпуском cryptography 35.0.0 (https://github.com/ansible-collections/community.crypto/pull/294).

v1.9.4

Обзор выпуска

Очередной выпуск с исправлениями ошибок.

Исправления ошибок

  • Модули acme_* — исправлено формирование команд для бэкенда OpenSSL, считывающих сведения о CSR и сертификатах из stdin: вместо - теперь используется /dev/stdin. По-видимому, это необходимо для OpenSSL 1.0.1 и 1.0.2 (https://github.com/ansible-collections/community.crypto/pull/279).
  • acme_challenge_cert_helper — исключение теперь возвращается только в том случае, если cryptography не установлена, но не если установлена слишком старая версия. Это предотвращает сбой callback Ansible (https://github.com/ansible-collections/community.crypto/pull/281).

v1.9.3

Обзор выпуска

Очередной выпуск с исправлениями ошибок.

Исправления ошибок

  • openssl_csr и openssl_csr_pipe — для сравнения строк с бэкендом cryptography теперь используются строки Unicode. Это исправляет проблемы с идемпотентностью для букв, не входящих в ASCII, в Python 2 (https://github.com/ansible-collections/community.crypto/issues/270, https://github.com/ansible-collections/community.crypto/pull/271).

v1.9.2

Обзор выпуска

Выпуск с исправлением журнала изменений. Других отличий от версии 1.9.0 нет.

v1.9.1

Обзор выпуска

Случайный выпуск версии 1.9.1. Идентичен версии 1.9.0.

v1.9.0

Обзор выпуска

Очередной выпуск с новыми функциями.

Незначительные изменения

  • get_certificate — добавлена опция starttls для получения сертификатов с серверов, требующих от клиентов запроса зашифрованного соединения (https://github.com/ansible-collections/community.crypto/pull/264).
  • openssh_keypair — добавлена поддержка diff (https://github.com/ansible-collections/community.crypto/pull/260).

Исправления ошибок

  • Утилиты модулей keypair_backend — упрощен код для прохождения проверок sanity (https://github.com/ansible-collections/community.crypto/pull/263).
  • openssh_keypair — исправлен бэкенд cryptography: при повторной генерации пары ключей с перезаписью существующих файлов сохраняются исходные права доступа к файлам (https://github.com/ansible-collections/community.crypto/pull/260).
  • openssh_keypair — исправлена обработка ошибок, позволяющая восстановить исходную пару ключей, если повторная генерация завершается неудачей (https://github.com/ansible-collections/community.crypto/pull/260).
  • x509_crl — восстановлена унаследованная сигнатура функции для прохождения проверок sanity (https://github.com/ansible-collections/community.crypto/pull/263).

v1.8.0

Обзор выпуска

Очередной выпуск с исправлениями ошибок и новыми функциями.

Незначительные изменения

  • Вместо внутренних module_utils ansible-core теперь используется эквивалентный общедоступный API, доступный как минимум с Ansible 2.9 (https://github.com/ansible-collections/community.crypto/pull/253).
  • Утилиты модулей сертификатов OpenSSH — добавлены новые module_utils для разбора сертификатов OpenSSH (https://github.com/ansible-collections/community.crypto/pull/246).
  • openssh_cert — добавлена опция regenerate для проверки дополнительных параметров сертификата, изменение которых приводит к повторной генерации существующего сертификата (https://github.com/ansible-collections/community.crypto/pull/256).
  • openssh_cert — добавлена поддержка diff (https://github.com/ansible-collections/community.crypto/pull/255).

Исправления ошибок

  • openssh_cert — исправлена генерация сертификата: при возникновении ошибки восстанавливается исходный сертификат (https://github.com/ansible-collections/community.crypto/pull/255).
  • openssh_keypair — исправлена ошибка, из-за которой пользовательские атрибуты файла не применялись к открытым ключам (https://github.com/ansible-collections/community.crypto/pull/257).

v1.7.1

Обзор выпуска

Выпуск с исправлениями ошибок.

Исправления ошибок

  • openssl_pkcs12 — исправлен сбой при загрузке защищенных парольной фразой файлов PKCS#12 с бэкендом cryptography (https://github.com/ansible-collections/community.crypto/issues/247, https://github.com/ansible-collections/community.crypto/pull/248).

v1.7.0

Обзор выпуска

Очередной выпуск с новыми функциями и исправлениями ошибок.

Незначительные изменения

  • Утилиты модулей cryptography_openssh — добавлены новые module_utils для управления асимметричными парами ключей и асимметричными парами ключей в формате OpenSSH (https://github.com/ansible-collections/community.crypto/pull/213).
  • openssh_keypair — добавлен параметр backend для выбора между библиотекой cryptography и исполняемым файлом OpenSSH при выполнении действий, выполняемых с помощью openssh_keypair (https://github.com/ansible-collections/community.crypto/pull/236).
  • openssh_keypair — добавлен параметр passphrase для шифрования и расшифрования закрытых ключей OpenSSH (https://github.com/ansible-collections/community.crypto/pull/225).
  • openssl_csr — добавлен режим diff (https://github.com/ansible-collections/community.crypto/issues/38, https://github.com/ansible-collections/community.crypto/pull/150).
  • openssl_csr_info — теперь возвращает public_key_type и public_key_data (https://github.com/ansible-collections/community.crypto/pull/233).
  • openssl_csr_info — модуль переработан для повторного использования кода в режиме diff (https://github.com/ansible-collections/community.crypto/pull/204).
  • openssl_csr_pipe — добавлен режим diff (https://github.com/ansible-collections/community.crypto/issues/38, https://github.com/ansible-collections/community.crypto/pull/150).
  • openssl_pkcs12 — добавлена опция select_crypto_backend и бэкенд cryptography. Для этого требуется cryptography версии 3.0 или новее; опции iter_size и maciter_size не поддерживаются (https://github.com/ansible-collections/community.crypto/pull/234).
  • openssl_privatekey — добавлен режим diff (https://github.com/ansible-collections/community.crypto/issues/38, https://github.com/ansible-collections/community.crypto/pull/150).
  • openssl_privatekey_info — модуль переработан для повторного использования кода в режиме diff (https://github.com/ansible-collections/community.crypto/pull/205).
  • openssl_privatekey_pipe — добавлен режим diff (https://github.com/ansible-collections/community.crypto/issues/38, https://github.com/ansible-collections/community.crypto/pull/150).
  • openssl_publickey — добавлен режим diff (https://github.com/ansible-collections/community.crypto/issues/38, https://github.com/ansible-collections/community.crypto/pull/150).
  • x509_certificate — добавлен режим diff (https://github.com/ansible-collections/community.crypto/issues/38, https://github.com/ansible-collections/community.crypto/pull/150).
  • x509_certificate_info — теперь возвращает public_key_type и public_key_data (https://github.com/ansible-collections/community.crypto/pull/233).
  • x509_certificate_info — модуль переработан для повторного использования кода в режиме diff (https://github.com/ansible-collections/community.crypto/pull/206).
  • x509_certificate_pipe — добавлен режим diff (https://github.com/ansible-collections/community.crypto/issues/38, https://github.com/ansible-collections/community.crypto/pull/150).
  • x509_crl — добавлен режим diff (https://github.com/ansible-collections/community.crypto/issues/38, https://github.com/ansible-collections/community.crypto/pull/150).
  • x509_crl_info — добавлена опция list_revoked_certificates, позволяющая не перечислять все отозванные сертификаты (https://github.com/ansible-collections/community.crypto/pull/232).
  • x509_crl_info — модуль переработан для повторного использования кода в режиме diff (https://github.com/ansible-collections/community.crypto/pull/203).

Исправления ошибок

  • openssh_keypair — исправлен check_mode: теперь возвращаемые значения заполняются для существующих пар ключей (https://github.com/ansible-collections/community.crypto/issues/113, https://github.com/ansible-collections/community.crypto/pull/230).
  • Различные модули — предотвращены сбои, возникавшие, когда модули пытались задать атрибуты еще не существующим файлам в режиме проверки. Эта проблема будет исправлена в ansible-core 2.12, но исправление не будет перенесено во все поддерживаемые версии Ansible (https://github.com/ansible-collections/community.crypto/issue/242, https://github.com/ansible-collections/community.crypto/pull/243).
  • x509_certificate — исправлен сбой при использовании провайдера assertonly в случаях, когда необходимо сообщить об ошибке (https://github.com/ansible-collections/community.crypto/issues/240, https://github.com/ansible-collections/community.crypto/pull/241).

Новые модули

  • community.crypto.openssl_publickey_info — предоставляет сведения об открытых ключах OpenSSL

v1.6.2

Обзор выпуска

Выпуск с исправлениями ошибок. Исправлена проблема совместимости модулей ACME со step-ca.

Исправления ошибок

  • Модули acme_* — предотвращен сбой при работе с серверами ACME, в каталоге которых отсутствует ключ meta (https://github.com/ansible-collections/community.crypto/issues/220, https://github.com/ansible-collections/community.crypto/pull/221).

v1.6.1

Обзор выпуска

Выпуск с исправлениями ошибок.

Исправления ошибок

  • Модули acme_* — исправлено некорректное использование ACMEProtocolException (https://github.com/ansible-collections/community.crypto/pull/216, https://github.com/ansible-collections/community.crypto/pull/217).

v1.6.0

Сводка выпуска

Исправлены проблемы совместимости с последней бета-версией ansible-core 2.11; также выполнен значительный внутренний рефакторинг модулей ACME и добавлена поддержка парольных фраз закрытых ключей для них.

Незначительные изменения

  • acme module_utils — acme module_utils разделён на несколько модулей Python (https://github.com/ansible-collections/community.crypto/pull/184).
  • Модули acme_* — рефакторинг кодовой базы, который не должен быть заметен конечным пользователям (https://github.com/ansible-collections/community.crypto/pull/184).
  • Модули acme_* — поддержка парольных фраз ключей учётных записей для бэкенда cryptography (https://github.com/ansible-collections/community.crypto/issues/197, https://github.com/ansible-collections/community.crypto/pull/207).
  • acme_certificate_revoke — поддержка отзыва с помощью закрытых ключей, защищённых парольной фразой, для бэкенда cryptography (https://github.com/ansible-collections/community.crypto/pull/207).
  • acme_challenge_cert_helper — добавлен параметр private_key_passphrase (https://github.com/ansible-collections/community.crypto/pull/207).

Устаревшие функции

  • acme module_utils — модуль acme module_utils (ansible_collections.community.crypto.plugins.module_utils.acme) объявлен устаревшим и будет удалён в community.crypto 2.0.0. Вместо него используйте новые модули Python из пакета acme (ansible_collections.community.crypto.plugins.module_utils.acme.xxx) (https://github.com/ansible-collections/community.crypto/pull/184).

Исправления ошибок

  • Вспомогательный плагин action_module — обеспечена совместимость с последними изменениями в ansible-core 2.11.0b3 (https://github.com/ansible-collections/community.crypto/pull/202).
  • openssl_privatekey_pipe — обеспечена совместимость с последними изменениями в ansible-core 2.11.0b3 (https://github.com/ansible-collections/community.crypto/pull/202).

v1.5.0

Сводка выпуска

Очередной выпуск с новыми функциями и исправлениями ошибок. Одно возвращаемое значение объявлено устаревшим.

Незначительные изменения

  • acme_account_info — если retrieve_orders не является ignore и сервер ACME разрешает запрашивать заказы, новое возвращаемое значение order_uris всегда заполняется списком URI (https://github.com/ansible-collections/community.crypto/pull/178).
  • luks_device — добавлена возможность указывать размер сектора для контейнеров LUKS2 с помощью нового параметра sector_size (https://github.com/ansible-collections/community.crypto/pull/193).

Устаревшие функции

  • acme_account_info — при условии retrieve_orders=url_list значение orders больше не будет возвращаться в community.crypto 2.0.0. Вместо него используйте order_uris (https://github.com/ansible-collections/community.crypto/pull/178).

Исправления ошибок

  • openssl_csr — больше не завершается с ошибкой при сравнении CSR без базового ограничения, если задано basic_constraints (https://github.com/ansible-collections/community.crypto/issues/179, https://github.com/ansible-collections/community.crypto/pull/180).

v1.4.0

Сводка выпуска

Выпуск с несколькими новыми функциями и исправлениями ошибок.

Незначительные изменения

  • Лицензия ACME module_utils снова изменена с упрощённой лицензии BSD (https://opensource.org/licenses/BSD-2-Clause) на GPLv3+ (ту же лицензию, что используют большинство других компонентов этой коллекции). Это отменяет изменение лицензии, внесённое при переносе исходного кода под лицензией GPLv3+ в module_utils в https://github.com/ansible/ansible/pull/40697 (https://github.com/ansible-collections/community.crypto/pull/165).
  • Переименован crypto/identify.py module_utils в crypto/pem.py (https://github.com/ansible-collections/community.crypto/pull/166).
  • luks_device — new_keyfile, new_passphrase, remove_keyfile и remove_passphrase теперь идемпотентны (https://github.com/ansible-collections/community.crypto/issues/19, https://github.com/ansible-collections/community.crypto/pull/168).
  • luks_device — добавлена возможность настраивать PBKDF (https://github.com/ansible-collections/community.crypto/pull/163).
  • openssl_csr, openssl_csr_pipe — добавлена возможность указывать конечные точки распространения CRL с помощью crl_distribution_points (https://github.com/ansible-collections/community.crypto/issues/147, https://github.com/ansible-collections/community.crypto/pull/167).
  • openssl_pkcs12 — добавлена возможность указывать наборы сертификатов в other_certificates с помощью нового параметра other_certificates_parse_all (https://github.com/ansible-collections/community.crypto/issues/149, https://github.com/ansible-collections/community.crypto/pull/166).

Исправления ошибок

  • acme_certificate — теперь при отсутствии запрошенного типа проверки для непрошедших проверку задач выдаётся ошибка вместо зависания на шаге 2 (https://github.com/ansible-collections/community.crypto/issues/171, https://github.com/ansible-collections/community.crypto/pull/173).

v1.3.0

Сводка выпуска

Добавлены новые модули openssl_privatekey_pipe, openssl_csr_pipe и x509_certificate_pipe, позволяющие создавать или обновлять закрытые ключи, CSR и сертификаты X.509 без записи на диск.

Незначительные изменения

  • openssh_cert — добавлен параметр модуля use_agent, позволяющий использовать ключи подписи, хранящиеся в ssh-agent (https://github.com/ansible-collections/community.crypto/issues/116).
  • openssl_csr — модуль переработан для повторного использования кода в openssl_csr_pipe (https://github.com/ansible-collections/community.crypto/pull/123).
  • openssl_privatekey — модуль переработан для повторного использования кода в openssl_privatekey_pipe (https://github.com/ansible-collections/community.crypto/pull/119).
  • openssl_privatekey — эллиптическая кривая secp192r1 теперь вызывает предупреждение системы безопасности. Для новых ключей следует использовать эллиптические кривые размером не менее 224 бит; см. здесь (https://github.com/ansible-collections/community.crypto/pull/132).
  • x509_certificate — для провайдера selfsigned CSR больше не требуется. Если CSR не предоставлен, модуль действует так, как если бы был предоставлен минимальный CSR, содержащий только открытый ключ (https://github.com/ansible-collections/community.crypto/issues/32, https://github.com/ansible-collections/community.crypto/pull/129).
  • x509_certificate — модуль переработан для повторного использования кода в x509_certificate_pipe (https://github.com/ansible-collections/community.crypto/pull/135).

Исправления ошибок

  • openssl_pkcs12 — возвращается правильное состояние, когда action имеет значение parse (https://github.com/ansible-collections/community.crypto/issues/143).
  • Вспомогательный код — улучшена обработка ошибок при загрузке сертификатов и запросов на подпись сертификатов (CSR) с помощью бэкенда cryptography (https://github.com/ansible-collections/community.crypto/issues/138, https://github.com/ansible-collections/community.crypto/pull/139).
  • x509_certificate — исправлен провайдер entrust, который не работал с community.crypto 0.1.0 из-за функции, добавленной до переноса коллекции (https://github.com/ansible-collections/community.crypto/pull/135).

Новые модули

  • community.crypto.openssl_csr_pipe — создание запроса на подпись сертификата (CSR) OpenSSL
  • community.crypto.openssl_privatekey_pipe — создание закрытых ключей OpenSSL без доступа к диску
  • community.crypto.x509_certificate_pipe — создание и/или проверка сертификатов OpenSSL

v1.2.0

Сводка выпуска

Обратите внимание: в этом выпуске устранена проблема безопасности (CVE-2020-25646).

Незначительные изменения

  • acme_certificate — добавлена возможность передавать файл CSR в виде содержимого с помощью нового параметра csr_content (https://github.com/ansible-collections/community.crypto/pull/115).
  • x509_certificate_info — добавлено возвращаемое значение fingerprints, содержащее отпечатки сертификата (https://github.com/ansible-collections/community.crypto/pull/121).

Исправления безопасности

  • openssl_csr — параметр privatekey_content не был помечен как no_log, поэтому по умолчанию его значение записывалось в системный журнал и возвращалось в зарегистрированных результатах в поле invocation (CVE-2020-25646, https://github.com/ansible-collections/community.crypto/pull/125).
  • openssl_privatekey_info — параметр content не был помечен как no_log, поэтому по умолчанию его значение записывалось в системный журнал и возвращалось в зарегистрированных результатах в поле invocation (CVE-2020-25646, https://github.com/ansible-collections/community.crypto/pull/125).
  • openssl_publickey — параметр privatekey_content не был помечен как no_log, поэтому по умолчанию его значение записывалось в системный журнал и возвращалось в зарегистрированных результатах в поле invocation (CVE-2020-25646, https://github.com/ansible-collections/community.crypto/pull/125).
  • openssl_signature — параметр privatekey_content не был помечен как no_log, поэтому по умолчанию его значение записывалось в системный журнал и возвращалось в зарегистрированных результатах в поле invocation (CVE-2020-25646, https://github.com/ansible-collections/community.crypto/pull/125).
  • x509_certificate — параметры privatekey_content и ownca_privatekey_content не были помечены как no_log, поэтому по умолчанию их значения записывались в системный журнал и возвращались в зарегистрированных результатах в поле invocation (CVE-2020-25646, https://github.com/ansible-collections/community.crypto/pull/125).
  • x509_crl — параметр privatekey_content не был помечен как no_log, поэтому по умолчанию его значение записывалось в системный журнал и возвращалось в зарегистрированных результатах в поле invocation (CVE-2020-25646, https://github.com/ansible-collections/community.crypto/pull/125).

Исправления ошибок

  • openssl_pkcs12 — больше не происходит сбой при чтении файла PKCS#12, в котором отсутствует закрытый ключ и/или основной сертификат (https://github.com/ansible-collections/community.crypto/issues/103).

v1.1.1

Сводка выпуска

Исправления ошибок для Ansible 2.10.0.

Исправления ошибок

  • meta/runtime.yml — номера версий Ansible для старых имён модулей преобразуются в номера версий коллекции (https://github.com/ansible-collections/community.crypto/pull/108).
  • openssl_csr — улучшена обработка ошибок IDNA (https://github.com/ansible-collections/community.crypto/issues/105).

v1.1.0

Сводка выпуска

Выпуск для Ansible 2.10.0.

Незначительные изменения

  • acme_account — добавлен параметр external_account_binding, позволяющий создавать учётные записи ACME с привязкой внешней учётной записи (External Account Binding) (https://github.com/ansible-collections/community.crypto/issues/89).
  • acme_certificate — добавлен новый селектор test_certificates: first для параметра select_chain (https://github.com/ansible-collections/community.crypto/pull/102).
  • Бэкенды cryptography — добавлена поддержка произвольных точечных OID (https://github.com/ansible-collections/community.crypto/issues/39).
  • get_certificate — добавлена поддержка SNI (https://github.com/ansible-collections/community.crypto/issues/69).
  • luks_device — добавлена поддержка параметров шифрования при создании контейнера (https://github.com/ansible-collections/community.crypto/pull/97).
  • openssh_cert — добавлена поддержка токенов PKCS#11 (https://github.com/ansible-collections/community.crypto/pull/95).
  • openssl_certificate — теперь бэкенд PyOpenSSL использует 160 бит случайных данных для серийных номеров вместо случайного числа от 1000 до 99999. Обратите внимание, что это не высококачественное случайное число (https://github.com/ansible-collections/community.crypto/issues/76).
  • openssl_csr — добавлена поддержка расширения ограничений имён (https://github.com/ansible-collections/community.crypto/issues/46).
  • openssl_csr_info — добавлена поддержка расширения ограничений имён (https://github.com/ansible-collections/community.crypto/issues/46).

Исправления ошибок

  • acme_inspect — исправлена проблема в Python 3.5, из-за которой JSON не декодировался (https://github.com/ansible-collections/community.crypto/issues/86).
  • get_certificate — исправлена обработка параметра ca_cert при использовании proxy_host (https://github.com/ansible-collections/community.crypto/pull/84).
  • Модули openssl_* и x509_* — исправлена обработка общих имён, обозначающих IP-сети, а не IP-адреса (https://github.com/ansible-collections/community.crypto/pull/92).

Новые модули

  • community.crypto.openssl_signature — подписание данных с помощью openssl
  • community.crypto.openssl_signature_info — проверка подписей с помощью openssl

v1.0.0

Сводка выпуска

Это первый полноценный выпуск коллекции community.crypto. В этом журнале изменений перечислены все изменения модулей этой коллекции, внесённые после выпуска Ansible 2.9.0.

Незначительные изменения

  • luks_device — поддерживаются passphrase, new_passphrase и remove_passphrase.
  • luks_device — добавлен параметр keysize для задания размера ключа при создании контейнера LUKS
  • luks_device — добавлена поддержка использования UUID и меток с контейнерами LUKS2
  • luks_device — добавлен параметр type, позволяющий явно задавать версию формата контейнера LUKS
  • openssh_keypair — вместо повторной генерации некоторых повреждённых или защищённых паролем ключей модуль завершает работу с ошибкой. Ключи по-прежнему можно повторно сгенерировать, вызвав модуль с параметром force=yes.
  • openssh_keypair — параметр regenerate позволяет настроить поведение модуля при необходимости или намерении повторно сгенерировать закрытые ключи.
  • Модули openssl_* — бэкенд cryptography теперь корректно поддерживает имена dirName, otherName и RID (Registered ID).
  • openssl_certificate — добавлен параметр для выбора каталога ACME, используемого с acme-tiny. Каталог ACME по умолчанию изменён на Let’s Encrypt вместо стандартного каталога acme-tiny. (В настоящее время acme-tiny также использует Let’s Encrypt, поэтому никаких действий не требуется.)
  • openssl_certificate — минимальная требуемая версия acme-tiny изменена на >= 4.0.0
  • openssl_certificate — добавлена возможность передавать содержимое некоторых входных файлов с помощью параметров csr_content, privatekey_content, ownca_privatekey_content и ownca_content.
  • openssl_certificate — добавлена возможность возвращать существующий/созданный сертификат напрямую как certificate, установив return_content в yes.
  • openssl_certificate_info — добавлена возможность передавать содержимое сертификата с помощью параметра content (https://github.com/ansible/ansible/issues/64776).
  • openssl_csr — добавлена поддержка задания значения SAN otherName в формате строки UTF8 OpenSSL ASN.1 — otherName:<OID>;UTF8:string value.
  • openssl_csr — добавлена возможность передавать содержимое закрытого ключа с помощью параметра private_key_content.
  • openssl_csr — добавлена возможность возвращать существующий/созданный CSR напрямую как csr, установив return_content в yes.
  • openssl_csr_info — добавлена возможность передавать содержимое CSR с помощью параметра content.
  • openssl_dhparam — добавлена возможность возвращать существующие/созданные параметры DH напрямую как dhparams, установив return_content в yes.
  • openssl_dhparam — теперь поддерживается бэкенд на основе cryptography. Автоматическое определение можно переопределить с помощью параметра select_crypto_backend.
  • openssl_pkcs12 — добавлена возможность возвращать существующий/созданный PKCS#12 напрямую как pkcs12, установив return_content в yes.
  • openssl_privatekey — добавлены параметры format и format_mismatch.
  • openssl_privatekey — добавлена возможность возвращать существующий/созданный закрытый ключ напрямую как privatekey, установив return_content в yes.
  • openssl_privatekey — параметр regenerate позволяет настроить поведение модуля при необходимости или намерении повторно сгенерировать закрытые ключи.
  • openssl_privatekey_info — добавлена возможность передавать содержимое закрытого ключа с помощью параметра content.
  • openssl_publickey — добавлена возможность передавать содержимое закрытого ключа с помощью параметра private_key_content.
  • openssl_publickey — добавлена возможность возвращать существующий/созданный открытый ключ напрямую как publickey, установив return_content в yes.

Устаревшие функции

  • openssl_csr — все значения параметра version, кроме 1, объявлены устаревшими. Значение 1 обозначает единственную действующую стандартизированную версию CSR.

Удалённые функции (ранее объявленные устаревшими)

  • Модуль letsencrypt удалён. Вместо него используйте acme_certificate.

Исправления ошибок

  • Модули ACME: исправлена ошибка в коде обновления учётных записей ACME v1
  • Модули ACME: обеспечена корректная обработка некоторых ошибок подключения
  • Модули ACME: добавлена поддержка конечной точки ACME v1 компании Buypass
  • acme_certificate — исправлен сбой при использовании модуля с Python 2.x.
  • acme_certificate — исправлено некорректное поведение при использовании ACME v1 с параметром modify_account, установленным в false.
  • ecs_certificate — для подключений к ECS API всегда указывается заголовок connection: keep-alive.
  • ecs_certificate — исправлено форматирование содержимого full_chain_path.
  • get_certificate — исправлена работа бэкенда cryptography при недоступности pyopenssl (https://github.com/ansible/ansible/issues/67900)
  • openssh_keypair — добавлена логика, предотвращающая повреждение ключей, защищённых паролем.
  • openssh_keypair — исправлена проблема с идемпотентностью открытого ключа (https://github.com/ansible/ansible/issues/64969).
  • openssh_keypair — атрибуты файла открытого ключа (права доступа, владелец, группа и т. д.) теперь устанавливаются в те же значения, что и для закрытого ключа.
  • Модули openssl_* — предотвращён сбой при определении отпечатка в режиме FIPS (https://github.com/ansible/ansible/issues/67213).
  • openssl_certificate — если провайдер — entrust, для подключений к ECS API используется заголовок connection: keep-alive.
  • openssl_certificate — параметр provider был задокументирован как обязательный, однако его наличие не проверялось. Теперь он обязателен, только если state имеет значение present.
  • openssl_certificate — исправлена проверка сертификата провайдером assertonly, вызывавшая ошибки «несоответствие закрытого ключа» и «несоответствие субъекта».
  • openssl_certificate и openssl_csr — исправлена поддержка закрытых ключей Ed25519 и Ed448 для бэкенда cryptography. Вероятно, для этого требуется как минимум cryptography 2.8, поскольку в более ранних версиях возникают проблемы при подписании сертификатов или CSR такими ключами. (https://github.com/ansible/ansible/issues/59039, PR https://github.com/ansible/ansible/pull/63984)
  • openssl_csr — если для бэкенда cryptography используется неподдерживаемое значение version, выводится предупреждение.
  • openssl_csr — теперь модуль проверяет, что параметр privatekey_path задан, если state=present.
  • openssl_publickey — исправлен сбой модуля, возникавший при отсутствии установленного pyOpenSSL (https://github.com/ansible/ansible/issues/67035).

Новые модули

  • community.crypto.ecs_domain — запрос проверки домена с помощью API Entrust Certificate Services (ECS)
  • community.crypto.x509_crl — создание списков отзыва сертификатов (CRL)
  • community.crypto.x509_crl_info — получение сведений о списках отзыва сертификатов (CRL)

© 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/changelog.html

Spec-Zone.ru

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