In che modo è possibile concedere all'istanza Amazon EC2 l'accesso a un bucket Amazon S3?
Non riesco ad accedere a un bucket Amazon Simple Storage Service (Amazon S3) dalla mia istanza Amazon Elastic Compute Cloud (Amazon EC2). Come posso attivare l’accesso di lettura/scrittura ai bucket S3 da un’istanza EC2?
Breve descrizione
Per collegare i tuoi bucket S3 dalle tue istanze EC2, è necessario fare quanto segue:
1. Crea un ruolo del profilo AWS Identity and Access Management (IAM) che consenta l’accesso ad Amazon S3.
2. Collega il profilo dell’istanza IAM all’istanza.
3. Convalida l’autorizzazione sul tuo bucket S3.
4. Verifica la connettività di rete dall’istanza EC2 ad Amazon S3.
5. Convalida l’accesso ai bucket S3.
Risoluzione
Creazione di un profilo dell’istanza IAM che consenta l’accesso ad Amazon S3
1. Apri la console IAM.
2. Scegli Ruoli e quindi fai clic su Crea ruolo.
3. Seleziona AWS Service (Servizio AWS) e poi scegli EC2 in Use Case (Caso d'uso).
Nota: la creazione di un ruolo IAM dalla console con EC2 selezionato come entità attendibile crea automaticamente un profilo dell'istanza IAM con lo stesso nome del ruolo. Tuttavia, se il ruolo viene creato utilizzando AWS Command Line Interface (AWS CLI) o dall’API, un profilo dell’istanza non verrà creato automaticamente. Per ulteriori informazioni, consulta la pagina I created an IAM role, but the role doesn't appear in the dropdown list when I launch an instance. What do I do? Ho creato un ruolo IAM, ma esso non compare nell'elenco a tendina quando lancio un'istanza. Che cosa devo fare?
4. Seleziona Avanti: autorizzazioni.
5. Crea una policy personalizzata che fornisca le autorizzazioni minime richieste per accedere al tuo bucket S3. Per istruzioni su come creare policy personalizzate, consulta Scrittura delle policy IAM: come consentire l’accesso a un bucket Amazon S3 e Identity and Access Management in Amazon S3.
Nota: la creazione di una policy con le autorizzazioni minime richieste è una best practice per la sicurezza. Tuttavia, per consentire l'accesso EC2 a tutti i tuoi bucket Amazon S3, utilizza la policy IAM gestita AmazonS3ReadOnlyAccess o AmazonS3FullAccess.
6. Seleziona Avanti: tage quindi fai clic su Avanti: rivedi.
7. Inserisci il nome del ruolo e quindi seleziona Crea ruolo.
Collega il profilo dell’istanza IAM all’istanza EC2.
1. Apri la console di Amazon EC2.
2. Scegli Istanze.
3. Seleziona l’istanza da collegare al ruolo IAM.
4. Scegli la scheda Operazioni, poi Sicurezza e quindi Modifica ruolo IAM.
5. Seleziona il ruolo IAM appena creato, quindi scegli Salva. Il ruolo IAM è assegnato alla tua istanza EC2.
Convalida delle autorizzazioni sul bucket S3
1. Accedi alla console di Amazon S3.
2. Seleziona il bucket S3 di cui desideri verificare la policy.
3. Scegli Autorizzazioni.
4. Scegli Policy del bucket.
5. Ricerca le affermazioni contrassegnate da Effetto: negato.
6. Nella policy del bucket, modifica o rimuovi qualunque affermazione contrassegnata da Effetto: negato che impedisca al profilo dell’istanza IAM di accedere al tuo bucket. Per istruzioni su come modificare le policy, consulta Modificare le policy IAM.
Convalida la connettività di rete dall'istanza EC2 ad Amazon S3
Affinché l'istanza EC2 possa connettersi agli endpoint S3, l'istanza deve essere una delle seguenti:
- Istanza EC2 con un indirizzo IP pubblico e una voce della tabella di instradamento con la route predefinita che punta a un gateway Internet
- Istanza EC2 privata con una route predefinita attraverso un gateway NAT
- Istanza EC2 privata collegata ad Amazon S3 tramite un endpoint VPC gateway
Per risolvere i problemi di connettività tra un'istanza EC2 privata e un bucket S3, consulta Why can’t I connect to an S3 bucket using a gateway VPC endpoint? (Perché non riesco a connettermi a un bucket S3 attraverso un endpoint VPC gateway?)
Convalida l'accesso ai bucket S3
1. Installa l'AWS CLI sulla tua istanza EC2.
Nota: se ricevi un messaggio di errore durante l'esecuzione dei comandi AWS CLI, assicurati di utilizzare la versione più recente di AWS CLI.
2. Verifica l’accesso ai bucket S3 eseguendo il comando seguente. Sostituisci DOC-EXAMPLE-BUCKET con il nome del tuo bucket S3.
aws s3 ls s3://DOC-EXAMPLE-BUCKET
Nota: gli oggetti S3 crittografati con una chiave del Servizio di gestione delle chiavi AWS (AWS KMS) devono disporre delle autorizzazioni kms:Decrypt concesse nei seguenti casi:
- Nel ruolo IAM collegato all'istanza.
- Nella policy chiave KMS.
Se non sono concesse tali autorizzazioni, non è possibile copiare o scaricare gli oggetti S3. Per ulteriori informazioni, consulta È necessario specificare la chiave di AWS KMS quando effettuo il download di un oggetto crittografato con KMS da Amazon S3?
Informazioni correlate
Perché non riesco a connettermi a un bucket S3 attraverso un endpoint VPC Gateway?
Video correlati

Contenuto pertinente
- AWS UFFICIALEAggiornata 7 mesi fa
- Come posso visualizzare gli oggetti la cui replica non è riuscita da un bucket Amazon S3 a un altro?AWS UFFICIALEAggiornata 2 mesi fa
- AWS UFFICIALEAggiornata 7 mesi fa
- AWS UFFICIALEAggiornata 7 mesi fa