Vai al contenuto principale

La guida completa ad AWS Identity and Access Management (IAM)

Impara a usare AWS Identity and Access Management (IAM) per mettere in sicurezza il tuo ambiente AWS, gestire l'accesso con utenti, gruppi e ruoli e applicare best practice per una sicurezza robusta.
Aggiornato 29 set 2026  · 14 min leggi

Scopri con l'IA

ChatGPTClaudePerplexity

Il servizio Identity and Access Management (IAM) è la base di tutto ciò che fai in AWS. Protegge i tuoi dati e ti permette di controllare chi può accedere alle risorse AWS e cosa può farci. 

Senza IAM, chiunque acceda al tuo account AWS potrebbe combinare guai modificando configurazioni, eliminando risorse o accedendo a dati sensibili.

Questa guida contiene tutto ciò che ti serve per configurare e usare IAM per mettere in sicurezza il tuo ambiente AWS.

Se sei nuovo su AWS, valuta di seguire il nostro corso Introduzione ad AWS per prendere confidenza con le basi.

Che cos'è AWS IAM?

IAM sta per Identity and Access Management. È stato rilasciato nel 2011 ed è uno strumento per gestire chi può accedere alle tue risorse AWS e cosa può farci.

Questi sono i quattro componenti essenziali di IAM:

  • User: sono individui o applicazioni che necessitano di accesso alle tue risorse AWS. Ogni utente riceve credenziali univoche, come password e access key.
  • Gruppi: sono insiemi di utenti. Invece di assegnare le autorizzazioni a ogni utente singolarmente, puoi inserire gli utenti in gruppi e assegnare le autorizzazioni al gruppo. Questo rende più semplice gestire i permessi per più utenti contemporaneamente.
  • Ruoli: sono pensati per essere assunti da chiunque ne abbia bisogno invece di essere associati a una singola persona. Per esempio, un'istanza EC2 può "assumere un ruolo" per accedere ai bucket S3 senza necessitare di credenziali permanenti. I ruoli usano credenziali di sicurezza temporanee che scadono automaticamente, il che è ottimo in termini di sicurezza.
  • Policy: sono documenti JSON che definiscono le autorizzazioni. Specificano quali azioni sono consentite o negate su quali risorse. Le policy possono essere associate a utenti, gruppi o ruoli.

Se sei nuovo su AWS, valuta di seguire il nostro corso Introduzione ad AWS per familiarizzare con le basi di questa piattaforma estesa.

Primi passi con IAM

Se non l'hai già fatto, crea un account AWS ed effettua l'accesso.

Per trovare il servizio IAM, inserisci la parola chiave "iam" nella barra di ricerca in alto nella console AWS e seleziona il primo risultato per IAM.

AWS - Ricerca del servizio IAM

Ricerca del servizio IAM nella console AWS

Verrai così indirizzato alla dashboard di IAM, dove puoi creare e gestire tutti i componenti IAM.

Dashboard IAM

Dashboard IAM

Il pannello di sinistra della dashboard ti permette di creare utenti, ruoli e policy, oltre a report e strumenti per la gestione e il monitoraggio.

Le raccomandazioni di sicurezza si trovano di solito al centro della dashboard IAM. AWS offre ampie indicazioni sulle best practice di sicurezza e rende facile intraprendere azioni correttive quando necessario.

Policy IAM di AWS

Ora vediamo uno dei concetti più importanti di IAM: le policy.

Cosa sono le policy IAM?

Le policy definiscono chi può avere quali permessi per accedere alle tue risorse AWS.

Panoramica delle policy IAM

Panoramica delle policy IAM

Le policy sono scritte in formato JSON e sono composte da alcuni elementi chiave.

Ad esempio, ecco il documento JSON per la policy gestita da AWS chiamata "AmazonS3FullAccess":

