View a markdown version of this page

Accedi per AWS sviluppo locale utilizzando le credenziali della console - AWS Command Line Interface

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à.

Accedi per AWS sviluppo locale utilizzando le credenziali della console

È possibile utilizzare le credenziali di accesso esistenti alla AWS Management Console per l'accesso programmatico ai servizi. AWS Dopo un flusso di autenticazione basato su browser, AWS genera credenziali temporanee che funzionano con strumenti di sviluppo locali come AWS CLI, Tools for e SDK. AWS PowerShell AWS Questa funzionalità semplifica il processo di configurazione e gestione delle credenziali AWS CLI, soprattutto se si preferisce l'autenticazione interattiva alla gestione delle chiavi di accesso a lungo termine.

Con questo processo, puoi autenticarti utilizzando le credenziali root create durante la configurazione iniziale dell'account, un utente IAM o un'identità federata del tuo provider di identità e la AWS CLI gestisce automaticamente le credenziali temporanee per te. Questo approccio migliora la sicurezza eliminando la necessità di archiviare localmente le credenziali a lungo termine.

Quando esegui il aws login comando, puoi selezionare una delle sessioni attive della console o accedere tramite il flusso di autenticazione basato sul browser e questo genererà automaticamente le credenziali temporanee. La CLI aggiornerà automaticamente queste credenziali per un massimo di 12 ore.

Una volta configurata, la sessione può essere utilizzata nella AWS CLI e in altri AWS SDK e strumenti.

Prerequisiti

Effettua il login al AWS CLI con il comando aws login.

Esegui il aws login comando per autenticarti utilizzando le credenziali AWS della console di gestione esistenti. Se non hai configurato un profilo in precedenza, ti verranno richieste informazioni aggiuntive. Per accedere o configurare un profilo, procedi nel seguente modo.

  1. Nel terminale che preferisci esegui il comando aws login.

    $ aws login

    Per accedere a un profilo denominato o crearne uno nuovo, usa l'--profileopzione.

    $ aws login --profile my-dev-profile
    • Se si tratta di un nuovo profilo o non è stata specificata alcuna AWS regione, la AWS CLI richiede di fornire una regione.

      No AWS region has been configured. The AWS region is the geographic location of your AWS resources. If you've used AWS before and already have resources in your account, tell us which region they were created in. If you haven't created resources in your account before, you can pick the region closest to you: https://docs.aws.amazon.com/global-infrastructure/latest/regions/aws-regions.html. You are able to change the region in the CLI at any time with the command `aws configure set region NEW_REGION`. AWS Region [us-east-1]:
    • Se il dispositivo che utilizza la AWS CLI non dispone di un browser, puoi utilizzare l'--remoteopzione per fornire un URL da aprire su un dispositivo abilitato al browser.

      $ aws login --remote
      Nota

      Puoi controllare l'accesso all'autenticazione same-device (aws login) e cross-device (). aws login --remote Utilizza i seguenti ARN di risorse in qualsiasi policy IAM pertinente.

      • arn:aws:signin:region:account-id:oauth2/public-client/localhost— Usa questo ARN per l'autenticazione sullo stesso dispositivo con. aws login

      • arn:aws:signin:region:account-id:oauth2/public-client/remote— Usa questo ARN per l'autenticazione su più dispositivi con. aws login --remote

  2. La AWS CLI tenta di aprire il browser predefinito per la procedura di accesso del tuo account. AWS

    Attempting to open the login page for `us-east-1` in your default browser. If the browser does not open, use the following URL to complete your login: https://signin.us-east-1.amazonaws.com/authorize?<abbreviated> If you cannot connect to this URL, make sure that you have specified a valid region.
    • Se hai utilizzato l'--remoteopzione, vengono visualizzate le istruzioni per avviare manualmente la procedura di accesso in base al tipo di autorizzazione che stai utilizzando. L'URL visualizzato è un URL univoco che inizia con: https://us-east-1.signin.amazonaws.com/authorize. Una volta completato l'accesso al browser, dovrai copiare e incollare nuovamente il codice di autorizzazione risultante nella CLI.

      Browser will not be automatically opened. Please visit the following URL: https://region.signin.amazonaws.com/authorize?<abbreviated> Please enter the authorization code displayed in the browser:
  3. Nel browser, selezionate le credenziali da utilizzare dall'elenco visualizzato, quindi tornate al terminale.

    • Se il profilo che stai configurando ha una sessione di accesso precedentemente configurata che non corrisponde alla tua nuova sessione, la AWS CLI richiede di confermare che stai cambiando la sessione che corrisponde al profilo esistente.

      Profile signin is already configured to use session arn:aws:iam::0123456789012:user/ReadOnly. Do you want to overwrite it to use arn:aws:iam::0123456789012:user/Admin instead? (y/n):.
  4. Un messaggio finale descrive la configurazione del profilo completata. Puoi ora utilizzare questo profilo per richiedere le credenziali. Utilizza il comando aws login per richiedere e recuperare le credenziali necessarie per eseguire i comandi.

    Il token di autenticazione viene memorizzato nella cache su disco .aws/login/cache nella directory con un nome di file basato sul profilo risolto.

