Salta al contenuto

Come posso risolvere gli errori "not authorized" del modello di avvio di Amazon EC2 Auto Scaling?

2 minuti di lettura
0

Ho provato a utilizzare un modello di avvio per un gruppo Amazon EC2 Auto Scaling e ho ricevuto l'errore "You are not authorized".

Risoluzione

Ricevi l'errore "You are not authorized" perché non hai le autorizzazioni AWS Identity and Access Management (AWS IAM) corrette per avviare gruppi EC2 Auto Scaling. Per risolvere il problema, aggiungi le seguenti autorizzazioni alla policy IAM.

Credenziali IAM

Assicurati che l'entità IAM sia autorizzata a utilizzare l'azione API RunInstances. Inoltre, se utilizzi i tag nel modello di avvio, assicurati di avere l'autorizzazione per utilizzare l'azione API CreateTags.

Esempio di policy:


{  
    "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"  
}  

Per fornire l'accesso completo a tutte le risorse di Amazon Elastic Compute Cloud (Amazon EC2) e ai servizi correlati, puoi utilizzare la policy gestita da AWS AmazonEC2FullAccess.

Profili dell'istanza

Per avviare un modello che specifica un profilo dell'istanza, assicurati che la policy abbia l'autorizzazione PassRole.

Esempio di policy:

{  
    "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: puoi utilizzare l'autorizzazione PassRole solo per passare un ruolo IAM a un servizio che condivide lo stesso account AWS.

AMI in un altro account

Per avviare un modello che specifica un'Amazon Machine Image (AMI) in un altro account AWS, l'account deve avere accesso all'AMI.

Per verificare le autorizzazioni all'AMI, completa i seguenti passaggi:

  1. Apri la console Amazon EC2 dall'account proprietario dell'AMI.
  2. Nel pannello di navigazione, scegli AMI.
  3. Per Nome AMI, seleziona l'AMI, quindi scegli la scheda Autorizzazioni.
  4. Per Autorizzazioni, verifica che l'account condiviso sia presente per l'AMI.
  5. Se l'account non ha l'autorizzazione per l'AMI, condividi l'AMI con l'account.

Informazioni correlate

Ruoli IAM per le applicazioni in esecuzione sulle istanze Amazon EC2

AWSSupport-TroubleshootIAMAccessDeniedEvents