​​{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "s3:*",
            "Resource": "*"
        }
    ]
}
  • L'elemento Version specifica la versione del linguaggio della policy.
  • Lo Statement è dove sta la "sostanza" della policy. Una singola policy può avere più statement. Ogni statement include alcuni campi essenziali:
    • Effect: questo campo specifica se lo statement consente o nega l'accesso. Può essere "Allow" o "Deny".
    • Action: definisce quali azioni sono consentite o negate. Le azioni sono di solito le operazioni che puoi eseguire su una risorsa. AWS ha azioni specifiche per ogni servizio, quindi devi specificarle correttamente.
    • Resource: specifica le risorse AWS a cui si applicano le azioni. Le risorse sono identificate usando gli Amazon Resource Name (ARN), che identificano in modo univoco una risorsa.

Tipi di policy: managed vs inline

Parliamo ora dei tipi di policy, iniziando da quelle gestite, che possono essere gestite da AWS o dal cliente. 

Le policy gestite da AWS sono create e mantenute da AWS e sono un ottimo punto di partenza per set di permessi comuni. Le policy gestite dal cliente sono quelle che crei e gestisci tu, dandoti più flessibilità nel redigere documenti JSON personalizzati.

Le policy inline, invece, sono collegate direttamente a un singolo utente, gruppo o ruolo. Sono utili per permessi specifici e molto controllati che non dovrebbero essere riutilizzati. Tuttavia, la gestione delle policy inline può diventare complessa man mano che aumentano di numero, quindi in genere sono meno preferite rispetto alle managed policy.

Creare e associare policy a utenti, gruppi e ruoli

Creare e associare policy a utenti, gruppi e ruoli in AWS è piuttosto semplice. Ecco una guida passo passo:

Per creare una policy, fai clic su "Policies" nel menu di sinistra della console IAM e poi su "Create Policy".

Puoi definire la policy usando l'editor visuale o la scheda JSON. L'editor visuale è più semplice se non hai familiarità con JSON. Ad esempio, per creare una policy che consente l'accesso in sola lettura a S3, puoi selezionare il "servizio S3" e poi scegliere le azioni "read-only".

Se vuoi saperne di più su S3, dai un'occhiata al nostro tutorial sull'archiviazione AWS.

IAM: Crea una nuova policy

Crea una nuova policy

Una volta definita la policy, fai clic su "Review policy". Poi assegna un nome e una descrizione alla policy e fai clic su "Create policy". A questo punto, la tua policy personalizzata dovrebbe essere stata creata.

Nota che esistono oltre un migliaio di policy gestite da AWS che dovrebbero coprire la maggior parte dei casi d'uso. Potresti quindi non aver mai bisogno di creare policy personalizzate.

IAM: Elenco delle policy gestite da AWS

Elenco delle policy gestite da AWS

Se vuoi associare una policy a un utente, vai su "Users" nella console IAM e seleziona l'utente a cui vuoi associare la policy. 

Fai clic sulla scheda "Permissions" e poi su "Add permissions".

Seleziona "Attach policies directly", trova la policy che hai creato (o qualsiasi policy esistente che vuoi associare) e scegli quella desiderata.

IAM: Associa una policy a un utente

Associa una policy a un utente

Clicca su "Next" per rivedere i permessi, poi su "Add permissions".

Se vuoi associare una policy a un gruppo, vai su "User groups" nella console IAM e seleziona il gruppo a cui associare la policy, oppure clicca su "Create new group" per crearne uno nuovo.

Fai clic sulla "scheda Permissions" e su "Add permissions".

Come per l'associazione delle policy agli utenti, devi selezionare "Attach policies directly" e poi trovare e scegliere la policy che hai creato (o una policy esistente).

Clicca su "Next" per rivedere i permessi, poi su "Add permissions".

Vai su "Roles" nella console IAM e seleziona il ruolo a cui vuoi associare una policy.

Fai clic sulla scheda "Permissions" e poi su "Add permissions". Questo passaggio è leggermente diverso da quanto visto in precedenza. Ti vengono mostrate le policy dei permessi correnti e l'elenco completo delle altre policy che puoi associare. 

IAM: Associa una policy a un ruolo

Associa una policy a un ruolo

Seleziona le policy che vuoi associare e fai clic su "Add permissions". Ricorda che puoi aggiungere fino a 10 managed policy a un ruolo.

Ruoli IAM di AWS

