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.jsonIAM 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 ACCOUNTUtilizzare 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
- Utenti e gruppi IAM
- Ruoli e policy IAM
- Principio del privilegio minimo
- Best practice IAM e MFA