Tutorial: Using IAM Identity Center to run Amazon S3 commands in the AWS CLI - AWS Command Line Interface

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

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:

  1. Recupera i valori SSO Start URL e SSO Region necessari per eseguire aws configure sso

    1. Nel portale di accesso AWS seleziona il set di autorizzazioni che utilizzi per lo sviluppo e quindi seleziona il link Chiavi di accesso.

    2. Nella finestra di dialogo Ottieni le credenziali seleziona la scheda corrispondente al tuo sistema operativo.

    3. Scegli il metodo Credenziali Centro identità IAM per ottenere i valori SSO Start URL e SSO Region.

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

  3. 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:

È 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:access

Per 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-code

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:

È 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:

[profile my-dev-profile] sso_session = my-sso sso_account_id = 111122223333 sso_role_name = SampleRole [sso-session my-sso] sso_region = us-east-1 sso_start_url = https://my-sso-portal.awsapps.com/start sso_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 ls 2018-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 logout Successfully 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.