Saltar al contenido

¿Cómo soluciono los errores "not authorized" de la plantilla de inicio de Amazon EC2 Auto Scaling?

2 minutos de lectura
0

He intentado usar una plantilla de inicio para un grupo de Amazon EC2 Auto Scaling y se muestra el error "You are not authorized".

Resolución

Se muestra el error "You are not authorized" porque no tienes los permisos correctos de AWS Identity and Access Management (IAM) para iniciar grupos de EC2 Auto Scaling. Para resolver este problema, agrega los siguientes permisos a tu política de IAM.

Credenciales de IAM

Asegúrate de que tu entidad de IAM tenga permiso para usar la acción de la API RunInstances. Además, si usas etiquetas en tu plantilla de inicio, asegúrate de tener permiso para usar la acción de la API CreateTags.

Ejemplo de política:


{  
    "Statement": [  
        {  
            "Action": [  
                "ec2:RunInstances",  
                "ec2:CreateTags"  
            ],  
            "Effect": "Allow",  
            "Resource": [  
                "arn:aws:ec2:*:*:instance/*",  
                "arn:aws:ec2:*:*:volume/*",  
                "arn:aws:ec2:*:*:network-interface/*",  
                "arn:aws:ec2:*:*:subnet/*",  
                "arn:aws:ec2:*:*:security-group/*",  
                "arn:aws:ec2:*:*:image/*",  
                "arn:aws:ec2:*:*:launch-template/*"  
            ]  
        }  
    ],  
    "Version": "2012-10-17"  
}  

Para proporcionar acceso completo a todos los recursos y servicios relacionados de Amazon Elastic Compute Cloud (Amazon EC2), puedes utilizar la política administrada de AWS AmazonEC2FullAccess

Perfiles de instancia

Para iniciar una plantilla que especifique un perfil de instancia, asegúrate de que la política tenga el permiso PassRole.

Ejemplo de política:

{  
    "Version": "2012-10-17",  
    "Statement": [  
        {  
            "Effect": "Allow",  
            "Action": [  
                "iam:PassRole"  
            ],  
            "Resource": [  
                "arn:aws:iam::444455556666:role/InstanceProfileRole"  
            ],  
            "Condition": {  
                "StringEquals": {  
                    "iam:PassedToService": "ec2.amazonaws.com"  
                }  
            }  
        }  
    ]  
}

Nota: Puedes usar el permiso PassRole solo para transferir un rol de IAM a un servicio que comparta la misma cuenta de AWS. 

AMI en otra cuenta

Para iniciar una plantilla que especifique una imagen de máquina de Amazon (AMI) en otra cuenta de AWS, la cuenta debe tener acceso a la AMI.

Para verificar los permisos de la AMI, completa los pasos siguientes:

  1. Abre la consola de Amazon EC2 desde la cuenta del propietario de la AMI.
  2. En el panel de navegación, selecciona AMI.
  3. En Nombre de AMI, selecciona tu AMI y, a continuación, selecciona la pestaña Permisos.
  4. En Permisos, comprueba que la cuenta compartida aparezca en la lista de la AMI.
  5. Si la cuenta no tiene permiso para acceder a la AMI, comparte la AMI con la cuenta.

Información relacionada

Rol de IAM para aplicaciones que se ejecutan en instancias de Amazon EC2

AWSSupport-TroubleshootIAMAccessDeniedEvents