Perché non riesco a eseguire comandi AWS CLI nella mia istanza Amazon EC2?
Quando eseguo comandi dell'Interfaccia della linea di comando AWS (AWS CLI) nella mia istanza Amazon Elastic Compute Cloud (Amazon EC2), ricevo errori.
Breve descrizione
Quando esegui comandi AWS CLI in un'istanza EC2, potresti ricevere un messaggio di errore simile ai seguenti esempi:
- "Unable to locate credentials. You can configure credentials by running 'aws configure'"
- "An error occurred (UnauthorizedOperation) when calling the DescribeInstances operation: You are not authorized to perform this operation"
Nota: utilizza il messaggio di errore per identificare la chiamata API non riuscita. Nell'esempio precedente, si è verificato un errore per la chiamata API DescribeInstances. - "An error occurred (AuthFailure) when calling the DescribeInstances operation: AWS was not able to validate the provided access credentials"
- "An error occurred (ExpiredToken) when calling the GetCallerIdentity operation: The security token included in the request is expired"
Per risolvere il problema, intraprendi le seguenti azioni in base all'errore riscontrato.
Nota: se utilizzi AWS PrivateLink per connetterti all'istanza, assicurati di poter raggiungere gli endpoint VPC (Virtual Private Cloud) del servizio. Per informazioni sulle istanze in una sottorete privata, consulta Come posso creare endpoint Amazon VPC in modo da poter utilizzare AWS Systems Manager per gestire istanze private Amazon EC2 senza accesso a Internet?
Risoluzione
Nota: se ricevi errori quando esegui i comandi AWS CLI, consulta Risoluzione degli errori per AWS CLI. Inoltre, assicurati di utilizzare la versione più recente di AWS CLI.
Risolvi gli errori "unable to locate credentials"
Esegui questo comando list per verificare se AWS CLI è in grado di recuperare le credenziali:
aws configure list
Se l'output non contiene le credenziali, configura le credenziali per AWS CLI.
Se utilizzi i profili dell'istanza di AWS Identity and Access Management (AWS IAM), assicurati che l'associazione dei ruoli IAM sia stata completata. Per verificare che il ruolo sia visibile, esegui questo comando get-caller-identity:
aws sts get-caller-identity
Se l'output non contiene il ruolo del profilo dell'istanza, ricollega il ruolo dell'istanza al profilo dell'istanza.
Risolvi gli errori "UnauthorizedOperation" and "AuthFailure"
Intraprendi le seguenti azioni:
- Assicurati che il ruolo o l'utente IAM abbia le autorizzazioni per eseguire i comandi.
- Assicurati che l'ora dell'istanza sia corretta.
- Assicurati di aver configurato correttamente il token del Servizio di token di sicurezza AWS (AWS STS).
- Assicurati di aver utilizzato le credenziali corrette quando hai eseguito il comando. Per verificare le credenziali che stai utilizzando, esegui questo comando get-caller-identity:
Nota: se l'istanza utilizza più set di credenziali, la precedenza delle credenziali potrebbe influire sulle credenziali utilizzate dall'istanza per effettuare la chiamata API. Per ulteriori informazioni, consulta Perché la mia istanza Amazon EC2 utilizza le credenziali dell'utente IAM anziché le credenziali del ruolo?aws sts get-caller-identity
Risolvi gli errori "ExpiredToken"
Se utilizzi credenziali temporanee, queste scadono una volta trascorso l'intervallo di tempo che hai specificato al momento della loro creazione. Per ottenere un nuovo token STS dopo la scadenza delle credenziali del ruolo IAM, assumi un nuovo ruolo IAM.
Informazioni correlate
- Argomenti
- Compute
- Lingua
- Italiano

Contenuto pertinente
AWS UFFICIALEAggiornata un anno fa