Tutorial: Using IAM Identity Center to run Amazon S3 commands in the AWS CLI
Questo argomento descrive come configurare la AWS CLI per l’autenticazione degli utenti con AWS IAM Identity Center versione corrente (Centro identità IAM) per recuperare le credenziali al fine di eseguire i comandi di AWS Command Line Interface (AWS CLI) per Amazon Simple Storage Service (Amazon S3).
Argomenti
Fase 1: autenticazione tramite il Centro identità IAM
Ottieni l’accesso all’autenticazione SSO con il Centro identità IAM. Scegli uno dei metodi seguenti per accedere alle credenziali AWS.
Segui le istruzioni riportate in Nozioni di base nella Guida per l’utente di AWS IAM Identity Center. Questo processo attiva Centro identità IAM, crea un utente amministratore e aggiunge un set di autorizzazioni con privilegi minimi appropriato.
Nota
Crea un set di autorizzazioni per l’applicazione di autorizzazioni con privilegio minimo. Consigliamo di utilizzare il set di autorizzazioni PowerUserAccess predefinito, a meno che il datore di lavoro non ne abbia creato uno personalizzato a questo scopo.
Esci dal portale e accedi di nuovo per visualizzare gli Account AWS, i dettagli relativi all’accesso programmatico e le opzioni per Administrator o PowerUserAccess. Seleziona PowerUserAccess quando utilizzi l’SDK.
Accedi ad AWS tramite il portale del provider di identità. Se l’amministratore cloud ti ha concesso autorizzazioni PowerUserAccess (sviluppatore), potrai visualizzare gli Account AWS a cui hai accesso e il tuo set di autorizzazioni. Accanto al nome del set di autorizzazioni, vengono visualizzate le opzioni per accedere agli account manualmente o a livello di programmazione utilizzando il set di autorizzazioni.
Le implementazioni personalizzate possono dare luogo a esperienze diverse, ad esempio nomi di set di autorizzazioni diversi. In caso di dubbi su quale set di autorizzazioni utilizzare, contatta il team IT per assistenza.
Accedi ad AWS tramite il portale di accesso AWS. Se l’amministratore cloud ti ha concesso autorizzazioni PowerUserAccess (sviluppatore), potrai visualizzare gli Account AWS a cui hai accesso e il tuo set di autorizzazioni. Accanto al nome del set di autorizzazioni, vengono visualizzate le opzioni per accedere agli account manualmente o a livello di programmazione utilizzando il set di autorizzazioni.
Contatta il team IT per assistenza.
Fase 2: raccogliere le informazioni del Centro identità IAM
Dopo aver ottenuto l’accesso ad AWS, raccogli le informazioni su Centro identità IAM effettuando le seguenti operazioni:
-
Recupera i valori
SSO Start URLeSSO Regionnecessari per eseguireaws configure sso-
Nel portale di accesso AWS seleziona il set di autorizzazioni che utilizzi per lo sviluppo e quindi seleziona il link Chiavi di accesso.
-
Nella finestra di dialogo Ottieni le credenziali seleziona la scheda corrispondente al tuo sistema operativo.
-
Scegli il metodo Credenziali Centro identità IAM per ottenere i valori
SSO Start URLeSSO Region.
-
-
In alternativa, a partire dalla versione 2.22.0 puoi utilizzare l’URL del nuovo emittente anziché l’URL di avvio. L’URL dell’emittente si trova nella console AWS IAM Identity Center in una delle posizioni seguenti:
-
Nella pagina Dashboard l’URL dell’emittente si trova nel riepilogo delle impostazioni.
-
Nella pagina Impostazioni l’URL dell’emittente si trova nelle impostazioni in Origine identità.
-
-
Per informazioni su quale valore di ambito registrare, consulta Ambiti di accesso OAuth 2.0 nella Guida per l’utente del Centro identità IAM.
Fase 3: creazione dei bucket Amazon S3
Accedi alla Console di gestione AWS e apri la console di Amazon S3 all'indirizzo https://console.aws.amazon.com/s3/
Per questo tutorial, crea alcuni bucket da recuperare successivamente in un elenco.
Fase 4: Installazione di AWS CLI
Installa la AWS CLI seguendo le istruzioni relative al tuo sistema operativo. Per ulteriori informazioni, consulta Installazione o aggiornamento dell’ultima versione di AWS CLI.
Una volta installato, puoi verificare l’installazione aprendo il tuo terminale preferito ed eseguendo il seguente comando. Questa operazione dovrebbe mostrare la versione installata di AWS CLI.
$ aws --version
Fase 5: configurazione del profilo della AWS CLI
Configurare il profilo utilizzando uno dei seguenti metodi
La sezione sso-session del file config viene utilizzata per raggruppare le variabili di configurazione per l’acquisizione di token di accesso SSO, che possono quindi essere utilizzati per acquisire credenziali AWS. Vengono utilizzate le impostazioni seguenti:
-
(Obbligatorio)
sso_start_url -
(Obbligatorio)
sso_region
È necessario definire una sezione sso-session e associarla a un profilo. Le impostazioni sso_region e sso_start_url devono essere configurate all’interno della sezione sso-session. In genere, le impostazioni sso_account_id e sso_role_name devono essere configurate nella sezione profile in modo che l’SDK possa richiedere le credenziali SSO.
L’esempio seguente configura l’SDK in modo da richiedere le credenziali SSO e supporta l’aggiornamento automatico dei token:
$ aws configure sso
SSO session name (Recommended): my-sso
SSO start URL [None]: https://my-sso-portal.awsapps.com/start
SSO region [None]: us-east-1
SSO registration scopes [None]: sso:account:accessPer impostazione predefinita, viene utilizzata l’autorizzazione Proof Key for Code Exchange (PKCE) per AWS CLI a partire dalla versione 2.22.0 e questa deve essere utilizzata su dispositivi dotati di browser. Per continuare a utilizzare l’autorizzazione del dispositivo, aggiungi l’opzione --use-device-code.
$ aws configure sso --use-device-codeLa sezione sso-session del file config viene utilizzata per raggruppare le variabili di configurazione per l’acquisizione di token di accesso SSO, che possono quindi essere utilizzati per acquisire credenziali AWS. Vengono utilizzate le impostazioni seguenti:
-
(Obbligatorio)
sso_start_url -
(Obbligatorio)
sso_region
È necessario definire una sezione sso-session e associarla a un profilo. sso_region e sso_start_url devono essere impostati all’interno della sezione sso-session. In genere, le impostazioni sso_account_id e sso_role_name devono essere configurate nella sezione profile in modo che l’SDK possa richiedere le credenziali SSO.
L’esempio seguente configura l’SDK in modo da richiedere le credenziali SSO e supporta l’aggiornamento automatico dei token:
[profilemy-dev-profile] sso_session =my-ssosso_account_id =111122223333sso_role_name =SampleRole[sso-sessionmy-sso] sso_region =us-east-1sso_start_url =https://my-sso-portal.awsapps.com/startsso_registration_scopes =sso:account:access
Il token di autenticazione viene memorizzato nella cache su disco all’interno della directory ~/.aws/sso/cache con un nome di file basato sul nome della sessione.
Fase 6: accesso al Centro identità IAM
Nota
Il processo di accesso può richiedere di consentire l’accesso di AWS CLI ai tuoi dati. Poiché AWS CLI è basato sull’SDK per Python, i messaggi di autorizzazione possono contenere variazioni del nome botocore.
Per recuperare e memorizzare nella cache le credenziali per il Centro identità IAM, esegui il comando seguente per AWS CLI per aprire il browser predefinito e verificare l’accesso al Centro identità IAM.
$ aws sso login --profile my-dev-profile
A partire dalla versione 2.22.0, l’autorizzazione PKCE è l’impostazione predefinita. Per utilizzare l’autorizzazione del dispositivo per l’accesso, aggiungi l’opzione --use-device-code.
$ aws sso login --profile my-dev-profile --use-device-code
Fase 7: esecuzione dei comandi Amazon S3
Per elencare i bucket che hai creato in precedenza, utilizza il comando aws s3
ls. L’esempio seguente elenca tutti i tuoi bucket Amazon S3.
$aws s3 ls2018-12-11 17:08:50 my-bucket 2018-12-14 14:55:44 my-bucket2
Fase 8: disconnessione dal Centro identità IAM
Dopo aver terminato di utilizzare il profilo Centro identità IAM, esegui il comando seguente per eliminare le credenziali memorizzate nella cache.
$aws sso logoutSuccessfully signed out of all SSO profiles.
Fase 9: eliminazione delle risorse
Al termine di questo tutorial, esegui la pulizia di tutte le risorse che hai creato durante questo tutorial che non ti servono più, inclusi i bucket Amazon S3.
Risoluzione dei problemi
Se riscontri problemi durante l’utilizzo di AWS CLI, consulta Risoluzione degli errori per la AWS CLI per informazioni sulla comune procedura di risoluzione dei problemi.
Risorse aggiuntive
Di seguito sono elencate alcune risorse aggiuntive.
-
Configurazione dell’autenticazione in Centro identità IAM con AWS CLI
-
Installazione o aggiornamento dell’ultima versione di AWS CLI
-
Impostazioni dei file di configurazione e delle credenziali nella AWS CLI
-
aws configure ssoin AWS CLI version 2 Reference -
aws configure sso-sessionin AWS CLI version 2 Reference -
aws sso loginin AWS CLI version 2 Reference -
aws sso logoutin AWS CLI version 2 Reference -
Configurazione per l’utilizzo di AWS CLI con CodeCatalyst nella Guida per l’utente di Amazon CodeCatalyst
-
Ambiti di accesso OAuth 2.0 nella Guida per l’utente del Centro identità IAM
-
Tutorial introduttivi nella Guida per l’utente del Centro identità IAM