community.crypto.openssl_csr_info – Предоставление информации о запросах на подписание сертификатов OpenSSL (CSR)
Примечание
Этот плагин входит в коллекцию community.crypto (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install community.crypto.
Чтобы использовать его в книге задач, укажите: community.crypto.openssl_csr_info.
Краткое описание
- Этот модуль позволяет получать информацию о запросах на подписание сертификатов OpenSSL (CSR).
- В случае, если подпись CSR не может быть валидирована, модуль завершится с ошибкой. В этом случае все возвращаемые переменные всё равно будут возвращены.
- Он использует библиотеки pyOpenSSL или cryptography для взаимодействия с OpenSSL. Если обе библиотеки (cryptography и PyOpenSSL) доступны (и соответствуют минимальным требованиям по версиям), cryptography будет предпочтительнее PyOpenSSL в качестве бэкенда (если бэкенд не принудительно задан с помощью
select_crypto_backend). Обратите внимание, что бэкенд PyOpenSSL был устаревшим в Ansible 2.9 и будет удален в community.crypto 2.0.0.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- PyOpenSSL >= 0.15 или cryptography >= 1.3
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| content строка добавлено в 1.0.0 community.crypto | Содержимое файла CSR. Должен быть указан либо параметр path, либо content, но не оба одновременно. | |
| path путь | Абсолютный удалённый путь к файлу CSR. Должен быть указан либо параметр path, либо content, но не оба одновременно. | |
| select_crypto_backend строка |
| Определяет используемый криптографический бэкенд. Значение по умолчанию auto, которое пытается использовать cryptography, если оно доступно, и переходит к pyopenssl. Если задано pyopenssl, то будет использована библиотека pyOpenSSL.Если задано cryptography, то будет использована библиотека cryptography.Обратите внимание, что бэкенд pyopenssl был устаревшим в Ansible 2.9 и будет удален в community.crypto 2.0.0. После этого останется доступен только бэкенд cryptography. |
См. также
См. также
- community.crypto.openssl_csr
-
Официальная документация модуля community.crypto.openssl_csr.
- community.crypto.openssl_csr_pipe
-
Официальная документация модуля community.crypto.openssl_csr_pipe.
Примеры
- name: Generate an OpenSSL Certificate Signing Request
community.crypto.openssl_csr:
path: /etc/ssl/csr/www.ansible.com.csr
privatekey_path: /etc/ssl/private/ansible.com.pem
common_name: www.ansible.com
- name: Get information on the CSR
community.crypto.openssl_csr_info:
path: /etc/ssl/csr/www.ansible.com.csr
register: result
- name: Dump information
debug:
var: result
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое значение | Описание | |
|---|---|---|---|
| authority_cert_issuer список / элементы=строка | успех, и если используется не backend pyOpenSSL | Издатель сертификата-авторитета CSR в виде списка общих имён. Значение none если расширение AuthorityKeyIdentifier отсутствует.Пример: [DNS:www.ansible.com, IP:1.2.3.4] | |
| authority_cert_serial_number целое число | успех, и если используется не backend pyOpenSSL | Серийный номер сертификата-авторитета CSR. Значение none если расширение AuthorityKeyIdentifier отсутствует.Пример: 12345 | |
| authority_key_identifier строка | успех, и если используется не backend pyOpenSSL | Идентификатор ключа авторитета CSR. Идентификатор возвращается в шестнадцатеричном формате, с : используемым для разделения байтов.Значение none если расширение AuthorityKeyIdentifier отсутствует.Пример: 00:11:22:33:44:55:66:77:88:99:aa:bb:cc:dd:ee:ff:00:11:22:33 | |
| basic_constraints список / элементы=строка | успех | Элементы расширения basic_constraints, или none если расширение отсутствует.Пример: [CA:TRUE, pathlen:1] | |
| basic_constraints_critical булево | успех | Является ли расширение basic_constraints критическим. | |
| extended_key_usage список / элементы=строка | успех | Элементы расширения extended_key_usage, или none если расширение отсутствует.Пример: [Biometric Info, DVCS, Time Stamping] | |
| extended_key_usage_critical булево | успех | Является ли расширение extended_key_usage критическим. | |
| extensions_by_oid словарь | успех | Возвращает словарь для каждого расширения OID Пример: {"1.3.6.1.5.5.7.1.24": { "critical": false, "value": "MAMCAQU="}} | |
| critical булево | успех | Является ли расширение критическим. | |
| value строка | успех | Значение расширения в кодировке Base64 (в формате DER). Пример: MAMCAQU= | |
| key_usage строка | успех | Элементы расширения key_usage, или none если расширение отсутствует.Пример: [Key Agreement, Data Encipherment] | |
| key_usage_critical булево | успех | Является ли расширение key_usage критическим. | |
| name_constraints_critical булево добавлен в 1.1.0 community.crypto | успех | Является ли расширение name_constraints критическим.Значение none если расширение отсутствует. | |
| name_constraints_excluded список / элементы=строка добавлен в 1.1.0 of community.crypto | успех | Список исключенных поддеревьев, сертификаты для которых не могут быть подписаны. Значение none если расширение отсутствует.Пример: ['email:.com'] | |
| name_constraints_permitted список / элементы=строка добавлен в 1.1.0 of community.crypto | успех | Список разрешённых поддеревьев, сертификаты для которых могут быть подписаны. Пример: ['email:.somedomain.com'] | |
| ocsp_must_staple булево | успех | yes если расширение OCSP Must Staple присутствует, none в противном случае. | |
| ocsp_must_staple_critical булево | успех | Является ли расширение ocsp_must_staple критическим. | |
| public_key строка | успех | Открытый ключ CSR в формате PEM. Пример: -----BEGIN PUBLIC KEY----- MIICIjANBgkqhkiG9w0BAQEFAAOCAg8A... | |
| public_key_fingerprints словарь | успех | Отпечатки пальцев открытого ключа CSR. Для каждого доступного алгоритма хеширования вычисляется отпечаток пальца. Пример: {'sha256': 'd4:b3:aa:6d:c8:04:ce:4e:ba:f6:29:4d:92:a3:94:b0:c2:ff:bd:bf:33:63:11:43:34:0f:51:b0:95:09:2f:63', 'sha512': 'f7:07:4a:f0:b0:f0:e6:8b:95:5f:f9:e6:61:0a:32:68:f1... | |
| signature_valid булево | успех | Является ли подпись CSR валидной. В случае, если проверка вернёт no, модуль завершится ошибкой. | |
| subject словарь | успех | Субъект CSR в виде словаря. Обратите внимание, что для повторяющихся значений возвращается только последнее. Пример: {"commonName": "www.example.com", "emailAddress": "test@example.com"} | |
| subject_alt_name список / элементы=строка | успех | Элементы расширения subject_alt_name, или none если расширение отсутствует.Пример: [DNS:www.ansible.com, IP:1.2.3.4] | |
| subject_alt_name_critical булево | успех | Является ли расширение subject_alt_name критическим. | |
| subject_key_identifier строка | успех, и если используется не backend pyOpenSSL | Идентификатор ключа субъекта CSR. Идентификатор возвращается в шестнадцатеричном формате, с : используемым для разделения байтов.Значение none если расширение SubjectKeyIdentifier отсутствует.Пример: 00:11:22:33:44:55:66:77:88:99:aa:bb:cc:dd:ee:ff:00:11:22:33 | |
| subject_ordered список / элементы=список | успех | Субъект CSR в виде упорядоченного списка кортежей. Пример: [["commonName", "www.example.com"], ["emailAddress": "test@example.com"]] | |
Авторы
- Фёдор Фонтейн (@felixfontein)
- Янис Гюнане (@Spredzy)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/crypto/openssl_csr_info_module.html