I ruoli IAM ti aiutano a gestire i permessi per i tuoi servizi e applicazioni. 

A differenza degli utenti IAM, che sono associati a una persona specifica, i ruoli sono pensati per essere assunti da chiunque ne abbia bisogno, rendendoli estremamente flessibili.

Considera un ruolo come un insieme di permessi che può essere assegnato temporaneamente a entità come servizi AWS (ad es. EC2, Lambda) o anche a utenti di un altro account AWS. Questo è ottimo per la sicurezza perché i ruoli usano credenziali temporanee che scadono automaticamente.

Dai un'occhiata al nostro tutorial su come padroneggiare le Step Functions in AWS, dove puoi vedere come i ruoli IAM siano un componente essenziale per orchestrare i workflow.

Come funzionano i ruoli IAM?

Quando crei un ruolo, definisci due elementi principali: trust policy e permissions policy:

  • Trust policy: definiscono chi può assumere il ruolo. Per esempio, puoi creare una trust policy che consenta a un'istanza EC2 o a una funzione AWS Lambda di assumere il ruolo. Questa policy specifica le entità fidate (come servizi o utenti) che possono usare il ruolo.
  • Permissions policy: definiscono quali azioni sono consentite o negate quando il ruolo viene assunto. Funzionano proprio come le policy che associ agli utenti IAM, specificando a quali risorse il ruolo può accedere e quali azioni può eseguire.

Un'entità deve assumere un ruolo per poterlo usare. Quando un'istanza EC2 o una funzione Lambda assume un ruolo, ottiene credenziali di sicurezza temporanee che può usare per effettuare richieste ai servizi AWS.

Ecco un esempio semplice: supponiamo di avere un'applicazione in esecuzione su un'istanza EC2 che deve leggere da un bucket S3. Invece di memorizzare le access key sull'istanza, puoi creare un ruolo IAM con una policy che consente la lettura da S3. Poi associ questo ruolo alla tua istanza EC2. Quando l'istanza è in esecuzione, assume il ruolo e ottiene credenziali temporanee per accedere al bucket S3.

Le credenziali temporanee vengono fornite all'istanza tramite l'AWS Security Token Service (STS). Queste credenziali includono un access key ID, una secret access key e un session token, e sono valide per un breve periodo, in genere poche ore.

Usare i ruoli semplifica anche la gestione dei permessi perché puoi aggiornare le policy del ruolo in un unico punto, applicandole automaticamente a tutte le entità che assumono il ruolo.

Come creare un ruolo IAM

Per creare un ruolo IAM, fai clic su "Roles" nel menu di sinistra della console IAM e poi su "Create Role". Quindi segui questi passaggi per completare la creazione del ruolo:

Dovrai scegliere chi o cosa userà questo ruolo. Hai diverse opzioni: servizi AWS (ad es. EC2, Lambda), un altro account AWS o un'identità web. Per ora, diciamo che stiamo creando un ruolo che ci concede pieno accesso a S3.

Seleziona "S3" come servizio e "S3" come caso d'uso. Clicca su "Next".

IAM: Crea un ruolo - Seleziona entità attendibile

Seleziona un'entità attendibile

Qui aggiungerai i permessi al tuo ruolo. Puoi scegliere tra le policy esistenti o crearne una nuova.

Per questo ruolo, troviamo e selezioniamo la policy "AmazonS3FullAccess" e poi clicchiamo su "Next".

IAM: Crea un ruolo - Aggiungi permessi

Aggiungi permessi a un ruolo IAM

Dai al tuo ruolo un nome che chiarisca a cosa serve, ad esempio "FullS3Access".

IAM: Crea un ruolo - Assegna nome, rivedi e crea

Assegna nome, rivedi e crea un ruolo

Rivedi i dettagli del tuo ruolo per assicurarti che sia tutto corretto. Vedrai l'entità attendibile, le policy associate e gli eventuali tag aggiunti.

I tag sono opzionali, ma possono aiutare a organizzare e gestire i ruoli. Per esempio, puoi aggiungere un tag con chiave "Environment" e valore "Production".

