Permisos necesarios para la consola de Amazon ECS
Siguiendo la práctica recomendada de concesión de privilegios mínimos, puede usar la política administrada AmazonECS_FullAccess
como plantilla para crear su propia política personalizada. De esta forma, puede quitar permisos de la política administrada o agregar otros en función de sus requisitos específicos. Para obtener más información, consulte Detalles de los permisos.
La consola de Amazon ECS se basa en AWS CloudFormation y requiere permisos de IAM adicionales en los siguientes casos:
-
Creación de un clúster
-
Crear un servicio
-
Creación de un proveedor de capacidad
Puede crear una política para los permisos adicionales y, a continuación, adjuntarlas al rol de IAM que utilice para acceder a la consola. Para obtener más información, consulte Creación de políticas de IAM en la Guía del usuario de IAM.
Permisos necesarios para crear un clúster
Cuando crea un clúster en la consola, necesita permisos adicionales que le permitan administrar las pilas de AWS CloudFormation.
Se requieren los siguientes permisos adicionales:
-
cloudformation
: permite a los usuarios principales crear y administrar pilas de AWS CloudFormation. Esto se debe hacer cuando se crean clústeres de Amazon ECS mediante la AWS Management Console y posteriormente se administran.
La siguiente política contiene los permisos AWS CloudFormation necesarios y limita las acciones a los recursos creados en la consola de Amazon ECS.
{ "Statement": [ { "Effect": "Allow", "Action": [ "cloudformation:CreateStack", "cloudformation:DeleteStack", "cloudformation:DescribeStack*", "cloudformation:UpdateStack" ], "Resource": [ "arn:*:cloudformation:*:*:stack/Infra-ECS-Cluster-*" ] } ] }
Si no ha creado el rol de instancia de contenedor de Amazon ECS (ecsInstanceRole
) y va a crear un clúster que utilice instancias de Amazon EC2, la consola creará el rol en su nombre.
Además, si utiliza grupos de escalado automático, necesitará permisos adicionales para que la consola pueda agregar etiquetas a los grupos de escalado automático cuando utilice la característica de escalado automático del clúster.
Se requieren los siguientes permisos adicionales:
-
autoscaling
: permite a la consola etiquetar el grupo de Amazon EC2 Auto Scaling. Esto se debe hacer cuando se administran grupos de Amazon EC2 Auto Scaling y se utiliza la característica de Auto Scaling de clústeres. La etiqueta es la etiqueta administrada por ECS que la consola agrega automáticamente al grupo para indicar que se creó en la consola. -
iam
: permite a los usuarios principales enumerar los roles de IAM y sus políticas asociadas. Los usuarios principales también pueden enumerar perfiles de instancias disponibles para instancias de Amazon EC2.
La siguiente política contiene los permisos de IAM necesarios y limita las acciones al rol ecsInstanceRole
.
Los permisos de Auto Scaling no están limitados.
{ "Statement": [ { "Effect": "Allow", "Action": [ "iam:AttachRolePolicy", "iam:CreateRole", "iam:CreateInstanceProfile", "iam:AddRoleToInstanceProfile", "iam:ListInstanceProfilesForRole", "iam:GetRole" ], "Resource": "arn:aws:iam::*:role/ecsInstanceRole" }, { "Effect": "Allow", "Action": "autoscaling:CreateOrUpdateTags", "Resource": "*" } ] }
Permisos necesarios para crear un proveedor de capacidad
Cuando crea un servicio en la consola, necesita permisos adicionales que le permitan administrar las pilas de AWS CloudFormation. Se requieren los siguientes permisos adicionales:
-
cloudformation
: permite a los usuarios principales crear y administrar pilas de AWS CloudFormation. Esto se debe hacer cuando se crean proveedores de capacidad de Amazon ECS mediante la AWS Management Console y posteriormente se administran.
La siguiente política contiene los permisos necesarios y limita las acciones a los recursos creados en la consola de Amazon ECS.
{ "Statement": [ { "Effect": "Allow", "Action": [ "cloudformation:CreateStack", "cloudformation:DeleteStack", "cloudformation:DescribeStack*", "cloudformation:UpdateStack" ], "Resource": [ "arn:*:cloudformation:*:*:stack/Infra-ECS-CapacityProvider-*" ] } ] }
Permisos necesarios para crear un servicio
Cuando crea un servicio en la consola, necesita permisos adicionales que le permitan administrar las pilas de AWS CloudFormation. Se requieren los siguientes permisos adicionales:
-
cloudformation
: permite a los usuarios principales crear y administrar pilas de AWS CloudFormation. Esto se debe hacer cuando se crean servicios de Amazon ECS mediante la AWS Management Console y posteriormente se administran.
La siguiente política contiene los permisos necesarios y limita las acciones a los recursos creados en la consola de Amazon ECS.
{ "Statement": [ { "Effect": "Allow", "Action": [ "cloudformation:CreateStack", "cloudformation:DeleteStack", "cloudformation:DescribeStack*", "cloudformation:UpdateStack" ], "Resource": [ "arn:*:cloudformation:*:*:stack/ECS-Console-V2-Service-*" ] } ] }
Permisos para crear roles de IAM
Las siguientes acciones requieren permisos adicionales para completar la operación:
-
Registro de una instancia externa; para obtener más información, consulte Rol de IAM de Amazon ECS Anywhere
-
Registro de una definición de tarea; para obtener más información, consulte Rol de IAM de ejecución de tareas de Amazon ECS
-
Creación de una regla de EventBridge para utilizarla en la programación de tareas; para obtener más información, consulte Rol de IAM de EventBridge de Amazon ECS
Puede añadir estos permisos creando un rol en IAM antes de usarlos en la consola de Amazon ECS. Si no crea los roles, la consola de Amazon ECS los creará en su nombre.
Permisos necesarios para registrar una instancia externa en un clúster
Necesita permisos adicionales cuando registra una instancia externa en un clúster y desea crear un nuevo rol de instancia externa (escExternalInstanceRole
).
Se requieren los siguientes permisos adicionales:
-
iam
: permite a los usuarios principales crear y enumerar los roles de IAM y sus políticas asociadas. -
ssm
: permite a los usuarios principales registrar la instancia externa con Systems Manager.
nota
Para elegir una escExternalInstanceRole
existente, debe tener los permisos iam:GetRole
y iam:PassRole
.
La siguiente política contiene los permisos necesarios y limita las acciones al rol escExternalInstanceRole
.
{ "Statement": [ { "Effect": "Allow", "Action": [ "iam:AttachRolePolicy", "iam:CreateRole", "iam:CreateInstanceProfile", "iam:AddRoleToInstanceProfile", "iam:ListInstanceProfilesForRole", "iam:GetRole" ], "Resource": "arn:aws:iam::*:role/escExternalInstanceRole" }, { "Effect": "Allow", "Action": ["iam:PassRole","ssm:CreateActivation"], "Resource": "arn:aws:iam::*:role/escExternalInstanceRole" } ] }
Permisos necesarios para registrar una definición de tarea
Necesita permisos adicionales cuando registra una definición de tarea y desea crear un nuevo rol de ejecución de tareas (ecsTaskExecutionRole
).
Se requieren los siguientes permisos adicionales:
-
iam
: permite a los usuarios principales crear y enumerar los roles de IAM y sus políticas asociadas.
nota
Para elegir una ecsTaskExecutionRole
existente, debe tener el permiso iam:GetRole
.
La siguiente política contiene los permisos necesarios y limita las acciones al rol ecsTaskExecutionRole
.
{ "Statement": [ { "Effect": "Allow", "Action": [ "iam:AttachRolePolicy", "iam:CreateRole", "iam:GetRole" ], "Resource": "arn:aws:iam::*:role/ecsTaskExecutionRole" } ] }
Permisos necesarios para crear una regla de EventBridge para las tareas programadas
Necesita permisos adicionales cuando programa una tarea y desea crear un nuevo rol de CloudWatch Events (ecsEventsRole
).
Se requieren los siguientes permisos adicionales:
-
iam
: permite a los usuarios principales crear y enumerar los roles de IAM y sus políticas asociadas, y permite a Amazon ECS transferir el rol a otros servicios para que lo asuman.
nota
Para elegir una ecsEventsRole
existente, debe tener los permisos iam:GetRole
y iam:PassRole
.
La siguiente política contiene los permisos necesarios y limita las acciones al rol ecsEventsRole
.
{ "Statement": [ { "Effect": "Allow", "Action": [ "iam:AttachRolePolicy", "iam:CreateRole", "iam:GetRole", "iam: PassRole" ], "Resource": "arn:aws:iam::*:role/ecsEventsRole" } ] }