ansible.windows.win_certificate_store – Управляет хранилищем сертификатов
Примечание
Этот плагин входит в состав коллекции ansible.windows (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install ansible.windows.
Для использования в плейбуке укажите: ansible.windows.win_certificate_store.
Обзор
- Используется для импорта/экспорта и удаления сертификатов и ключей из локального хранилища сертификатов.
- Этот модуль не используется для создания сертификатов и будет управлять только существующими сертификатами в виде файла или в хранилище.
- Он может использоваться для импорта сертификатов в форматах PEM, DER, P7B, PKCS12 (PFX) и экспорта сертификатов в форматах PEM, DER и PKCS12.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| file_type строка |
| Тип файла для экспорта сертификата, когда state=exported. der — это двоичный файл ASN.1.pem — это файл в кодировке base64 от der-файла в формате OpenSSL.pkcs12 (также известен как pfx) — двоичный контейнер, содержащий как сертификат, так и закрытый ключ, в отличие от других вариантов.Если pkcs12 установлен, а закрытый ключ не экспортируется или недоступен для текущего пользователя, будет выброшено исключение. |
| key_exportable логическое значение |
| Разрешить экспорт закрытого ключа. Если no, этот модуль и другие процессы смогут экспортировать только сертификат, а закрытый ключ экспортировать нельзя.Используется, когда state=present только. |
| key_storage строка |
| Указывает, где Windows сохранит закрытый ключ при импорте. При значении default, используется значение по умолчанию, установленное Windows, обычно user. При значении machine, ключ хранится в пути, доступном различным пользователям.При значении user, ключ хранится в пути, доступном только текущему пользователю.Используется, когда state=present только и не может быть изменен после импорта.См. https://msdn.microsoft.com/en-us/library/system.security.cryptography.x509certificates.x509keystorageflags.aspx для получения дополнительной информации. |
| password строка | Пароль ключа сертификата pkcs12. Используется при чтении файла сертификата pkcs12 или для установки пароля, когда state=exported и file_type=pkcs12.Если файл pkcs12 не имеет пароля или пароль не должен быть установлен в экспортируемом файле, не устанавливайте этот параметр. | |
| path путь | Путь к файлу сертификата. Необходим, когда state равен present или exported.Когда state равен absent, а thumbprint не указан, отпечаток сертификата извлекается из сертификата по этому пути. | |
| state строка |
| Если present, гарантирует импорт сертификата из path в указанное хранилище.Если absent, гарантирует удаление сертификата, определенного по thumbprint или отпечатку сертификата из path из указанного хранилища.Если exported, гарантирует, что файл по path содержит сертификат, определенный по thumbprint.При экспорте сертификата, если path является каталогом, модуль завершится с ошибкой, в противном случае файл будет заменён, если это необходимо. |
| store_location строка |
| Местоположение хранилища для использования при импорте сертификата или поиске сертификата. |
| store_name строка |
| Имя хранилища для использования при импорте сертификата или поиске сертификата. AddressBook: Хранилище X.509 сертификатов для других пользователейAuthRoot: Хранилище X.509 сертификатов для сертификационных авторитетов (CA) третьих сторонCertificateAuthority: Хранилище X.509 сертификатов для промежуточных сертификационных авторитетов (CA)Disallowed: Хранилище X.509 сертификатов для отозванных сертификатовMy: Хранилище X.509 сертификатов для личных сертификатовRoot: Хранилище X.509 сертификатов для доверенных корневых сертификационных авторитетов (CA)TrustedPeople: Хранилище X.509 сертификатов для непосредственно доверенных людей и ресурсовTrustedPublisher: Хранилище X.509 сертификатов для непосредственно доверенных издателей |
| thumbprint строка | Отпечаток в формате шестнадцатеричной строки для экспорта или удаления. См. примеры для указания отпечатка. |
Примечания
Примечание
- Некоторые действия с сертификатами и ключами PKCS12 могут завершиться ошибкой
the specified network password is not correct. Используйте CredSSP или Kerberos с делегированием учетных данных илиbecome, чтобы обойти эти ограничения. - Сертификаты должны быть расположены на хосте Windows для использования с параметром path.
- При импорте сертификата для использования в IIS обычно требуется использовать параметр
machinekey_storage, так какdefaultиuserсделают закрытый ключ нечитаемым для учетных записей IIS APPPOOL и помешают привязке сертификата к https-точке входа.
Примеры
- name: Import a certificate
ansible.windows.win_certificate_store:
path: C:\Temp\cert.pem
state: present
- name: Import pfx certificate that is password protected
ansible.windows.win_certificate_store:
path: C:\Temp\cert.pfx
state: present
password: VeryStrongPasswordHere!
become: yes
become_method: runas
- name: Import pfx certificate without password and set private key as un-exportable
ansible.windows.win_certificate_store:
path: C:\Temp\cert.pfx
state: present
key_exportable: no
# usually you don't set this here but it is for illustrative purposes
vars:
ansible_winrm_transport: credssp
- name: Remove a certificate based on file thumbprint
ansible.windows.win_certificate_store:
path: C:\Temp\cert.pem
state: absent
- name: Remove a certificate based on thumbprint
ansible.windows.win_certificate_store:
thumbprint: BD7AF104CF1872BDB518D95C9534EA941665FD27
state: absent
- name: Remove certificate based on thumbprint is CurrentUser/TrustedPublishers store
ansible.windows.win_certificate_store:
thumbprint: BD7AF104CF1872BDB518D95C9534EA941665FD27
state: absent
store_location: CurrentUser
store_name: TrustedPublisher
- name: Export certificate as der encoded file
ansible.windows.win_certificate_store:
path: C:\Temp\cert.cer
state: exported
file_type: der
- name: Export certificate and key as pfx encoded file
ansible.windows.win_certificate_store:
path: C:\Temp\cert.pfx
state: exported
file_type: pkcs12
password: AnotherStrongPass!
become: yes
become_method: runas
become_user: SYSTEM
- name: Import certificate be used by IIS
ansible.windows.win_certificate_store:
path: C:\Temp\cert.pfx
file_type: pkcs12
password: StrongPassword!
store_location: LocalMachine
key_storage: machine
state: present
become: yes
become_method: runas
become_user: SYSTEM
Значения возврата
Общие значения возврата описаны здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращённое значение | Описание |
|---|---|---|
| thumbprints список / элементы=строка | успех | Список отпечатков сертификатов, которые были затронуты модулем. Пример: ['BC05633694E675449136679A658281F17A191087'] |
Авторы
- Jordan Borean (@jborean93)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/ansible/windows/win_certificate_store_module.html