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 lo sviluppo AWS locale utilizzando le credenziali della console
È possibile utilizzare le credenziali di accesso esistenti AWS della Console di gestione 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 and. AWS PowerShell AWS SDKs 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 le credenziali a lungo termine a livello locale.
Quando si esegue il aws login comando, è possibile selezionare una delle sessioni attive della console oppure accedere tramite il flusso di autenticazione basato sul browser e questo genererà automaticamente 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 strumenti AWS SDKs .
Argomenti
Prerequisiti
-
Installa la AWS CLI. Per ulteriori informazioni, consulta Installazione o aggiornamento dell’ultima versione di AWS CLI. Per utilizzare il comando è richiesta una versione minima di 2.32.0.
aws login -
Accesso per accedere alla console di AWS gestione come utente root, utente IAM o tramite federazione con IAM. Se utilizzi IAM Identity Center, vai Configurazione dell’autenticazione in Centro identità IAM con AWS CLI invece a.
-
Assicurati che l'identità IAM disponga delle autorizzazioni appropriate. Allega la policy SignInLocalDevelopmentAccessgestita al tuo utente, ruolo o gruppo IAM. Se accedi come utente root, non sono richieste autorizzazioni aggiuntive.
Accedi alla AWS CLI con il aws login comando.
Esegui il aws login comando per autenticarti utilizzando le credenziali AWS della console di gestione esistenti. Se non hai configurato in precedenza un profilo, ti verranno richieste ulteriori informazioni. Per accedere o configurare un profilo, procedi nel seguente modo.
-
Nel terminale che preferisci esegui il comando
aws login.$ aws loginPer accedere a un profilo denominato o crearne uno nuovo, utilizza 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
-
-
La AWS CLI tenta di aprire il browser predefinito per la procedura di accesso del tuo AWS account.
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 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:
-
-
Nel browser, seleziona le tue credenziali da utilizzare dall'elenco visualizzato e poi torna al tuo terminale.
-
Se il profilo che stai configurando ha una sessione di accesso precedentemente configurata che non corrisponde alla nuova sessione, la AWS CLI richiede di confermare che stai cambiando la sessione corrispondente 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/Admininstead? (y/n):.
-
-
Un messaggio finale descrive la configurazione del profilo completata. Puoi ora utilizzare questo profilo per richiedere le credenziali. Utilizza il comando
aws loginper richiedere e recuperare le credenziali necessarie per eseguire i comandi.Il token di autenticazione viene memorizzato nella cache su disco
.aws/login/cachenella 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 simile al seguente:
[default] login_session = arn:aws:iam::0123456789012:user/usernameregion = 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, utilizzate l'--profileopzione.
$ aws sts get-caller-identity --profilemy-dev-profile
La AWS CLI e SDKs aggiorneranno automaticamente le credenziali memorizzate nella cache ogni 15 minuti, se necessario. La sessione complessiva sarà valida fino alla durata della sessione impostata per il principale IAM (massimo 12 ore), dopodiché dovrai eseguire nuovamente. aws login
Esci dalla sessione utilizzando il comando aws logout
Quando hai finito di usare la sessione, puoi lasciare scadere le 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 ti disconnette dal tuo profilo predefinito.
$ aws logout
Per uscire da una sessione specifica, usa l'--profileopzione.
$ aws logout --profilemy-dev-profile
Per uscire da tutti i profili che utilizzano le credenziali di accesso, utilizza l'--allopzione.
$ aws logout --all
Credenziali memorizzate nella cache
Le credenziali temporanee memorizzate nella cache e i metadati necessari per aggiornarle vengono archiviati per impostazione predefinita in ~/.aws/login/cache Linux e macOS o su 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 AWS SDKs o di altri strumenti di sviluppo potrebbero non supportare ancora le credenziali della console. Come soluzione alternativa, è possibile configurare la AWS CLI in modo che funga da provider 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 l'accesso 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 i nostri strumenti SDKs 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/usernameregion = us-east-1 [profile process] credential_process = aws configure export-credentials --profile signin --format process region = us-east-1
risoluzione dei problemi
Questa pagina contiene consigli per la risoluzione dei problemi relativi all'accesso per lo sviluppo AWS locale utilizzando le credenziali della console per la CLI. AWS
Nota
Per risolvere altri problemi che potresti riscontrare utilizzando la AWS CLI, vedi. Risoluzione degli errori per AWS CLI
ExpiredToken o AccessDeniedException errori dopo aver usato «aws login»
Quando si esegue un comando AWS CLI dopo l'esecuzione aws login per un determinato profilo, è possibile che si verifichi un errore di credenziali scadute o non valide.
$ aws s3 ls An error occurred (ExpiredToken) when calling the ListBuckets operation: The provided token has expired.
Possibile causa: in quel profilo è presente una combinazione di credenziali esistenti e nuove credenziali di accesso
Esegui aws configure list o stampa aws configure list --profile <profile name> da dove la CLI sta risolvendo le credenziali per il profilo predefinito o specificato.
Se la colonna TYPE è diversa dal login, significa che nel profilo di destinazione è ancora impostato un tipo diverso di credenziali.
In questo esempio, le credenziali vengono risolte dal file di credenziali condivise nella home directory, che ha la precedenza sulle credenziali di accesso.
$ aws configure list NAME : VALUE : TYPE : LOCATION profile : <not set> : None : None access_key : ****************MPLE : shared-credentials-file : secret_key : ****************EKEY : shared-credentials-file : region : us-east-1 : config-file : ~/.aws/config
Per risolvere questo problema, rimuovete manualmente tutte le credenziali esistenti dal file di configurazione e delle credenziali per il profilo di destinazione. Dopo averlo fatto, dovresti vedere le credenziali di accesso quando esegui di nuovo. aws configure list
$ aws configure list NAME : VALUE : TYPE : LOCATION profile : <not set> : None : None access_key : ****************MPLE : login : secret_key : ****************EKEY : login : region : us-east-1 : config-file : ~/.aws/config
In alternativa, l'utilizzo dell'--debugopzione mostrerà da dove la CLI sta risolvendo le credenziali.
Firewall che blocca l'accesso alla rete durante l'esecuzione di «aws login»
Durante l'esecuzione, aws login è possibile che venga visualizzato un popup o un messaggio dal software firewall che impedisce alla AWS CLI di accedere alla rete.
Possibile causa: il firewall o il software di sicurezza impediscono alla AWS CLI di aprire la porta utilizzata per gestire il OAuth callback.
Per evitare questo problema, utilizzate invece l'--remoteopzione. Verrà richiesto di copiare e incollare il codice di autorizzazione invece di utilizzare il OAuth callback.
$ aws login --remote
Risorse correlate
Di seguito sono elencate alcune risorse aggiuntive.