Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Amazon EC2: richiede MFA (GetSessionToken) per operazioni EC2 specifiche
Questo esempio mostra come creare una policy basata sull'identità che consenta l'accesso completo a tutte le operazioni AWS API in Amazon EC2. Tuttavia, rifiuta esplicitamente l'accesso alle operazioni API StopInstances
e TerminateInstances
se l'utente non viene autenticato utilizzando l'autenticazione a più fattori (MFA, Multi-Factor Authentication). Per eseguire questa operazione a livello di programmazione, l'utente deve includere valori SerialNumber
e TokenCode
opzionali durante la chiamata all'operazione GetSessionToken
. Questa operazione restituisce credenziali temporanee autenticate utilizzando MFA. Per ulteriori informazioni, consulta. GetSessionToken Richiesta di credenziali per utenti in ambienti non attendibili
Che cosa fa questa policy?
-
L'istruzione
AllowAllActionsForEC2
consente tutte le operazioni Amazon EC2. -
La dichiarazione
DenyStopAndTerminateWhenMFAIsNotPresent
rifiuta le operazioniTerminateInstances
eStopInstances
quando manca il contesto MFA. Ciò significa che le operazioni vengono rifiutate quando manca il contesto dell'autenticazione a più fattori (ovvero, MFA non è stato utilizzato). Un rifiuto sostituisce il consenso.
Nota
Il controllo della condizione per MultiFactorAuthPresent
nella dichiarazione Deny
non deve essere {"Bool":{"aws:MultiFactorAuthPresent":false}}
, perché tale chiave non è presente e non può essere valutata quando MFA non viene utilizzato. Utilizzare invece il controllo BoolIfExists
per vedere se la chiave è presente prima di controllare il valore. Per ulteriori informazioni, consulta ... IfExists operatori di condizionamento.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAllActionsForEC2", "Effect": "Allow", "Action": "ec2:*", "Resource": "*" }, { "Sid": "DenyStopAndTerminateWhenMFAIsNotPresent", "Effect": "Deny", "Action": [ "ec2:StopInstances", "ec2:TerminateInstances" ], "Resource": "*", "Condition": { "BoolIfExists": {"aws:MultiFactorAuthPresent": false} } } ] }