Spec-Zone.ru › Ansible

Модуль azure.azcollection.azure_rm_keyvaultcertificate — Управляемый сертификат Key Vault

Примечание

Этот модуль входит в коллекцию azure.azcollection (версия 3.18.0).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в состав ansible-core. Чтобы проверить, установлена ли она, выполните команду ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install azure.azcollection. Для использования этого модуля требуются дополнительные компоненты; подробности см. в разделе Требования.

Чтобы использовать модуль в плейбуке, укажите: azure.azcollection.azure_rm_keyvaultcertificate.

Добавлено в azure.azcollection 3.4.0

  • Краткое описание
  • Требования
  • Параметры
  • Примечания
  • См. также
  • Примеры
  • Возвращаемые значения

Краткое описание

  • Управляемый сертификат Key Vault.

Требования

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

  • python >= 2.7
  • На узле, на котором выполняется этот модуль, должна быть установлена коллекция azure.azcollection через galaxy
  • Все пакеты python, перечисленные в файле requirements.txt коллекции, должны быть установлены через pip на узле, на котором выполняются модули из azure.azcollection
  • Полные инструкции по установке приведены здесь: https://galaxy.ansible.com/azure/azcollection

Параметры

Параметр

Комментарии

ad_user

string

Имя пользователя Active Directory. Используйте этот параметр для аутентификации от имени пользователя Active Directory, а не субъекта-службы.

adfs_authority_url

string

добавлено в azure.azcollection 0.0.1

URL-адрес центра Azure AD. Используйте этот параметр для аутентификации с помощью имени пользователя и пароля, если у вас есть собственный центр ADFS.

api_profile

string

добавлено в azure.azcollection 0.0.1

Выбирает профиль API для взаимодействия со службами Azure. Значение по умолчанию latest подходит для общедоступных облаков; в будущем можно будет использовать другие значения для Azure Stack.

По умолчанию: "latest"

append_tags

boolean

Определяет, является ли поле тегов каноническим или только добавляет значения к существующим тегам.

Если поле является каноническим, все теги, отсутствующие в параметре tags, будут удалены из метаданных объекта.

Варианты:

  • false
  • true ← (по умолчанию)

auth_source

string

добавлено в azure.azcollection 0.0.1

Определяет источник учетных данных для аутентификации.

Также можно задать с помощью переменной среды ANSIBLE_AZURE_AUTH_SOURCE.

Если задано значение auto (по умолчанию), приоритет источников следующий: параметры модуля -> env -> credential_file -> cli.

Если задано значение env, учетные данные будут считываться из переменных среды.

Если задано значение credential_file, профиль будет считываться из ~/.azure/credentials.

Если задано значение cli, учетные данные будут получены из профиля Azure CLI. Для определения идентификатора подписки, если их несколько, можно использовать subscription_id или переменную среды AZURE_SUBSCRIPTION_ID; в противном случае будет использоваться подписка Azure CLI по умолчанию.

Если задано значение msi, хост-компьютер должен быть ресурсом Azure с включенным расширением MSI. Для определения идентификатора подписки, если ресурсу предоставлен доступ к нескольким подпискам, можно использовать subscription_id или переменную среды AZURE_SUBSCRIPTION_ID; в противном случае будет выбрана первая подписка.

Параметр msi добавлен в Ansible 2.6.

Варианты:

  • "auto" ← (по умолчанию)
  • "cli"
  • "credential_file"
  • "env"
  • "msi"

cert_data

string

Существующий действительный сертификат с закрытым ключом, который нужно добавить в Azure Key Vault.

cert_validation_mode

string

добавлено в azure.azcollection 0.0.1

Определяет поведение проверки сертификатов для конечных точек Azure. По умолчанию все модули проверяют сертификат сервера, но при использовании HTTPS-прокси или Azure Stack может потребоваться отключить эту проверку, передав ignore. Также можно задать в профиле файла учетных данных или с помощью переменной среды AZURE_CERT_VALIDATION.