File di configurazione generato

Questi passaggi comportano la creazione del default profilo nel config file che ha il seguente aspetto:

[default] login_session = arn:aws:iam::0123456789012:user/username region = us-east-1

Esegui un comando con il tuo profilo

Una volta effettuato l'accesso, puoi utilizzare le tue credenziali per richiamare i comandi AWS CLI con il profilo associato. L'esempio seguente chiama il get-caller-identity comando utilizzando il profilo: default

$ aws sts get-caller-identity

Per accedere a una sessione specifica, usa l'--profileopzione.

$ aws sts get-caller-identity --profile my-dev-profile

La AWS CLI e gli SDK aggiorneranno automaticamente le credenziali memorizzate nella cache ogni 15 minuti, se necessario. L'intera sessione sarà valida fino alla durata della sessione impostata dall'entità IAM (massimo 12 ore), dopodiché dovrai eseguirla nuovamente. aws login

Esci dalla sessione utilizzando il comando aws logout

Quando hai finito di usare la sessione, puoi far scadere le tue credenziali o eseguire il aws logout comando per eliminare le credenziali memorizzate nella cache. Se non viene specificato alcun profilo nella riga di comando o nella variabile di AWS_PROFILE ambiente, il comando disconnette l'utente dal profilo predefinito. L'esempio seguente disconnette l'utente dal profilo predefinito.

$ aws logout

Per uscire da una sessione specifica, usa l'--profileopzione.

$ aws logout --profile my-dev-profile

Per uscire da tutti i profili che utilizzano le credenziali di accesso, usa l'--allopzione.

$ aws logout --all

Credenziali memorizzate nella cache

Le credenziali temporanee memorizzate nella cache, così come i metadati necessari per aggiornarle, vengono archiviati per impostazione predefinita in Linux e macOS o ~/.aws/login/cache in Windows. %USERPROFILE%\.aws\login\cache

Per archiviare la cache delle credenziali a breve termine in una posizione alternativa, imposta la variabile di ambiente. AWS_LOGIN_CACHE_DIRECTORY

Condivisione delle credenziali di accesso come credenziali di processo

Le versioni precedenti degli AWS SDK o di altri strumenti di sviluppo potrebbero non supportare ancora le credenziali della console. Come soluzione alternativa, puoi configurare la AWS CLI in modo che funga da fornitore di credenziali di processo. La CLI continuerà ad aggiornare le credenziali secondo necessità, condividendole con strumenti configurati per utilizzare il profilo credential_process.

In questo esempio, usa la AWS CLI per accedere prima per accedere al profilo:

$ aws login --profile signin

Quindi, configura manualmente un profilo con l'opzione credential_process, che rimanda al profilo di accesso. Ora puoi configurare SDK o strumenti per utilizzare il profilo di processo, che richiamerà la CLI per condividere le credenziali dal profilo di accesso.

[profile signin] login_session = arn:aws:iam::0123456789012:user/username region = us-east-1 [profile process] credential_process = aws configure export-credentials --profile signin --format process region = us-east-1

Risorse correlate

Di seguito sono elencate alcune risorse aggiuntive.