Clicca su "Create role".

Come gestire i ruoli IAM

La gestione dei ruoli IAM può diventare caotica se ne hai molti, ma ci sono modi per mantenere l'ordine:

  • Usa nomi descrittivi per i tuoi ruoli. Questo rende più facile capire a colpo d'occhio a cosa serve ciascun ruolo. Ad esempio, invece di un nome generico come "Role1", usa qualcosa come "EC2_S3_ReadOnly" per indicare che è per istanze EC2 con accesso in sola lettura a S3.
  • Raggruppa ruoli simili. Puoi usare i tag per organizzare i ruoli per reparto, progetto o ambiente. Per esempio, aggiungi tag come "Environment: Production" o "Department: Finance".
  • Rivedi regolarmente i tuoi ruoli. Controlla periodicamente tutti i ruoli per vedere se sono ancora necessari. Rimuovi quelli che non sono più in uso. Questo riduce il disordine e minimizza i rischi di sicurezza assicurandoti che esistano solo i ruoli necessari.
  • Usa AWS IAM Access Analyzer. Questo strumento ti aiuta a identificare ruoli e policy che concedono accesso troppo ampio e che potrebbero rappresentare rischi per la sicurezza. Fornisce insight sui tuoi ruoli, facilitando l'affinamento dei permessi e garantendo che i ruoli siano il più specifici possibile.

Caso d'uso: accesso cross-account

L'accesso cross-account con i ruoli IAM è una funzionalità utile che ti consente di concedere permessi a utenti o risorse in un account AWS per accedere a risorse in un altro account.

Immagina di avere due account AWS: "Account A" è il tuo ambiente di produzione e "Account B" è il tuo ambiente di sviluppo. Potresti aver bisogno che utenti o applicazioni in "Account B" accedano a risorse in "Account A", ma non vuoi creare utenti IAM separati nell'"Account" A per tutti.

Puoi creare un ruolo in "Account A" che conceda i permessi necessari e poi consentire a utenti o risorse in "Account B" di assumere quel ruolo.

Questi sono i passaggi da seguire per gestire lo scenario descritto:

  • Crea un ruolo in "Account A" andando sulla console IAM in "Account A" e cliccando su "Roles".
  • Clicca su "Create role" e scegli "AWS account" come entità attendibile. Inserisci l'ID account di "Account B". Questo imposta una relazione di trust, consentendo agli utenti di "Account B" di assumere il ruolo.

IAM: Accesso cross-account

Accesso cross-account IAM

  • Associa al ruolo le permissions policy necessarie. Per esempio, se vuoi consentire l'accesso a un bucket S3, potresti associare la policy "AmazonS3ReadOnlyAccess".
  • In "Account B", crea una policy IAM che consenta di assumere il ruolo in "Account A". La policy avrà un aspetto simile a questo:
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "sts:AssumeRole",
      "Resource": "arn:aws:iam::AccountA_ID:role/RoleName"
    }
  ]
}
  • Sostituisci AccountA_ID con l'ID account AWS effettivo di "Account A" e RoleName con il nome del ruolo che hai creato.
  • Associa questa policy agli utenti o ai gruppi in "Account B" che necessitano dell'accesso.

Ora utenti o applicazioni in "Account B" possono assumere il ruolo di "Account A" per accedere alle risorse. Questo può essere fatto usando AWS CLI, SDK o la console.

Best practice per AWS IAM

Le best practice IAM sono essenziali per mantenere sicuro il tuo ambiente AWS. Ecco su cosa dovresti concentrarti:

Abilita l'autenticazione a più fattori (MFA)

La MFA aggiunge un ulteriore livello di sicurezza al tuo account AWS. Anche se qualcuno entra in possesso della tua password, avrebbe comunque bisogno della seconda forma di verifica per accedere. Attivala per l'account root e per tutti gli altri utenti importanti.

Usa i ruoli IAM al posto degli utenti IAM quando possibile

I ruoli forniscono credenziali temporanee che ruotano automaticamente, riducendo il rischio di esposizione di credenziali a lungo termine. Ad esempio, usa i ruoli invece di inserire hardcoded le access key nelle applicazioni in esecuzione su istanze EC2.

