Модуль amazon.aws.kms_key — выполнение различных задач управления ключами KMS
Примечание
Этот модуль входит в коллекцию amazon.aws (версия 11.3.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install amazon.aws. Для использования этого модуля необходимы дополнительные требования. Подробности см. в разделе Требования.
Чтобы использовать модуль в плейбуке, укажите: amazon.aws.kms_key.
Добавлено в amazon.aws 5.0.0
Краткое описание
- Управление доступом ролей и пользователей к ключу KMS.
- Не предназначен для шифрования и расшифровки.
- До выпуска версии 5.0.0 этот модуль назывался community.aws.aws_kms. Использование не изменилось.
- Впервые модуль был добавлен в
community.awsв выпуске 1.0.0.
Псевдонимы: aws_kms
Требования
Перечисленные ниже требования должны быть выполнены на хосте, который выполняет этот модуль.
- python >= 3.6
- boto3 >= 1.35.0
- botocore >= 1.35.0
Параметры
Параметр | Комментарии |
|---|---|
access_key псевдонимы: aws_access_key_id, aws_access_key строка | Идентификатор ключа доступа AWS. Дополнительные сведения о токенах доступа см. в документации AWS: https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys. Также можно использовать переменные среды Параметры aws_access_key и profile являются взаимоисключающими. Псевдоним aws_access_key_id добавлен в выпуске 5.1.0 для согласованности с AWS botocore SDK. |
alias псевдонимы: key_alias строка | Псевдоним ключа. В целях безопасности этот модуль требует, чтобы всем новым ключам был назначен псевдоним, хотя KMS этого не требует, — так ими проще управлять. Существующие ключи без псевдонима можно указать с помощью Обратите внимание: передача Префикс Обязателен, если не задан |
aws_ca_bundle путь | Путь к пакету сертификатов CA, который используется для проверки SSL-сертификатов. Также можно использовать переменную среды |
aws_config словарь | Словарь для изменения конфигурации botocore. Параметры описаны в документации AWS: https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config. |
debug_botocore_endpoint_logs логический | Использовать логгер Также можно использовать переменную среды Варианты:
|
description строка | Описание CMK. Укажите описание, которое поможет определить, подходит ли CMK для конкретной задачи. |
enable_key_rotation логический | Следует ли автоматически выполнять ротацию ключа каждый год. Варианты:
|
enabled логический | Включен ли ключ. Варианты:
|
endpoint_url псевдонимы: aws_endpoint_url строка | URL для подключения вместо конечных точек AWS по умолчанию. Хотя этот параметр можно использовать для подключения к другим совместимым с AWS сервисам, коллекции amazon.aws и community.aws проверяются только с AWS. Также можно использовать переменную среды |
grants список / элементы=словарь | Список разрешений, применяемых к ключу. Каждый элемент должен содержать Значения Полное описание вложенных параметров см. в документации boto3: По умолчанию: |
|
constraints словарь |
Constraints — это словарь, содержащий |
|
grantee_principal строка / обязательный |
Полный ARN субъекта, которому предоставляются разрешения. |
|
name строка |
Понятное имя разрешения. Используйте это значение, чтобы предотвратить непреднамеренное создание дублирующих разрешений при повторной отправке этого запроса. |
|
operations список / элементы=строка |
Список операций, которые получатель разрешения может выполнять с помощью CMK. Варианты:
|
|
retiring_principal строка |
Полный ARN субъекта, которому разрешено отзывать/аннулировать разрешение. |
key_id псевдонимы: key_arn строка | |
key_spec псевдонимы: customer_master_key_spec строка добавлено в community.aws 2.1.0 | Задает тип создаваемого ключа KMS. После создания ключа изменить его спецификацию нельзя. Варианты:
|
key_usage строка добавлено в community.aws 2.1.0 | Определяет криптографические операции, для которых можно использовать ключ KMS. После создания ключа изменить назначение нельзя. Варианты:
|
multi_region логический добавлено в amazon.aws 5.5.0 | Создавать ли основной ключ для нескольких регионов. Варианты:
|
pending_window псевдонимы: deletion_delay целое число добавлено в community.aws 1.4.0 | Количество дней между запросом на удаление CMK и фактическим удалением. Используется только при Допустимые значения: от |
policy json | Политика, применяемая к ключу KMS. См. https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html |
profile псевдонимы: aws_profile строка | Именованный профиль AWS для аутентификации. Дополнительные сведения об именованных профилях см. в документации AWS: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html. Также можно использовать переменную среды Параметр profile взаимоисключающий с параметрами aws_access_key, aws_secret_key и session_token. |
purge_grants логический | Следует ли удалять разрешения, отсутствующие в списке, если задан аргумент Варианты:
|
purge_tags логический | Если задано Если параметр Ключи тегов, начинающиеся с Варианты:
|
region псевдонимы: aws_region строка | Регион AWS для использования. Для глобальных сервисов, таких как IAM, Route53 и CloudFront, параметр region игнорируется. Также можно использовать переменную среды Дополнительные сведения см. в документации Amazon AWS: http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region. |
secret_key псевдонимы: aws_secret_access_key, aws_secret_key строка | Секретный ключ доступа AWS. Дополнительные сведения о токенах доступа см. в документации AWS: https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys. Также можно использовать переменные среды Параметры secret_key и profile являются взаимоисключающими. Псевдоним aws_secret_access_key добавлен в выпуске 5.1.0 для согласованности с AWS botocore SDK. |
session_token псевдонимы: aws_session_token строка | Токен сеанса AWS STS для использования с временными учетными данными. Дополнительные сведения о токенах доступа см. в документации AWS: https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys. Также можно использовать переменную среды Параметры session_token и profile являются взаимоисключающими. |
state строка | Должен ли ключ присутствовать или отсутствовать. Обратите внимание: перевод существующего ключа в состояние Если передать ключ, запланированный к удалению, со значением Варианты:
|
tags псевдонимы: resource_tags словарь | Словарь тегов, применяемых к ресурсу. Если параметр |
validate_certs логический | Если задано значение Настоятельно не рекомендуется устанавливать validate_certs=false; вместо этого рассмотрите возможность задания параметра aws_ca_bundle. Варианты:
|
Примечания
Примечание
- Известно, что время, необходимое для полного применения изменений ключей KMS в AWS, может быть непредсказуемым. Это может вызвать проблемы при последовательном запуске дублирующихся задач или использовании модуля amazon.aws.kms_key_info для получения метаданных ключа вскоре после его изменения. Поэтому для получения метаданных ключа рекомендуется использовать возвращаемые данные этого модуля (amazon.aws.kms_key).
- Возвращаемый ключ
policiesудален в выпуске amazon.aws 8.0.0. - Внимание: Для модулей переменные среды и файлы конфигурации считываются из контекста «хоста» Ansible, а не из контекста «контроллера». Поэтому может потребоваться явно скопировать файлы на «хост». Для плагинов поиска и подключения переменные среды и файлы конфигурации считываются из контекста «контроллера» Ansible, а не из контекста «хоста».
- Используемый Ansible пакет AWS SDK (boto3) также может считывать значения по умолчанию для учетных данных и других настроек, например региона, из файлов конфигурации в контексте «хоста» Ansible (обычно
~/.aws/credentials). Дополнительные сведения см. по адресу https://boto3.amazonaws.com/v1/documentation/api/latest/guide/credentials.html.
Примеры
# Create a new KMS key
- amazon.aws.kms_key:
alias: mykey
tags:
Name: myKey
Purpose: protect_stuff
# Create a new multi-region KMS key
- amazon.aws.kms_key:
alias: mykey
multi_region: true
tags:
Name: myKey
Purpose: protect_stuff
# Update previous key with more tags
- amazon.aws.kms_key:
alias: mykey
tags:
Name: myKey
Purpose: protect_stuff
Owner: security_team
# Update a known key with grants allowing an instance with the billing-prod IAM profile
# to decrypt data encrypted with the environment: production, application: billing
# encryption context
- amazon.aws.kms_key:
key_id: abcd1234-abcd-1234-5678-ef1234567890
grants:
- name: billing_prod
grantee_principal: arn:aws:iam::123456789012:role/billing_prod
constraints:
encryption_context_equals:
environment: production
application: billing
operations:
- Decrypt
- RetireGrant
- name: Update IAM policy on an existing KMS key
amazon.aws.kms_key:
alias: my-kms-key
policy: '{"Version": "2012-10-17", "Id": "my-kms-key-permissions", "Statement": [ { <SOME STATEMENT> } ]}'
state: present
- name: Example using lookup for policy json
amazon.aws.kms_key:
alias: my-kms-key
policy: "{{ lookup('template', 'kms_iam_policy_template.json.j2') }}"
state: present
Возвращаемые значения
Общие возвращаемые значения описаны здесь; ниже перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
aliases list / elements=string | Список псевдонимов, связанных с ключом. Возвращается: всегда Пример: |
aws_account_id string | ID учетной записи AWS, которой принадлежит ключ. Возвращается: всегда Пример: |
changes_needed dictionary | Типы разрешений, которые будут изменены или были изменены. Возвращается: всегда Пример: |
creation_date string | Дата и время создания ключа. Возвращается: всегда Пример: |
customer_master_key_spec string | Указывает тип создаваемого ключа KMS. Возвращается: всегда Пример: |
deletion_date string добавлено в community.aws 3.3.0 | Дата и время, после которых KMS удалит этот ключ KMS. Возвращается: когда Пример: |
description string | Описание ключа. Возвращается: всегда Пример: |
enable_key_rotation boolean | Включена ли автоматическая ежегодная ротация ключа. Возвращает None, если состояние ротации ключа определить невозможно. Возвращается: всегда Пример: |
enabled boolean | Включен ли ключ. Значение True, если Возвращается: всегда Пример: |
encryption_algorithms list / elements=string | Алгоритмы шифрования, поддерживаемые ключом KMS. Возвращается: всегда Пример: |
grants list / elements=dictionary | Список разрешений, связанных с ключом. Возвращается: всегда |
|
constraints dictionary |
Ограничения на контекст шифрования, разрешенный данным разрешением. Дополнительные сведения см. на странице https://docs.aws.amazon.com/kms/latest/APIReference/API_GrantConstraints.html Возвращается: всегда Пример: |
|
creation_date string |
Дата создания разрешения. Возвращается: всегда Пример: |
|
grant_id string |
Уникальный идентификатор разрешения. Возвращается: всегда Пример: |
|
grantee_principal string |
Субъект, получающий разрешения по данному разрешению. Возвращается: всегда Пример: |
|
issuing_account string |
Учетная запись AWS, от имени которой было выдано разрешение. Возвращается: всегда Пример: |
|
key_id string |
ARN ключа, к которому применяется разрешение. Возвращается: всегда Пример: |
|
name string |
Удобное для чтения имя, идентифицирующее разрешение. Возвращается: всегда Пример: |
|
operations list / elements=string |
Список операций, разрешенных данным разрешением. Возвращается: всегда Пример: |
|
retiring_principal string |
Субъект, который может отозвать разрешение. Возвращается: всегда Пример: |
had_invalid_entries boolean | Есть ли в записи KMS недопустимые записи (не ARN). Они не считаются изменением, но будут удалены, если вносятся какие-либо изменения. Возвращается: всегда |
key_arn string | ARN ключа. Возвращается: всегда Пример: |
key_id string | ID ключа. Возвращается: всегда Пример: |
key_manager string | Менеджер ключа KMS. Возвращается: всегда Пример: |
key_policies list / elements=dictionary добавлено в community.aws 3.3.0 | Список документов политик для ключа. Пуст, если доступ запрещен, даже при наличии политик. Возвращается: всегда Пример: |
key_spec string | Указывает тип создаваемого ключа KMS. Возвращается: всегда Пример: |
key_state string | Состояние ключа. Возможные значения: Возвращается: всегда Пример: |
key_usage string | Криптографические операции, для которых можно использовать ключ. Возвращается: всегда Пример: |
multi_region boolean добавлено в amazon.aws 5.5.0 | Указывает, является ли CMK многорегиональным Это значение равно True для многорегиональных основных CMK и реплик и False для региональных CMK. Возвращается: всегда Пример: |
origin string | Источник ключевого материала ключа. Если это значение равно Возвращается: всегда Пример: |
tags dictionary | Словарь тегов, назначенных ключу. Пуст, если доступ запрещен, даже при наличии тегов. Возвращается: всегда Пример: |
Ссылки на коллекцию
© 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/amazon/aws/kms_key_module.html