Rol de IAM de EventBridge de Amazon ECS
Para poder usar las tareas programadas de Amazon ECS con las reglas y los destinos de EventBridge, el servicio de EventBridge necesita varios permisos para ejecutar tareas de Amazon ECS en su nombre. Estos permisos los proporciona el rol de IAM de EventBridge (ecsEventsRole
).
La política AmazonEC2ContainerServiceEventsRole
se muestra a continuación.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": ["ecs:RunTask"], "Resource": ["*"] }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": ["*"], "Condition": { "StringLike": {"iam:PassedToService": "ecs-tasks.amazonaws.com"} } }, { "Effect": "Allow", "Action": "ecs:TagResource", "Resource": "*", "Condition": { "StringEquals": { "ecs:CreateAction": ["RunTask"] } } } ] }
Si las tareas programadas requieren el uso del rol de ejecución de tareas, un rol de tarea o una cancelación del rol de tarea, debe agregar permisos iam:PassRole
para cada rol de ejecución de tareas, rol de tarea o cancelación del rol de tarea al rol de IAM de EventBridge. Para obtener más información sobre el rol de ejecución de tareas, consulte Rol de IAM de ejecución de tareas de Amazon ECS.
nota
Especifique el ARN completo del rol de ejecución de tareas o el reemplazo del rol de tareas.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": ["arn:aws:iam::<aws_account_id>:role/<ecsTaskExecutionRole_or_TaskRole_name>"] } ] }
Puede optar por dejar que AWS Management Console cree el rol de EventBridge por usted cuando configure una tarea programada. Para obtener más información, consulte Uso de Programador de Amazon EventBridge para programar tareas de Amazon ECS .
Creación del rol de EventBridge
Sustituya cada entrada del usuario
por información propia.
-
Cree un archivo con el nombre
eventbridge-trust-policy.json
, que contenga la política de confianza que se va a utilizar para el rol de IAM. El archivo debe contener lo siguiente:{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "events.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
-
Utilice el siguiente comando para crear un rol de IAM con el nombre
ecsEventsRole
mediante la política de confianza que se creó en el paso anterior.aws iam create-role \ --role-name
ecsEventsRole
\ --assume-role-policy-document file://eventbridge-policy.json
-
Adjunte la política administrada de AWS
AmazonEC2ContainerServiceEventsRole
al rolecsEventsRole
con el siguiente comando.aws iam attach-role-policy \ --role-name
ecsEventsRole
\ --policy-arn arn:aws:iam::aws:policy/service-role/AmazonEC2ContainerServiceEventsRole
También puede usar el flujo de trabajo de política de confianza personalizada de la consola de IAM (https://console.aws.amazon.com/iam/
Asociación de una política al rol ecsEventsRole
Puede utilizar los siguientes procedimientos para agregar permisos para el rol de ejecución de tareas al rol de IAM de EventBridge.