Segui il principio del minimo privilegio

Concedi a utenti e ruoli solo le autorizzazioni strettamente necessarie. Questo minimizza il rischio di azioni accidentali o malevole. Rivedi e aggiorna regolarmente i permessi per assicurarti che siano ancora necessari.

Ruota regolarmente le access key

Se devi usare access key, ruotale regolarmente. AWS consente di creare due access key attive per utente, così puoi crearne una nuova, aggiornare le tue applicazioni e poi disattivare la vecchia senza downtime.

Usa i gruppi IAM per gestire i permessi

Invece di assegnare permessi ai singoli utenti, crea gruppi e assegna i permessi ai gruppi. Questo rende la gestione più semplice, soprattutto quando il numero di utenti cresce.

Monitora e verifica le attività IAM

Abilita AWS CloudTrail per registrare tutte le chiamate API, incluse quelle effettuate dagli utenti IAM. Rivedi regolarmente questi log per rilevare attività insolite o non autorizzate. Questo aiuta a mantenere sicurezza e conformità.

Applica policy di password robuste

Imponi policy che richiedano password robuste. Questo include un mix di lettere maiuscole e minuscole, numeri e caratteri speciali. Inoltre, dovresti imporre cambi password regolari ed evitare il riutilizzo di password vecchie.

Limita l'uso dell'account root

L'account root ha accesso illimitato a tutte le risorse del tuo account AWS. Usalo con parsimonia e crea utenti IAM individuali per le attività quotidiane. Abilita sempre la MFA sull'account root.

Funzionalità avanzate di AWS IAM

Se usi AWS IAM in un contesto aziendale, dovresti conoscere alcune funzionalità avanzate.

Federazione delle identità

La federazione delle identità ti permette di usare identità esistenti da altri identity provider (come la directory aziendale o provider di identità social) per accedere alle risorse AWS. Invece di creare utenti IAM separati per tutti, puoi permettere agli utenti di accedere con le loro credenziali esistenti.

Per usare la federazione, devi stabilire una relazione di trust tra AWS e l'identity provider. 

Quando gli utenti cercano di accedere ad AWS, prima si autenticano con l'identity provider. Se l'autenticazione va a buon fine, ricevono credenziali di sicurezza temporanee per accedere alle risorse AWS. 

Queste credenziali sono gestite dall'AWS Security Token Service (STS) e sono valide per un breve periodo, riducendo il rischio di esposizione di credenziali a lungo termine.

IAM Identity Center

L'IAM Identity Center, noto anche come AWS Single Sign-On (SSO), è un hub centrale per controllare chi può accedere a cosa nel tuo ambiente AWS senza dover gestire più username e password.

Puoi collegarlo alle tue fonti di identità esistenti come Microsoft Active Directory o altri identity provider che supportano SAML 2.0. I tuoi utenti possono usare le credenziali aziendali per accedere ad AWS.

Una volta configurato, gli utenti possono accedere a un portale personalizzato in cui vedono tutti gli account e le applicazioni AWS per cui hanno permessi. Effettuano un solo accesso e da lì possono passare tra diversi account e applicazioni AWS senza dover accedere di nuovo. 

Puoi configurare l'IAM Identity Center abilitandolo nella AWS Management Console, collegandolo alla tua fonte di identità e configurando l'accesso degli utenti. AWS fornisce tutorial passo passo per aiutarti nel processo, rendendolo semplice anche se sei alle prime armi con IAM o SSO.

Conclusione

Padroneggiare IAM è fondamentale perché pone le basi di tutto ciò che fai in AWS. Ti aiuta a controllare a quali risorse gli utenti possono accedere, mantiene i tuoi dati al sicuro e ti assicura di non lasciare porte aperte agli attaccanti.

Per saperne di più su AWS, inizia iscrivendoti al nostro corso AWS Cloud Technology and Services. Dopo di che, puoi far crescere la tua carriera ottenendo le certificazioni AWS!

Inoltre, guarda il nostro webinar introduttivo su data science nel cloud con Python, AWS e boto3.

