Chiamata dei AWS servizi da un ambiente in AWS Cloud9 - AWS Cloud9

AWS Cloud9 non è più disponibile per i nuovi clienti. I clienti esistenti di AWS Cloud9 possono continuare a utilizzare il servizio normalmente. Scopri di più»

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Chiamata dei AWS servizi da un ambiente in AWS Cloud9

È possibile chiamare i AWS servizi da un ambiente di sviluppo AWS Cloud9. Ad esempio, puoi eseguire le operazioni seguenti:

  • Caricare e scaricare i dati nei bucket Amazon Simple Storage Service (Amazon S3).

  • Inviare notifiche di trasmissione tramite gli argomenti Amazon Simple Notification Service (Amazon SNS).

  • Leggere e scrivere i dati nei database Amazon DynamoDB (DynamoDB).

Puoi chiamare i AWS servizi dall'ambiente in diversi modi. Ad esempio, puoi utilizzare AWS Command Line Interface (AWS CLI) o AWS CloudShell per eseguire i comandi da una sessione terminale. Puoi anche chiamare i AWS servizi dal codice che esegui all'interno del tuo ambiente. Puoi farlo utilizzando gli SDK AWS per linguaggi di programmazione come JavaScript, Python, Ruby, PHP, Go e C++. Per ulteriori informazioni, consulta Esempio di AWS CLI e aws-shell, la Guida per l'utente di AWS Command Line Interface e SDK AWS.

Ogni volta che la AWS CLI, AWS CloudShell o il codice chiama un AWS servizio, la AWS CLI, AWS CloudShell o il codice deve fornire un set di credenziali di accesso AWS insieme alla chiamata. Tali credenziali servono a determinare se l'intermediario dispone delle autorizzazioni appropriate per effettuare la chiamata. Se le credenziali non coprono le autorizzazioni appropriate, la chiamata ha esito negativo.

Ci sono diversi modi per fornire le credenziali per l'ambiente. La tabella seguente descrive alcuni approcci.

Tipo di ambiente Approccio

EC2

Utilizza le credenziali temporanee gestite da AWS.

Consigliamo questo approccio per un ambiente EC2. Le credenziali temporanee gestite da AWS gestiscono le credenziali di accesso AWS in un ambiente EC2 per tuo conto, seguendo al contempo le best practice di sicurezza AWS.

Se usi un ambiente EC2, puoi ignorare il resto di questo argomento. Questo perché le credenziali temporanee gestite da AWS sono già impostate per l'utente nell'ambiente.

Per ulteriori informazioni, consulta AWSCredenziali temporanee gestite da .

EC2

Allega un profilo dell'istanza IAM all'istanza.

Utilizza questo approccio solo se per un qualsiasi motivo non puoi usare le credenziali temporanee gestite da AWS. Analogamente alle credenziali temporanee gestite da AWS, un profilo dell'istanza gestisce le credenziali di accesso AWS per tuo conto. Tuttavia, devi creare, gestire e collegare il profilo dell'istanza all'istanza Amazon EC2 tu stesso.

Per istruzioni, consulta la sezione relativa alla creazione e utilizzo di un profilo dell'istanza per gestire credenziali temporanee.

EC2 o SSH

Archivia le credenziali di accesso AWS permanenti nell'ambiente.

Questo approccio è meno sicuro rispetto all'uso delle credenziali di accesso AWS temporanee. Tuttavia, è l'unico approccio supportato per un ambiente SSH.

Per istruzioni, consulta la sezione relativa alla creazione e archivio delle credenziali di accesso permanenti in un ambiente.

EC2 o SSH

Inserisci le tue credenziali di accesso AWS permanenti direttamente nel codice.

Scoraggiamo questo approccio perché non segue le best practice di sicurezza di AWS.

Siccome scoraggiamo questo approccio, non lo affrontiamo in questo argomento.