Варианты:

  • "ignore"
  • "validate"

client_id

string

Идентификатор клиента Azure. Используйте этот параметр для аутентификации с помощью субъекта-службы или управляемого удостоверения (msi).

Также можно задать с помощью переменной среды AZURE_CLIENT_ID.

cloud_environment

string

добавлено в azure.azcollection 0.0.1

Для облачных сред, отличных от общедоступного облака США, укажите имя среды (как определено в Azure Python SDK, например, AzureChinaCloud, AzureUSGovernment) или URL-адрес конечной точки обнаружения метаданных (обязателен для Azure Stack). Также можно задать в профиле файла учетных данных или с помощью переменной среды AZURE_CLOUD_ENVIRONMENT.

По умолчанию: "AzureCloud"

disable_instance_discovery

boolean

добавлено в azure.azcollection 2.3.0

Определяет, выполняется ли обнаружение экземпляра при попытке аутентификации. Если задать значение true, обнаружение экземпляра и проверка центра будут полностью отключены. Эта функция предназначена для использования в сценариях, когда конечная точка метаданных недоступна, например в частных облаках или Azure Stack. Процесс обнаружения экземпляра включает получение метаданных центра с https://login.microsoft.com/ для проверки центра. Если задать значение **True**, проверка центра будет отключена. Поэтому крайне важно убедиться, что настроенный хост центра является допустимым и заслуживающим доверия.

Задается в профиле файла учетных данных или с помощью переменной среды AZURE_DISABLE_INSTANCE_DISCOVERY.

Варианты:

  • false ← (по умолчанию)
  • true

enabled

boolean

Определяет, включен ли сертификат для использования.

Варианты:

  • false
  • true

log_mode

string

Родительский аргумент.

log_path

string

Родительский аргумент.

name

string / обязательный

Имя сертификата.

oidc_token

string

добавлено в azure.azcollection 3.17.0

Токен OpenID Connect (OIDC) (JWT), используемый для аутентификации с помощью удостоверения рабочей нагрузки.

Этот токен обменивается с Azure AD с использованием федеративного удостоверения OIDC.

Полезен в системах CI (например, GitHub Actions, Azure DevOps), где платформа напрямую предоставляет токен OIDC.

Также можно задать с помощью переменной среды AZURE_FEDERATED_TOKEN.

oidc_token_file_path

path

добавлено в azure.azcollection 3.17.0

Путь к файлу, содержащему токен OpenID Connect (OIDC) (JWT), используемый для аутентификации с помощью удостоверения рабочей нагрузки.

Файл должен содержать только необработанный токен.

Этот способ часто используется на платформах, которые сохраняют токены OIDC в файлах.

Также можно задать с помощью переменной среды AZURE_FEDERATED_TOKEN_FILE.

password

string

Если закрытый ключ переданного сертификата зашифрован, укажите пароль, использованный для шифрования.

policy

dictionary

Политика управления сертификатом.

При создании нового сертификата, если политика не задана, будет использоваться политика по умолчанию.

certificate_transparency

boolean

Определяет, следует ли публиковать сертификаты, созданные в соответствии с этой политикой, в журналах прозрачности сертификатов.

Варианты:

  • false
  • true

certificate_type

string

Тип сертификата, запрашиваемого у поставщика издателя.

content_type

string

Тип носителя (MIME-тип) секрета, на основе которого создан сертификат.

Варианты:

  • "application/x-pkcs12" ← (по умолчанию)
  • "application/x-pem-file"

enhanced_key_usage

list / элементы=string

Дополнительные способы использования ключа сертификата.

exportable

boolean

Определяет, можно ли экспортировать закрытый ключ. Допустимые значения см. в разделе KeyType.

Варианты:

  • false
  • true

issuer_name

string

Имя связанного объекта издателя или зарезервированное имя. Например, self и unknown.

