Come gestire AWS IAM utilizzando aws-cli
Su questa pagina
- Prerequisiti
- Cosa faremo?
- Controlla aws cli ed esporta l'accesso AWS e la chiave segreta sulla tua macchina locale.
- Gestisci IAM utilizzando aws-cli
- Conclusione
Gestire utenti, gruppi e ruoli IAM dal tuo terminale è facile e interessante, devi solo eseguire i comandi per portare a termine l'attività. In questo articolo vedremo i comandi per creare Utenti, Gruppi e Ruoli. Vedremo anche i comandi per collegare e scollegare le policy all'utente, al gruppo e al ruolo IAM che creiamo. Questa guida ti aiuterà a iniziare a gestire le risorse IAM dal terminale.
Prima di procedere, si presuppone che tu abbia familiarità con utenti, gruppi, ruoli e policy IAM.
Alcuni dei comandi che abbiamo trattato in questo articolo sono i seguenti.
- list-users: ottieni un elenco di utenti esistenti.
- list-groups: ottieni un elenco di gruppi esistenti.
- list-roles: ottiene un elenco di ruoli esistenti.
- create-user: crea un nuovo utente.
- create-group: crea un nuovo gruppo.
- create-role: crea un nuovo ruolo.
- add-user-to-group: aggiunge un utente al gruppo esistente.
- get-group: ottiene un elenco di utenti presenti nel gruppo
- attach-user-policy: allega il criterio gestito all'utente esistente.
- attach-group-policy: associa il criterio gestito al gruppo esistente.
- attach-role-policy: associa il criterio gestito al ruolo esistente.
- list-attached-user-policies: elenca i criteri collegati all'utente.
- list-attached-group-policies: elenca i criteri collegati al gruppo.
- list-attached-role-policies: elenca i criteri collegati al ruolo.
- detach-user-policy: rimuove il criterio gestito dall'utente esistente.
- detach-group-policy: rimuove la policy gestita dal gruppo esistente.
- detach-user-policy: rimuove il criterio gestito dal ruolo esistente.
- remove-user-from-group: rimuove un utente dai gruppi
- delete-user: elimina un utente IAM.
- delete-group: elimina un gruppo IAM.
- delete-role: elimina un ruolo IAM
Visita la documentazione AWS ufficiale qui per conoscere tutti i comandi aws-cli per IAM.
Prerequisiti
- Account AWS (crealo se non ne hai uno).
- Comprensione di base di IAM (fai clic qui per imparare a creare un utente, un gruppo o un ruolo IAM dalla console AWS).
- Utente AWS IAM con crea un utente IAM).
- AWS CLI installato sul tuo computer locale.
Che cosa faremo?
- Controlla aws cli ed esporta l'accesso AWS e la chiave segreta sulla tua macchina locale.
- Gestisci IAM utilizzando aws-cli
Controlla aws cli ed esporta l'accesso AWS e la chiave segreta sulla tua macchina locale.
Controlla se aws-cli è installato sul tuo computer locale.
aws --version #aws-cli/2.0.0 Python/3.8.2 Darwin/19.2.0 botocore/2.0.0dev7
Il passaggio successivo consiste nell'esportare l'accesso utente AWS e la chiave segreta nel terminale. Le chiavi saranno diverse per te, non utilizzare quelle menzionate di seguito.
export AWS_ACCESS_KEY_ID=<your-iam-user-access-key-here>
export AWS_SECRET_ACCESS_KEY=<your-iam-user-secret-key-here>
Esegui il seguente comando per verificare l'identità dell'utente di cui hai esportato le chiavi.
aws sts get-caller-identity
Gestisci IAM utilizzando aws-cli
Per iniziare con IAM, controlla prima gli utenti, i gruppi e i ruoli IAM esistenti nell'account.
aws iam list-users
aws iam list-groups
aws iam list-roles
Per creare un utente IAM eseguire il seguente comando.
aws iam create-user --user-name test-user
Consente di creare un gruppo IAM.
aws iam create-group --group-name test-group
Durante la creazione di un ruolo, dobbiamo anche allegare una relazione di fiducia. Per questo, abbiamo bisogno di una politica.
Crea un file sul tuo sistema locale con il seguente contenuto, assegna al file il nome \trust-relationship-policy.json\. La seguente policy consente al servizio EC2 di assumere il ruolo.
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Principal": {"Service": "ec2.amazonaws.com"}, "Action": "sts:AssumeRole" } }
Ora siamo pronti per creare un ruolo IAM.
aws iam create-role --role-name test-role --assume-role-policy-document file://trust-relationship-policy.json
Fino a questo punto, abbiamo un utente, un gruppo e un ruolo IAM.
Ora possiamo aggiungere un utente al gruppo che abbiamo creato utilizzando il seguente comando.
aws iam add-user-to-group --user-name test-user --group-name test-group
Controlla i dettagli del gruppo dopo avervi aggiunto l'utente.
aws iam get-group --group-name test-group
Aggiungiamo la policy \ReadOnlyAccess\ all'utente, al gruppo e al ruolo che abbiamo creato.
aws iam attach-user-policy --policy-arn arn:aws:iam::aws:policy/ReadOnlyAccess --user-name test-user
aws iam attach-group-policy --policy-arn arn:aws:iam::aws:policy/ReadOnlyAccess --group-name test-group
aws iam attach-role-policy --policy-arn arn:aws:iam::aws:policy/ReadOnlyAccess --role-name test-role
Verificare se il criterio è stato aggiunto all'utente, al gruppo e al ruolo.
aws iam list-attached-user-policies --user-name test-user
aws iam list-attached-group-policies --group-name test-group
aws iam list-attached-role-policies --role-name test-role
Nel modo in cui abbiamo aggiunto un criterio a Utente, Gruppo e Ruolo, possiamo anche scollegarlo.
Per staccare una policy dobbiamo passare il suo arn al comando.
aws iam detach-user-policy --user-name test-user --policy-arn arn:aws:iam::aws:policy/ReadOnlyAccess
aws iam detach-group-policy --group-name Testers --policy-arn arn:aws:iam::aws:policy/ReadOnlyAccess
aws iam detach-group-policy --group-name test-group --policy-arn arn:aws:iam::aws:policy/ReadOnlyAccess
aws iam detach-role-policy --role-name test-role --policy-arn arn:aws:iam::aws:policy/ReadOnlyAccess
Dopo aver scollegato il criterio, possiamo assicurarci che il criterio non sia più collegato all'utente, al gruppo e al ruolo.
aws iam list-attached-user-policies --user-name test-user
aws iam list-attached-group-policies --group-name test-group
aws iam list-attached-role-policies --role-name test-role
Se non abbiamo più bisogno dell'utente, del gruppo e del ruolo che abbiamo creato, possiamo eliminarli eseguendo il seguente comando.
aws iam delete-user --user-name test-user
Prendi nota del fatto che, prima di eliminare un utente, devi rimuoverlo dal gruppo a cui è stato aggiunto.
aws iam remove-user-from-group --user-name test-user --group-name test-group
aws iam delete-user --user-name test-user
aws iam delete-group --group-name test-group
aws iam delete-role --role-name test-role
Conclusione
In questo articolo abbiamo visto il comando per gestire utenti, gruppi e ruoli IAM. Abbiamo prima creato queste risorse IAM e poi vi abbiamo aggiunto policy gestite da IAM. Abbiamo anche visto come le policy possono essere separate dall'utente, dal gruppo e dal ruolo. Successivamente, abbiamo visto anche il comando per eliminare le risorse IAM che abbiamo creato. Ora puoi provare altri comandi e gestire IAM utilizzando aws-cli.