Creazione e utilizzo di un profilo dell'istanza per gestire le credenziali temporanee

Nota

Non è possibile utilizzare questa procedura per un ambiente di sviluppo SSH AWS Cloud9. Invece, passa a Creazione e archivio delle credenziali di accesso permanenti in un ambiente.

Consigliamo di utilizzare le credenziali temporanee gestite da AWS al posto di un profilo dell'istanza. Segui queste istruzioni solo se per qualche motivo non puoi utilizzare le credenziali temporanee gestite da AWS. Per ulteriori informazioni, consulta Credenziali temporanee gestite da AWS.

In questa procedura, utilizzi IAM e Amazon EC2 per creare e collegare un profilo dell'istanza IAM all'istanza Amazon EC2 che si collega all'ambiente. Il profilo dell'istanza gestisce le credenziali temporanee per tuo conto. Questa procedura presuppone che tu abbia già creato un ambiente in AWS Cloud9. Per creare un ambiente, consulta Creazione di un ambiente.

Puoi completare questi processi con le console di IAM e Amazon EC2 o con l'AWS Command Line Interface (AWS CLI).

Creazione di un profilo dell'istanza con la console IAM

Nota

Se disponi già di un ruolo IAM che contiene un profilo dell'istanza, passa a Allegare un profilo dell'istanza a un'istanza con la console Amazon EC2.

  1. Accedi alla console IAM all'indirizzo https://console.aws.amazon.com/iam.

    Per questa fase consigliamo di effettuare l'accesso utilizzando le credenziali a livello di amministratore nell'Account AWS. Se non si è in grado di eseguire questa operazione, contattare l'amministratore dell'Account AWS.

  2. Nella barra di navigazione, scegliere Roles (Ruoli).

    Nota

    Non puoi utilizzare la console IAM per creare un profilo dell'istanza da solo. Devi creare un ruolo IAM, che contiene un profilo dell'istanza.

  3. Selezionare Create role (Crea ruolo).

  4. Nella pagina Select type of trusted entity (Seleziona tipo di entità affidabile) con il AWS servizio già selezionato, per Choose the service that will use this role (Scegli il servizio che utilizzerà questo ruolo) seleziona EC2.

  5. Per Select your use case (Seleziona il tuo caso d'uso), selezionare EC2.

  6. Scegliere Successivo: Autorizzazioni.

  7. Nella pagina Allega criteri di autorizzazione, nell'elenco dei criteri, seleziona la casella accanto a AdministratorAccess, quindi scegli Avanti: Revisione.

    Nota

    La AdministratorAccesspolicy permette l'accesso illimitato a tutteAWS le operazioni e risorse nell'Account AWS. Usala solo per scopi di sperimentazione. Per ulteriori informazioni, consulta Policy IAM nella Guida per l'utente di IAM.

  8. Nella pagina Review (Verifica), per Role Name (Nome ruolo), immetti il nome del ruolo, ad esempio my-demo-cloud9-instance-profile.

  9. Selezionare Create Role (Crea ruolo).

Passa a Allegare un profilo dell'istanza a un'istanza con la console Amazon EC2.

Creazione di un profilo dell'istanza con la AWS CLI

Nota

Se disponi già di un ruolo IAM che contiene un profilo dell'istanza, passa a Allegare un profilo dell'istanza a un'istanza con la AWS CLI.

Per questo argomento, consigliamo di configurare AWS CLI utilizzando le credenziali a livello di amministratore nell'Account AWS. Se non si è in grado di eseguire questa operazione, contattare l'amministratore dell'Account AWS.

Nota

Se si utilizzi le credenziali temporanee gestite da AWS, non puoi usare una sessione del terminale nell'IDE AWS Cloud9 per eseguire alcuni o tutti i comandi descritti in questa sezione. Per le best practice di sicurezza AWS, le credenziali temporanee gestite da AWS non consentono l'esecuzione di alcuni comandi. Tuttavia, è possibile eseguire i comandi da un'installazione separata dell'AWS Command Line Interface (AWS CLI).

  1. Definisci una relazione di trust in AWS per il ruolo IAM necessario del profilo dell'istanza. Per eseguire questa operazione, devi creare un file con i seguenti contenuti (ad esempio, my-demo-cloud9-instance-profile-role-trust.json).

    { "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "ec2.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  2. Utilizzando il terminale o il prompt dei comandi, passa alla directory dove hai già salvato questo file.

  3. Crea un ruolo IAM per il profilo dell'istanza. A tale scopo, esegui il comando IAM create-role, specificando un nome per il nuovo ruolo IAM (ad esempio my-demo-cloud9-instance-profile-role) e il nome del file appena salvato.

    aws iam create-role --role-name my-demo-cloud9-instance-profile-role --assume-role-policy-document file://my-demo-cloud9-instance-profile-role-trust.json
  4. Collega le autorizzazioni di accesso AWS al ruolo IAM del profilo dell'istanza. A tale scopo, esegui il comando IAM attach-role-policy, specificando il nome del ruolo IAM esistente e il nome della risorsa Amazon (ARN) della policy gestita da AWS denominata AdministratorAccess.

    aws iam attach-role-policy --role-name my-demo-cloud9-instance-profile-role --policy-arn arn:aws:iam::aws:policy/AdministratorAccess
    Nota

    La AdministratorAccesspolicy permette l'accesso illimitato a tutteAWS le operazioni e risorse nell'Account AWS. Usala solo per scopi di sperimentazione. Per ulteriori informazioni, consulta Policy IAM nella Guida per l'utente di IAM.

  5. Crea il profilo dell'istanza. Per eseguire questa operazione, esegui il comando create-instance-profile di IAM, specificando un nome per il nuovo profilo dell'istanza (ad esempio, my-demo-cloud9-instance-profile).

    aws iam create-instance-profile --instance-profile-name my-demo-cloud9-instance-profile
  6. Allega un ruolo IAM al profilo dell'istanza. Per eseguire questa operazione, esegui add-role-to-instance-profile di IAM, specificando il nome del ruolo IAM esistente e il profilo dell'istanza.

    aws iam add-role-to-instance-profile --role-name my-demo-cloud9-instance-profile-role --instance-profile-name my-demo-cloud9-instance-profile

Passa a Creazione di un profilo dell'istanza con la AWS CLI.

Allegare un profilo dell'istanza a un'istanza con la console Amazon EC2.

  1. Accedi alla console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2.

    Per questa fase consigliamo di effettuare l'accesso utilizzando le credenziali a livello di amministratore nell'Account AWS. Se non si è in grado di eseguire questa operazione, contattare l'amministratore dell'Account AWS.

  2. Nella barra di navigazione, assicurati che il selettore della regione visualizzi la Regione AWS che corrisponde a quella dell'ambiente. Ad esempio, se hai creato l'ambiente nella regione Stati Uniti orientali (Ohio), scegli US East (Ohio) (Stati Uniti orientali (Ohio)) anche nel selettore della regione.

  3. Scegliere il link Running Instances (Istanze in esecuzione) oppure, nel riquadro di navigazione, espandere Instances (Istanze) e selezionare Instances (Istanze).

  4. Nell'elenco delle istanze, scegli l'istanza con il Name (Nome) che include il nome dell'ambiente. Ad esempio, se il nome dell'ambiente èmy-demo-environment, scegli l'istanza con il Nome che include my-demo-environment.

  5. Nel menu Actions (Operazioni), scegliere Security (Sicurezza), Modify IAM role (Modifica ruolo IAM).

    Nota

    Nonostante tu stia collegando un ruolo all'istanza, il ruolo contiene un profilo dell'istanza.

  6. Nella pagina Modify IAM Role (Modifica ruolo IAM), per IAM role (Ruolo IAM), selezionare il nome del ruolo identificato o creato nella procedura precedente, quindi selezionare Apply (Applica).

  7. Di nuovo nell'ambiente, utilizza AWS CLI per eseguire il comando aws configure o AWS CloudShell per eseguire il comando configure. Non specificare alcun valore per AWS Access Key ID (ID chiave di accesso AWS) o AWS Secret Access Key (Chiave di accesso segreta AWS) e premi Enter dopo ognuno di questi prompt. Per Default region name (Nome regione predefinito), specifica la Regione AWS più vicina o la regione in cui si trovano le risorse AWS. Ad esempio, per la regione Stati Uniti orientali (Ohio) utilizzare us-east-2. Per un elenco delle regioni, consulta Regioni AWSe Endpoint in Riferimenti generali di Amazon Web Services. Opzionalmente, specifica un valore per Default output format (Formato di output predefinito) (ad esempio, json).

Ora puoi iniziare a chiamare i AWS servizi dall'ambiente. Per utilizzare la AWS CLI, aws-shell o entrambi per chiamare i AWS servizi, consulta Esempi di AWS CLI e aws-shell. Per chiamare i AWS servizi dal codice, consulta i nostri tutorial ed esempi.

Allegare un profilo dell'istanza a un'istanza con la AWS CLI

Nota

Se si utilizzi le credenziali temporanee gestite da AWS, non puoi usare una sessione del terminale nell'IDE AWS Cloud9 per eseguire alcuni o tutti i comandi descritti in questa sezione. Per le best practice di sicurezza AWS, le credenziali temporanee gestite da AWS non consentono l'esecuzione di alcuni comandi. Tuttavia, è possibile eseguire i comandi da un'installazione separata dell'AWS Command Line Interface (AWS CLI).

  1. Esegui il comando Amazon EC2 associate-iam-instance-profile. Specifica il nome del profilo e l'ID dell'istanza e l'ID della Regione AWS dell'istanza Amazon EC2 per l'ambiente.

    aws ec2 associate-iam-instance-profile --iam-instance-profile Name=my-demo-cloud9-instance-profile --region us-east-2 --instance-id i-12a3b45678cdef9a0

    Nel comando precedente, sostituisci us-east-2 con l'ID della Regione AWS per l'istanza e i-12a3b45678cdef9a0 con l'ID dell'istanza.

    Per ottenere l'ID dell'istanza, puoi ad esempio eseguire il comando describe-instances di Amazon EC2, specificando il nome e l'ID della Regione AWS dell'ambiente.

    aws ec2 describe-instances --region us-east-2 --filters Name=tag:Name,Values=*my-environment* --query "Reservations[*].Instances[*].InstanceId" --output text

    Nel comando precedente, sostituisci us-east-2 con l'ID della Regione AWS per l'istanza e my-environment con il nome dell'ambiente.

  2. Di nuovo nell'ambiente, utilizza AWS CLI per eseguire il comando aws configure o aws-shell per eseguire il comando configure. Non specificare alcun valore per AWS Access Key ID (ID chiave di accesso AWS) o AWS Secret Access Key (Chiave di accesso segreta AWS). Premi Enter dopo ciascuno di questi prompt. Per Default region name (Nome regione predefinito), specifica la Regione AWS più vicina o la regione in cui si trovano le risorse AWS. Ad esempio, per la regione Stati Uniti orientali (Ohio) utilizzare us-east-2. Per un elenco delle regioni, consulta AWSRegioni ed endpoint in Riferimenti generali di Amazon Web Services. Opzionalmente, specifica un valore per Default output format (Formato di output predefinito) (ad esempio, json).

Ora puoi iniziare a chiamare i AWS servizi dall'ambiente. Per utilizzare la AWS CLI, aws-shell o entrambi per chiamare i AWS servizi, consulta Esempi di AWS CLI e aws-shell. Per chiamare i AWS servizi dal codice, consulta i nostri tutorial ed esempi.

Creazione e archiviazione di credenziali di accesso permanenti in un ambiente

Nota

Se usi un ambiente di sviluppo EC2 AWS Cloud9, consigliamo di utilizzare le credenziali temporanee gestite daAWS anziché le credenziali di accesso permanenti AWS. Per lavorare con le credenziali temporanee gestite da AWS, consulta AWS credenziali temporanee gestite.

In questa sezione utilizzi AWS Identity and Access Management (IAM) per generare un set di credenziali permanenti. La AWS CLI, aws-shell o il codice possono utilizzare questo set di credenziali per chiamare i AWS servizi. Il set include un ID chiave di accesso AWS e una chiave di accesso segreta AWS univoche per l'utente nell'Account AWS. Se disponi già di un ID chiave di accesso AWS e una chiave di accesso segreta AWS, prendi nota di tali credenziali e passa a Archivio delle credenziali di accesso permanenti in un ambiente.

Puoi creare un set di credenziali permanenti tramite la console IAM o la AWS CLI.

Concessione dell'accesso programmatico

Gli utenti hanno bisogno di un accesso programmatico se desiderano interagire con AWS esternamente alla AWS Management Console. La modalità con cui concedere l'accesso programmatico dipende dal tipo di utente che accede ad AWS.

Per fornire agli utenti l'accesso programmatico, scegli una delle seguenti opzioni.

Quale utente necessita dell'accesso programmatico? Per By

Identità della forza lavoro

(Utenti gestiti nel centro identità IAM)

Utilizza credenziali temporanee per firmare richieste programmatiche alla AWS CLI, agli SDK AWS o alle API AWS.

Segui le istruzioni per l'interfaccia che desideri utilizzare.

IAM Utilizza credenziali temporanee per firmare richieste programmatiche alla AWS CLI, agli SDK AWS o alle API AWS. Segui le istruzioni in Utilizzo di credenziali temporanee con le risorse AWS nella Guida per l'utente IAM.
IAM

(Non consigliato)

Utilizza credenziali a lungo termine per firmare richieste programmatiche alla AWS CLI, agli SDK AWS o alle API AWS.

Segui le istruzioni per l'interfaccia che desideri utilizzare.

Creazione di credenziali di accesso permanenti con la AWS CLI

Nota

Per questa sezione, consigliamo di configurare la AWS CLI utilizzando le credenziali a livello di amministratore nell'Account AWS. Se non si è in grado di eseguire questa operazione, contattare l'amministratore dell'Account AWS.

Nota

Se si utilizzi le credenziali temporanee gestite da AWS, non puoi usare una sessione del terminale nell'IDE AWS Cloud9 per eseguire alcuni o tutti i comandi descritti in questa sezione. Per le best practice di sicurezza AWS, le credenziali temporanee gestite da AWS non consentono l'esecuzione di alcuni comandi. Tuttavia, è possibile eseguire i comandi da un'installazione separata dell'AWS Command Line Interface (AWS CLI).

Esegui il comando create-access-key di IAM per creare una nuova chiave di accesso AWS e la chiave di accesso segreta AWS corrispondente per l'utente.

aws iam create-access-key --user-name MyUser

Nel comando precedente, sostituisci MyUser con il nome dell'utente.

In un posto sicuro, salva i valori AccessKeyId e SecretAccessKey visualizzati. Dopo aver eseguito il comando create-access-key di IAM, questo è l'unico momento in cui puoi utilizzare AWS CLI per visualizzare la chiave di accesso segreta AWS dell'utente. Per generare una nuova chiave di accessoAWS segreta per l'utente se necessaria in un secondo momento, consulta la sezione Creazione, modifica e visualizzazione delle chiavi di accesso (API, CLIPowerShell) nella Guida per l'utente di IAM.

Archivio delle credenziali di accesso permanenti in un ambiente

In questa procedura utilizzi l'IDE AWS Cloud9 per archiviare le credenziali di accesso AWS permanenti nell'ambiente. Questa procedura presuppone che tu abbia già creato un ambiente in AWS Cloud9, aperto l'ambiente e che l'IDE AWS Cloud9 sia visualizzato nel browser Web. Per ulteriori informazioni, consulta Creazione di un ambiente e Apertura di un ambiente.

Nota

La procedura seguente mostra come archiviare le proprie credenziali di accesso permanenti utilizzando variabili di ambiente. Se la AWS CLI o aws-shell è installata nell'ambiente, puoi utilizzare il comando aws configure per la AWS CLI o il comando configure per fare in modo che aws-shell archivi le credenziali di accesso permanenti. Per istruzioni, consulta la sezione Configurazione rapida nella Guida per l'utente di AWS Command Line Interface.

  1. Con l'ambiente aperto, nell'IDE AWS Cloud9, avvia una nuova sessione del terminale, se non è già stata avviata. Per avviare una nuova sessione del terminale, dalla barra dei menu, selezionare Window (Finestra), New Terminal (Nuovo terminale).

  2. Esegui ciascuno dei seguenti comandi, un comando alla volta, per impostare le variabili di ambiente locale che rappresentano le tue credenziali di accesso permanenti. In questi comandi, dopo AWS_ACCESS_KEY_ID:, immetti l'ID della chiave di accesso AWS. Dopo AWS_SECRET_ACCESS_KEY, immetti la chiave di accesso segreta AWS. Dopo AWS_DEFAULT_REGION_ID, immetti l'identificatore della Regione AWS associato alla Regione AWS più vicina (o alla Regione AWS preferita). Per un elenco degli identificatori disponibili, vedere Regioni AWSe Endpoint in Riferimenti generali di Amazon Web Services. Ad esempio, per la regione Stati Uniti orientali (Ohio) utilizza us-east-2.

    export AWS_ACCESS_KEY_ID= export AWS_SECRET_ACCESS_KEY= export AWS_DEFAULT_REGION=
  3. Nota che le variabili di ambiente precedenti sono valide solo per la sessione terminale corrente. Per rendere queste variabili di ambiente disponibili tra le sessioni del terminale, devi aggiungerle al tuo file di profilo shell come variabili di utente di ambiente, come segue.

    1. Nella finestra Environment (Ambiente) dell'IDE, scegli l'icona a forma di ingranaggio, quindi scegli Show Home in Favorites (Mostra Home in Preferiti). Ripetere questa fase e selezionare anche Show Hidden Files (Mostra file nascosti).

    2. Apri il file ~/.bashrc.

    3. Immetti o incolla il codice seguente alla fine del file. In questi comandi, dopo AWS_ACCESS_KEY_ID:, immetti l'ID della chiave di accesso AWS. Dopo AWS_SECRET_ACCESS_KEY, immetti la chiave di accesso segreta AWS. Dopo AWS_DEFAULT_REGION_ID, immetti l'identificatore della Regione AWS associato alla Regione AWS più vicina (o alla Regione AWS preferita). Per un elenco degli identificatori disponibili, vedere Regioni AWSe Endpoint in Riferimenti generali di Amazon Web Services. Ad esempio, per la regione Stati Uniti orientali (Ohio) utilizza us-east-2.

      export AWS_ACCESS_KEY_ID= export AWS_SECRET_ACCESS_KEY= export AWS_DEFAULT_REGION=
    4. Salva il file.

    5. Crea il file ~/.bashrc per caricare queste nuove variabili di ambiente.

      . ~/.bashrc

Ora puoi iniziare a chiamare i AWS servizi dall'ambiente. Per usareAWS CLI o theaws-shell to callAWS servizi, consulta l'esempioAWS CLI e aws-shell. Per chiamare i AWS servizi dal codice, consulta i nostri tutorial ed esempi.