Варианты:

  • "self"
  • "unknown"

key_curve_name

string

Имя эллиптической кривой. Допустимые значения см. в разделе KeyCurveName.

Варианты:

  • "P-256"
  • "P-384"
  • "P-521"
  • "P-256K"

key_size

integer

Размер ключа в битах. Например, 2048, 3072 или 4096 для RSA.

key_type

string

Тип пары ключей, используемой для сертификата.

Варианты:

  • "EC"
  • "EC-HSM"
  • "RSA"
  • "RSA-HSM"
  • "oct"
  • "oct-HSM"

key_usage

list / элементы=string

Дополнительные способы использования ключа сертификата.

Варианты:

  • "digitalSignature"
  • "nonRepudiation"
  • "keyEncipherment"
  • "dataEncipherment"
  • "keyAgreement"
  • "keyCertSign"
  • "cRLSign"
  • "encipherOnly"
  • "decipherOnly"

lifetime_actions

list / элементы=dictionary

Действия, выполняемые Key Vault в течение срока действия сертификата.

action

string

Тип действия.

Варианты:

  • "EmailContacts"
  • "AutoRenew"

days_before_expiry

integer

Количество дней до истечения срока действия, за которое следует попытаться обновить сертификат.

Значение должно находиться в диапазоне от 1 до `validity_in_months`, умноженного на 27.

Если validity_in_months равно 36, значение должно находиться в диапазоне от 1 до 972 (36 * 27).

lifetime_percentage

integer

Процент срока действия, по достижении которого срабатывает действие. Значение должно находиться в диапазоне от 1 до 99.

reuse_key

boolean

Определяет, будет ли при обновлении сертификата использоваться та же пара ключей.

Варианты:

  • false
  • true

san_dns_names

list / элементы=string

Альтернативные DNS-имена субъекта объекта X509.

Для создания сертификата необходимо указать либо subject, либо один из параметров альтернативных имен субъекта.

san_emails

list / элементы=string

Альтернативные адреса электронной почты субъекта объекта X509.

Для создания сертификата необходимо указать либо subject, либо один из параметров альтернативных имен субъекта.

san_user_principal_names

list / элементы=string

Альтернативные имена участника-пользователя субъекта объекта X509.

Для создания сертификата необходимо указать либо subject, либо один из параметров альтернативных имен субъекта.

subject

string

Имя субъекта сертификата. Должно быть допустимым различительным именем X509.

Для создания сертификата необходимо указать либо subject, либо один из параметров альтернативных имен субъекта.

При импорте сертификата это значение игнорируется; субъект будет извлечен из импортированного сертификата.

validity_in_months

integer

Срок действия сертификата в месяцах.

profile

string

Профиль безопасности из файла ~/.azure/credentials.

secret

string

Секрет клиента Azure. Используйте этот параметр для аутентификации с помощью субъекта-службы.

state

string / обязательный

Состояние сертификата Key Vault.

Варианты:

  • "generate"
  • "import"
  • "delete"
  • "purge"
  • "recover"
  • "merge"
  • "update"

subscription_id

string

Идентификатор вашей подписки Azure.

tags

dictionary

Словарь пар «строка:строка», назначаемых объекту в качестве метаданных.

Метаданные тегов объекта будут обновлены с учетом всех предоставленных значений.

Чтобы удалить теги, задайте для параметра append_tags значение false.

В настоящее время Azure DNS zones и Traffic Manager services также не разрешают использовать пробелы в тегах.

Azure Front Door не поддерживает использование

Azure Automation и Azure CDN поддерживают не более 15 тегов для ресурсов.

tenant

string

Идентификатор клиента Azure. Используйте этот параметр для аутентификации с помощью субъекта-службы.

thumbprint

string

добавлено в azure.azcollection 1.14.0

Отпечаток закрытого ключа, указанного в x509_certificate_path.

Используйте этот параметр для аутентификации с помощью субъекта-службы.