FAQ

Qual è la differenza tra ruoli IAM e utenti IAM in AWS?

Gli utenti IAM sono individui o applicazioni specifiche che dispongono di credenziali permanenti e sono in genere associati a una determinata persona o a un servizio. I ruoli IAM, invece, sono pensati per essere assunti da chiunque ne abbia bisogno, fornendo credenziali di sicurezza temporanee che scadono dopo un breve periodo. Questo rende i ruoli più flessibili e sicuri per attività che richiedono accesso temporaneo, come le applicazioni in esecuzione su istanze EC2.

Come posso creare una policy IAM personalizzata in AWS?

Per creare una policy IAM personalizzata, vai alla console IAM, clicca su "Policies" nel menu di sinistra e poi su "Create Policy". Puoi definire la policy usando l'editor visuale o l'editor JSON. Dopo aver definito i permessi, clicca su "Review policy", assegna un nome e una descrizione alla policy e infine clicca su "Create policy". Questa policy personalizzata può poi essere associata a utenti, gruppi o ruoli.

Perché è importante abilitare l'autenticazione a più fattori (MFA) per il mio account AWS?

Abilitare la MFA aggiunge un ulteriore livello di sicurezza al tuo account AWS. Anche se qualcuno dovesse ottenere la tua password, avrebbe comunque bisogno della seconda forma di verifica (come un codice dallo smartphone) per accedere. Questo riduce significativamente il rischio di accessi non autorizzati e aiuta a proteggere i tuoi dati e le tue risorse sensibili.

In che modo i gruppi IAM mi aiutano a gestire i permessi in AWS in modo più efficace?

I gruppi IAM ti permettono di assegnare permessi a più utenti contemporaneamente, semplificando la gestione e l'aggiornamento dei permessi. Invece di assegnare policy ai singoli utenti, puoi creare gruppi basati su ruoli o reparti (ad es. Admin, Developer) e associare a questi gruppi le policy necessarie. Questo approccio semplifica la gestione dei permessi, soprattutto quando il numero di utenti aumenta.

Quali sono i vantaggi dell'uso dei ruoli AWS IAM per l'accesso cross-account?

Usare i ruoli AWS IAM per l'accesso cross-account ti consente di concedere permessi a utenti o risorse in un account AWS per accedere a risorse in un altro account senza creare utenti IAM separati nell'account di destinazione. Questo metodo migliora la sicurezza usando credenziali temporanee che scadono automaticamente, riduce l'onere di gestione di più account utente e semplifica la concessione e la revoca degli accessi tra account.


Joleen Bothma's photo
Author
Joleen Bothma
LinkedIn
Argomenti
Data Engineering
AWS

Approfondisci AWS e data engineering con questi corsi!

Corso

Concetti di tecnologie e servizi cloud AWS

3 ore
21.8K
Impara alla grande la tecnologia cloud AWS con lezioni pratiche e applicazioni reali nell'ecosistema AWS.
Vedi i dettagliRight Arrow
Inizia Il Corso
Mostra altroRight Arrow
Correlato

blog

Che cos'è Snowflake? Guida per principianti alla piattaforma dati cloud

Esplora le basi di Snowflake, la piattaforma dati cloud. Scopri la sua architettura, le sue funzionalità e come integrarla nelle tue pipeline di dati.
Tim Lu's photo

Tim Lu

12 min

blog

I 15 migliori server MCP remoti che ogni AI builder dovrebbe conoscere nel 2026

Scopri i 15 migliori server MCP remoti che stanno trasformando lo sviluppo AI nel 2026. Scopri come migliorano automazione, ragionamento, sicurezza e velocità dei workflow.
Abid Ali Awan's photo

Abid Ali Awan

15 min

blog

Tokenizzazione nel NLP: come funziona, sfide e casi d'uso

Guida al preprocessing NLP nel machine learning. Copriamo spaCy, i transformer di Hugging Face e come funziona la tokenizzazione in casi d'uso reali.
Abid Ali Awan's photo

Abid Ali Awan

10 min

Mostra AltroMostra Altro