community.aws.lambda_policy – Создаёт, обновляет или удаляет утверждения политики AWS Lambda.
Примечание
Этот плагин входит в коллекцию community.aws (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install community.aws.
Для использования в книге задач укажите: community.aws.lambda_policy.
Введено в версии 1.0.0: из community.aws
Обзор
- Этот модуль позволяет управлять утверждениями политики AWS Lambda.
- Он идемпотентен и поддерживает режим «Проверка».
- Для управления самой функцией Lambda используйте модуль community.aws.lambda, для управления псевдонимами функций — community.aws.lambda_alias, для управления отображениями источников событий, такими как потоки Kinesis, — community.aws.lambda_event, для выполнения функции Lambda — community.aws.execute_lambda, и для получения информации об одной или нескольких функциях Lambda — community.aws.lambda_info.
Требования
Ниже перечислены требования, необходимые на хосте, который выполняет этот модуль.
- boto
- boto3
- python >= 2.6
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| action строка / обязательно | Действие AWS Lambda, которое вы хотите разрешить в этом утверждении. Каждое действие Lambda — это строка, начинающаяся с lambda:, за которой следует имя API (см. Операции). Например, lambda:CreateFunction . Вы можете использовать подстановочный знак (lambda:*) для предоставления разрешения на все действия AWS Lambda. | |
| alias строка | Имя псевдонима функции. Взаимоисключающее с параметром version. | |
| aws_access_key строка | Ключ доступа AWS. Если не задан, используется значение переменной среды AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY. Если задан параметр profile, этот параметр игнорируется. Передача параметров aws_access_key и profile одновременно устарела и будет сделана взаимоисключающей после 2022-06-01. псевдонимы: ec2_access_key, access_key | |
| aws_ca_bundle путь | Расположение набора сертификатов CA для проверки SSL-сертификатов. Используется только для модулей, основанных на boto3. Примечание: набор сертификатов CA читается со стороны модуля и, возможно, необходимо явно скопировать его с контроллера, если он не выполняется локально. | |
| aws_config словарь | Словарь для изменения конфигурации botocore. Параметры можно найти по адресу https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config. Только ключ 'user_agent' используется для модулей boto. См. http://boto.cloudhackers.com/en/latest/boto_config_tut.html#boto для получения дополнительной информации о конфигурации boto. | |
| aws_secret_key строка | Секретный ключ AWS. Если не задан, используется значение переменной среды AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY. Если задан параметр profile, этот параметр игнорируется. Передача параметров aws_secret_key и profile одновременно устарела и будет сделана взаимоисключающей после 2022-06-01. псевдонимы: ec2_secret_key, secret_key | |
| debug_botocore_endpoint_logs логический тип |
| Используйте логгер botocore.endpoint для разбора уникальных (а не общих) API-вызовов «ресурс:действие», выполняемых во время задачи, выводя набор в ключ resource_actions результатов задачи. Используйте обратный вызов aws_resource_action для вывода в общий список, созданный во время выполнения книги задач. Переменная среды ANSIBLE_DEBUG_BOTOCORE_LOGS также может быть использована. |
| ec2_url строка | URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех остальных модулей, если регион не используется. Если не задан, используется значение переменной среды EC2_URL, если таковая имеется. псевдонимы: aws_endpoint_url, endpoint_url | |
| event_source_token строка | Строка маркера, представляющая ARN источника или учётную запись. Взаимоисключающее с source_arn или source_account. | |
| function_name строка / обязательно | Имя функции Lambda, политика ресурсов которой обновляется путем добавления нового разрешения. Вы можете указать имя функции (например, Thumbnail) или ARN функции (например, arn:aws:lambda:us-west-2:account-id:function:ThumbNail). AWS Lambda также позволяет вамуказать частичный ARN (например, account-id:Thumbnail). Обратите внимание, что ограничение по длинеприменимо только к ARN. Если вы указываете только имя функции, оно ограничено длиной 64 символа. псевдонимы: lambda_function_arn, function_arn | |
| principal строка / обязательно | Субъект, которому предоставляется это разрешение. Это может быть субъект службы Amazon S3 (s3.amazonaws.com), если вы хотите, чтобы Amazon S3 вызывал функцию, идентификатор учётной записи AWS при предоставлении разрешения между учётными записями или любой действительный субъект службы AWS, такой как sns.amazonaws.com. Например, вы можете разрешить пользовательскому приложению в другой учётной записи AWS отправлять события в AWS Lambda, вызывая вашу функцию. | |
| profile строка | Использует профиль boto. Работает только с boto >= 2.24.0. Использование profile переопределяет aws_access_key, aws_secret_key и security_token, а поддержка их передачи одновременно с profile устарела. aws_access_key, aws_secret_key и security_token будут сделаны взаимоисключающими с profile после 2022-06-01. псевдонимы: aws_profile | |
| region строка | AWS-регион для использования. Если не указан, используется значение переменной среды AWS_REGION или EC2_REGION, если она есть. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region
псевдонимы: aws_region, ec2_region | |
| security_token строка | Токен безопасности AWS STS. Если не задан, используется значение переменной среды AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. Если задан параметр profile, этот параметр игнорируется. Передача параметров security_token и profile одновременно устарела и будет сделана взаимоисключающей после 2022-06-01. псевдонимы: aws_security_token, access_token | |
| source_account строка | Идентификатор AWS учётной записи (без дефиса) владельца источника. Например, если source_arn определяет ведро, то это идентификатор учётной записи владельца ведра. Вы можете использовать это дополнительное условие для обеспечения того, что ведро, которое вы указали, принадлежит определённой учётной записи (существует возможность, что владелец ведра удалил его, а какая-то другая учётная запись AWS создала ведро). Вы также можете использовать это условие для указания всех источников (то есть, вы не указываете source_arn), принадлежащих определённой учётной записи. | |
| source_arn строка | Это необязательно; однако, при предоставлении разрешения Amazon S3 вызывать вашу функцию, вы должны указать это поле с ARN ведра Amazon S3 в качестве его значения. Это гарантирует, что события, сгенерированные только из указанного ведра, могут вызывать функцию. | |
| state строка |
| Описание желаемого состояния. |
| statement_id строка / обязательно | Уникальный идентификатор утверждения. псевдонимы: sid | |
| validate_certs логический тип |
| При установке в значение "нет", SSL-сертификаты для версий boto >= 2.6.0 не будут проверяться. |
| version целое число | Версия функции Lambda. Взаимоисключающее с параметром alias. |
Примечания
Примечание
- Если параметры не установлены в модуле, следующие переменные среды могут быть использованы в порядке убывания приоритета
AWS_URLилиEC2_URL,AWS_PROFILEилиAWS_DEFAULT_PROFILE,AWS_ACCESS_KEY_IDилиAWS_ACCESS_KEYилиEC2_ACCESS_KEY,AWS_SECRET_ACCESS_KEYилиAWS_SECRET_KEYилиEC2_SECRET_KEY,AWS_SECURITY_TOKENилиEC2_SECURITY_TOKEN,AWS_REGIONилиEC2_REGION,AWS_CA_BUNDLE - Ansible использует конфигурационный файл boto (обычно ~/.boto), если учетные данные не предоставлены. См. https://boto.readthedocs.io/en/latest/boto_config_tut.html
-
AWS_REGIONилиEC2_REGIONобычно используются для указания региона AWS, когда это необходимо, но это также можно настроить в файле конфигурации boto
Примеры
- name: Lambda S3 event notification
community.aws.lambda_policy:
state: present
function_name: functionName
alias: Dev
statement_id: lambda-s3-myBucket-create-data-log
action: lambda:InvokeFunction
principal: s3.amazonaws.com
source_arn: arn:aws:s3:eu-central-1:123456789012:bucketName
source_account: 123456789012
register: lambda_policy_action
- name: show results
ansible.builtin.debug:
var: lambda_policy_action
Значения возврата
Общие значения возврата документированы здесь, следующие являются полями, уникальными для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| lambda_policy_action строка | успех | описывает выполненное действие |
Авторы
- Pierre Jodouin (@pjodouin)
- Michael De La Rue (@mikedlr)
© 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/aws/lambda_policy_module.html