Обязателен, если задан x509_certificate_path.

vault_uri

string / обязательный

URI хранилища, в котором находится сертификат.

x509_certificate_path

path

добавлено в azure.azcollection 1.14.0

Путь к сертификату X509 в формате PEM, используемому для создания субъекта-службы.

К сертификату должен быть добавлен закрытый ключ.

Используйте этот параметр для аутентификации с помощью субъекта-службы.

Примечания

Примечание

  • Для аутентификации в Azure можно передать параметры, задать переменные среды, использовать профиль, сохранённый в ~/.azure/credentials, или выполнить вход перед запуском задач или плейбука с помощью az login.
  • Аутентификация также возможна с помощью субъекта-службы или пользователя Active Directory.
  • Для аутентификации через OIDC передайте client_id, tenant и oidc_token или oidc_token_file_path либо задайте переменные среды AZURE_CLIENT_ID, AZURE_TENANT и AZURE_FEDERATED_TOKEN или AZURE_FEDERATED_TOKEN_FILE.
  • Для аутентификации с помощью субъекта-службы передайте subscription_id, client_id, secret и tenant либо задайте переменные среды AZURE_SUBSCRIPTION_ID, AZURE_CLIENT_ID, AZURE_SECRET и AZURE_TENANT.
  • Для аутентификации пользователя Active Directory передайте ad_user и password либо задайте в среде переменные AZURE_AD_USER и AZURE_PASSWORD.
  • Кроме того, учетные данные можно хранить в ~/.azure/credentials. Это INI-файл, содержащий раздел [default] и следующие ключи: subscription_id, client_id, secret и tenant либо subscription_id, ad_user и password. Также можно добавить дополнительные профили. Укажите профиль, передав profile или задав в среде AZURE_PROFILE.

См. также

См. также

Вход с помощью Azure CLI

Как выполнить аутентификацию с помощью команды az login.

Примеры

- name: Import a keyvault certificate
  azure_rm_keyvaultcertificate:
    vault_uri: https://vault{{ rpfx }}.vault.azure.net
    name: fredcerticate
    enabled: true
    password: Password@****
    cert_data: "{{ lookup('file', 'cert.pem') }}"
    state: import
    tags:
      key1: value1

- name: Generate a keyvault certificate
  azure_rm_keyvaultcertificate:
    vault_uri: https://vault{{ rpfx }}.vault.azure.net
    name: fredcerticate
    policy:
      subject: 'CN=Anhui02'
      issuer_name: self
      exportable: true
      key_type: RSA
      key_size: 2048
      san_emails:
        - 7170222076@qq.com
      content_type: 'application/x-pkcs12'
      validity_in_months: 36
      lifetime_actions:
        - action: EmailContacts
          days_before_expiry: 10
    enabled: true
    state: generate

- name: Rotate Key Vault Certificate with a renewed PEM bundle
  azure_rm_keyvaultcertificate:
    vault_uri: https://vault{{ rpfx }}.vault.azure.net
    name: fredcerticate
    cert_data: "{{ lookup('file', 'new_cert.pem') }}" # PEM must include private key + cert
    policy:
      content_type: "application/x-pem-file"
    state: import

- name: Rotate Key Vault Certificate with a renewed PFX bundle
  azure_rm_keyvaultcertificate:
    vault_uri: https://vault{{ rpfx }}.vault.azure.net
    name: fredcerticate
    cert_data: "{{ lookup('file', 'new_cert.pfx') | b64encode }}" # PFX must include private key + cert
    password: Password@****
    policy:
      content_type: "application/x-pkcs12"
    state: import

- name: Update the keyvault certificate
  azure_rm_keyvaultcertificate:
    vault_uri: https://vault{{ rpfx }}.vault.azure.net
    name: fredcerticate
    policy:
      subject: 'CN=Anhui'
      issuer_name: self
      exportable: true
      key_type: RSA
      key_size: 2048
      san_emails:
        - 7170222076@qq.com
      content_type: 'application/x-pkcs12'
      validity_in_months: 36
      lifetime_actions:
        - action: EmailContacts
          days_before_expiry: 10
    enabled: true
    state: update

