0Pricing
Cloud & IT Cert Prep · Lezione

Principio del privilegio minimo

Applicherete il principio del privilegio minimo a scenari reali e userete con criterio le policy gestite da AWS rispetto alle policy inline.

Principio del privilegio minimo è una lezione Cloud & IT Cert Prep gratuita su CoddyKit. Questa è la lezione 3 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Cloud & IT Cert Prep, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Cloud & IT Cert Prep include 4 lezioni in totale.

Che cos'è il privilegio minimo?

Il privilegio minimo consiste nel concedere a ogni identità solo le autorizzazioni realmente necessarie, senza nulla di più. Se le credenziali vengono compromesse, i danni restano limitati. 🛡️

Iniziare dal diniego predefinito

AWS semplifica l'applicazione del privilegio minimo: un nuovo utente o ruolo inizia con zero autorizzazioni. Si aggiunge esattamente ciò che serve, invece di rimuovere in seguito ciò che non serve.

Sovr Provisioning: l'errore più comune

L'errore classico consiste nel concedere AdministratorAccess perché è la soluzione più rapida. Un singolo bug potrebbe così cancellare i dati. Limiti invece le autorizzazioni ad azioni e risorse specifiche.

# AVOID: wildcard permissions
{
  'Effect': 'Allow',
  'Action': '*',
  'Resource': '*'
}

# PREFER: scoped permissions
{
  'Effect': 'Allow',
  'Action': ['dynamodb:GetItem', 'dynamodb:Query'],
  'Resource': 'arn:aws:dynamodb:us-east-1:123456789:table/Orders'
}

Policy gestite da AWS e dal cliente

Le policy gestite da AWS sono pratiche, ma spesso troppo ampie. Le policy gestite dal cliente consentono di indicare esattamente i bucket o le tabelle utilizzati dall'applicazione.

# Create a scoped customer-managed policy
aws iam create-policy \
  --policy-name LambdaOrdersReader \
  --policy-document file://orders-reader-policy.json

IAM Access Analyzer

IAM Access Analyzer rileva le risorse esposte al di fuori dell'account. Può persino generare policy restrittive leggendo ciò che un'identità ha effettivamente utilizzato.

# Enable IAM Access Analyzer for the account
aws accessanalyzer create-analyzer \
  --analyzer-name MyAccountAnalyzer \
  --type ACCOUNT

Utilizzare le condizioni per restringere le autorizzazioni

Anche quando deve consentire un'azione, le condizioni riducono il rischio: richieda MFA, limiti l'accesso all'indirizzo IP dell'ufficio o consenta a un utente di accedere solo alla propria cartella. ✨

# Allow users to manage only their own folder in S3
{
  'Effect': 'Allow',
  'Action': ['s3:GetObject', 's3:PutObject'],
  'Resource': 'arn:aws:s3:::shared-bucket/${aws:username}/*'
}

I limiti delle autorizzazioni come guardrail

Quando consente ai team di gestire il proprio IAM, un permissions boundary stabilisce il limite delle operazioni che i relativi ruoli possono eseguire. Possono lavorare liberamente, ma non oltre il limite impostato.

Accesso a tempo con le policy di sessione

Quando assume un ruolo, può passare una session policy che lo restringe ulteriormente per quella sessione. È ideale per concedere a una pipeline solo le autorizzazioni strettamente necessarie.

# Assume a role with a restrictive session policy
aws sts assume-role \
  --role-arn arn:aws:iam::123456789012:role/DeployRole \
  --role-session-name deploy-session \
  --policy '{"Version":"2012-10-17","Statement":[{"Effect":"Allow","Action":"lambda:UpdateFunctionCode","Resource":"arn:aws:lambda:us-east-1:123456789012:function:MyApp"}]}'

Controllo degli accessi basato sui tag (ABAC)

ABAC concede l'accesso confrontando i tag invece di elencare ogni risorsa. Ad esempio, può consentire a un ruolo di arrestare solo le istanze EC2 contrassegnate con il tag del proprio team.

{
  'Effect': 'Allow',
  'Action': 'ec2:StopInstances',
  'Resource': '*',
  'Condition': {
    'StringEquals': {
      'ec2:ResourceTag/Team': '${aws:PrincipalTag/Team}'
    }
  }
}

Esaminare le autorizzazioni inutilizzate

AWS tiene traccia dell'ultima volta in cui è stata utilizzata ogni autorizzazione. I dati Last Accessed rivelano le autorizzazioni inutilizzate da almeno 90 giorni, che sono buone candidate alla rimozione.

# Get service last-accessed data for a role
aws iam generate-service-last-accessed-details \
  --arn arn:aws:iam::123456789012:role/MyLambdaRole

# Retrieve the report (use the JobId from above)
aws iam get-service-last-accessed-details --job-id <JobId>

Privilegio minimo per l'accesso ai dati

Applichi il privilegio minimo anche ai dati: limiti gli utenti alla propria cartella S3, delimiti l'accesso a DynamoDB in base all'ID utente e assegni a ogni applicazione credenziali di accesso al database separate.

Verifica rapida

Verifichi la Sua comprensione dei concetti di AWS Solutions Architect (SAA-C03) trattati in questa lezione.

Riepilogo della lezione

In breve: il privilegio minimo significa concedere il numero minimo di autorizzazioni, Access Analyzer individua quelle inutilizzate e condizioni e limiti mantengono il controllo. Prossimo argomento: buone pratiche IAM e MFA.

Domande Frequenti

La lezione «Principio del privilegio minimo» è gratuita?

Sì — il testo completo di «Principio del privilegio minimo» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Cloud & IT Cert Prep, passa a CoddyKit PRO. Il corso Cloud & IT Cert Prep include 4 lezioni in totale.

Cosa imparerò in «Principio del privilegio minimo»?

Applicherete il principio del privilegio minimo a scenari reali e userete con criterio le policy gestite da AWS rispetto alle policy inline. Eserciti Cloud & IT Cert Prep con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Cloud & IT Cert Prep?

Non è richiesta alcuna esperienza precedente. Cloud & IT Cert Prep su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 3 di 4.

Quanto tempo richiede la lezione «Principio del privilegio minimo»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Cloud & IT Cert Prep?

Sì. Ogni lezione Cloud & IT Cert Prep include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Utenti e gruppi IAM
  2. Ruoli e policy IAM
  3. Principio del privilegio minimo
  4. Best practice IAM e MFA
← Torna a Cloud & IT Cert Prep