- name: Purge the keyvault certificate
  azure_rm_keyvaultcertificate:
    vault_uri: https://vault{{ rpfx }}.vault.azure.net
    name: fredcerticate
    state: purge

- name: Recover the keyvault certificate
  azure_rm_keyvaultcertificate:
    vault_uri: https://vault{{ rpfx }}.vault.azure.net
    name: fredcerticate
    state: recover

- name: Delete the keyvault certificate
  azure_rm_keyvaultcertificate:
    vault_uri: https://vault{{ rpfx }}.vault.azure.net
    name: fredcerticate
    state: absent

Возвращаемые значения

Общие возвращаемые значения описаны здесь, ниже перечислены поля, уникальные для этого модуля:

Ключ

Описание

certificates

complex

Сведения о сертификатах в Azure Key Vault.

Возвращается: всегда

cert_data

string

Содержимое CER-сертификата X509.

Возвращается: всегда

Пример: "MIID*****************0pRjXE"

deleted_on

string

Время удаления сертификата в формате UTC.

Возвращается: всегда

Пример: "2025-01-14T09\""

name

string

Имя сертификата.

Возвращается: всегда

Пример: "testcert"

policy

complex

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

Возвращается: всегда

attributes

complex

Атрибуты сертификата.

Возвращается: всегда

created

string

Дата и время создания.

Возвращается: всегда

Пример: "2025-01-14T09:41:20+00:00"

enabled

string

Указывает, включен ли сертификат.

Возвращается: всегда

Пример: "True"

expires

string

Дата и время истечения срока действия.

Возвращается: при успешном выполнении

Пример: "None"

not_before

string

Дата и время начала действия.

Возвращается: при успешном выполнении

Пример: "None"

recoverable_days

integer

Определяет период восстановления после удаления в днях.

Возвращается: всегда

Пример: "None"

recovery_level

string

Отражает текущий уровень восстановления удаленных сертификатов в данном хранилище.

Если значение содержит «Purgeable», привилегированный пользователь может удалить сертификат без возможности восстановления.

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

Возвращается: всегда

Пример: "None"

updated

string

Дата и время обновления.

Возвращается: всегда

Пример: "2025-01-15T09:41:20+00:00"

certificate_transparency

boolean

Указывает, следует ли публиковать сертификаты, созданные согласно этой политике, в журналах прозрачности сертификатов.

Возвращается: всегда

Пример: "None"

certificate_type

string

Тип сертификата, запрашиваемого у поставщика издателя.

Возвращается: str

Пример: "None"

content_type

string

Если не указано, тип носителя (тип MIME) секрета, связанного с сертификатом.

Возвращается: всегда

Пример: "application/x-pkcs12"

enhanced_key_usage

list / elements=string

Дополнительные способы использования ключа сертификата.

Возвращается: всегда

Пример: ["1.3.6.1.5.5.7.3.1", "1.3.6.1.5.5.7.3.2"]

exportable

boolean

Указывает, можно ли экспортировать закрытый ключ.

Возвращается: всегда

Пример: true

issuer_name

string

Имя связанного объекта издателя или зарезервированное имя.

Возвращается: всегда

Пример: "Self"

key_curve_name

string

Имя эллиптической кривой. Допустимые значения см. в разделе KeyCurveName.

Возвращается: всегда

Пример: "None"

key_size

integer

Размер ключа в битах.

Возвращается: всегда

Пример: 2048

key_type

string

Тип пары ключей, используемой для сертификата.

Возвращается: всегда

Пример: "RSA"

key_usage

list / elements=string

Список вариантов использования ключа.

Возвращается: всегда

Пример: ["digitalSignature", "keyEncipherment"]

lifetime_actions

list / elements=string

Действия, выполняемые Key Vault в течение срока действия сертификата.

Возвращается: всегда

Пример: [{"action": "AutoRenew", "days_before_expiry": "None", "lifetime_percentage": 80}]

reuse_key

boolean

Указывает, будет ли при продлении сертификата использоваться та же пара ключей.

Возвращается: всегда

Пример: false

san_dns_names

string

Альтернативные DNS-имена субъекта объекта X509.

Для создания сертификата необходимо указать либо subject, либо один из параметров альтернативных имен субъекта.

Возвращается: всегда

Пример: "None"

san_emails

string

Альтернативные адреса электронной почты субъекта объекта X509.

Для создания сертификата необходимо указать либо subject, либо один из параметров альтернативных имен субъекта.

Возвращается: всегда

Пример: "None"

san_user_principal_names

string

Альтернативные имена участника-пользователя субъекта объекта X509.

Для создания сертификата необходимо указать либо subject, либо один из параметров альтернативных имен субъекта.

Возвращается: всегда

Пример: "None"

subject

string

Имя субъекта сертификата.

Должно быть допустимым различительным именем X509.

Для создания сертификата необходимо указать либо subject, либо один из параметров альтернативных имен субъекта.

При импорте сертификата это значение игнорируется; субъект будет извлечен из импортированного сертификата.

Возвращается: всегда

Пример: "CN=anhui.com"

validity_in_months

integer

Срок действия сертификата в месяцах.

Возвращается: всегда

Пример: 12

properties

complex

Свойства сертификата.

Возвращается: всегда

attributes

complex

Атрибуты сертификата.

Возвращается: всегда

created

string

Дата и время создания.

Возвращается: всегда

Пример: "2025-01-14T09"

enabled

string

Указывает, включен ли сертификат.

Возвращается: всегда

Пример: "True"

expires

string

Дата и время истечения срока действия.

Возвращается: при успешном выполнении

Пример: "2025-03-14T09"

not_before

string

Дата и время начала действия.

Возвращается: при успешном выполнении

Пример: "2025-02-14T09"

recovery_level

string

Отражает текущий уровень восстановления удаленных сертификатов в данном хранилище.

Если значение содержит «Purgeable», привилегированный пользователь может удалить сертификат без возможности восстановления.

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

Возвращается: всегда

Пример: "Recoverable+Purgeable"

updated

string

Дата и время обновления.

Возвращается: всегда

Пример: "2025-01-15T09"

id

string

Идентификатор сертификата. Если он указан, все остальные аргументы «Id» следует опустить.

Возвращается: всегда

Пример: "https://vaultrfred01.vault.azure.net/certificates/cert02/62409e6304c642f193209729b8360d2c"

tags

dictionary

Список тегов сертификата.

Возвращается: всегда

Пример: {"key": "value"}

vault_id

string

Идентификатор Key Vault.

Возвращается: всегда

Пример: "https://vaultrfred01.vault.azure.net"

x509_thumbprint

string

Отпечаток сертификата Key Vault X509 в виде шестнадцатеричной строки.

Возвращается: всегда

Пример: "1blAnHN9ddng0qh1pYoUDY2lp1E="

recovery_id

string

URL объекта восстановления, используемый для идентификации и восстановления удаленного сертификата.

Возвращается: всегда

Пример: "https://vaultrfred01.vault.azure.net/deletedcertificates/cert02"

scheduled_purge_date

dictionary

Время, на которое запланировано окончательное удаление сертификата, в формате UTC.

Возвращается: всегда

Пример: "2025-02-14T09\""

Авторы

  • xuzhang3 (@xuzhang3)
  • Fred-sun (@Fred-sun)

Ссылки на коллекцию

  • Отслеживание проблем
  • Домашняя страница
  • Репозиторий (исходный код)

© 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/azure/azcollection/azure_rm_keyvaultcertificate_module.html

Spec-Zone.ru

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