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à.
Passare a un IAM ruolo (Strumenti per Windows PowerShell)
Un ruolo specifica un set di autorizzazioni da utilizzare per accedere alle risorse AWS necessarie. In questo senso, è simile a un utente in AWS Identity and Access Management (IAM). Quando effettui l'accesso come utente, ottieni uno specifico set di autorizzazioni. Tuttavia, non accedi a un ruolo, ma una volta effettuato l'accesso puoi passare a un ruolo. Ciò consente di accantonare temporaneamente le autorizzazioni utente originali e usufruire invece delle autorizzazioni assegnate al ruolo. Il ruolo può trovarsi nel tuo account o in qualsiasi altro Account AWS. Per ulteriori informazioni sui ruoli e i relativi vantaggi e su come crearli e configurarli, consulta IAMruoli e IAMcreazione di ruoli.
Importante
Le autorizzazioni dell'IAMutente e i ruoli a cui si passa non sono cumulativi. Un solo set di autorizzazioni è attivo alla volta. Quando passi a un ruolo, lasci temporaneamente le autorizzazioni utente e utilizzi le autorizzazioni assegnate al ruolo. Quando lasci il ruolo, le autorizzazioni utente vengono automaticamente ripristinate.
Questa sezione descrive come cambiare ruoli quando utilizzi la riga di comando con gli AWS Tools for Windows PowerShell.
Immaginate di avere un account nell'ambiente di sviluppo e di dover occasionalmente lavorare con l'ambiente di produzione dalla riga di comando utilizzando gli Strumenti perUse-STSRole
cmdlet che passa un nuovo ruolo come parametro. ARN Il comando restituisce le credenziali di sicurezza temporanee per il ruolo richiesto. È quindi possibile utilizzare tali credenziali nei PowerShell comandi successivi con le autorizzazioni del ruolo per accedere alle risorse in produzione. Mentre utilizzi il ruolo, non puoi utilizzare le autorizzazioni utente dell'account di sviluppo perché è attivo un solo set di autorizzazioni alla volta.
Nota
Per motivi di sicurezza, gli amministratori possono esaminare AWS CloudTrail i registri per scoprire chi ha eseguito un'azione in. AWS L'amministratore potrebbe richiedere di specificare una identità di origine o un nome della sessione del ruolo quando si assume il ruolo. Per ulteriori informazioni, consulta sts:SourceIdentity e sts:RoleSessionName.
Tutte le chiavi di accesso e i token sono solo esempi e non possono essere utilizzati come mostrato. Sostituiscili con i valori appropriati del tuo ambiente reale.
Per passare a un ruolo (Strumenti per Windows) PowerShell
-
Apri un PowerShell prompt dei comandi e configura il profilo predefinito per utilizzare la chiave di accesso IAM dell'utente corrente o del tuo ruolo federato. Se in precedenza hai utilizzato gli Strumenti per Windows PowerShell, probabilmente l'operazione è già stata eseguita. Tieni presente che puoi cambiare ruolo solo se hai effettuato l'accesso come IAM utente, non come Utente root dell'account AWS.
PS C:\>
Set-AWSCredentials -AccessKey
-SecretKeyAKIAIOSFODNN7EXAMPLE
-StoreAswJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
MyMainUserProfile
PS C:\>
Initialize-AWSDefaults -ProfileName
MyMainUserProfile
-Regionus-east-2
Per ulteriori informazioni, vedere Utilizzo AWS delle credenziali nella Guida per l'AWS Tools for Windows PowerShell utente.
-
Per recuperare le credenziali per il nuovo ruolo, eseguire il comando seguente per passare al ruolo
nell'account 123456789012. Il ruolo viene assegnato ARN all'amministratore dell'account che lo ha creato. Il comando richiede di fornire anche un nome di sessione. È possibile selezionare qualsiasi testo. Il comando seguente richiede le credenziali e quindi acquisisce l'oggetto proprietàRoleName
Credentials
dall'oggetto risultati restituiti e lo memorizza nella variabile$Creds
.PS C:\>
$Creds = (Use-STSRole -RoleArn "arn:aws:iam::
123456789012
:role/RoleName
" -RoleSessionName "MyRoleSessionName
").Credentials$Creds
è un oggetto che ora contiene gli elementiAccessKeyId
,SecretAccessKey
eSessionToken
necessari nelle fasi successive. I seguenti comandi di esempio illustrano valori tipici:PS C:\>
$Creds.AccessKeyId
AKIAIOSFODNN7EXAMPLEPS C:\>
$Creds.SecretAccessKey
wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEYPS C:\>
$Creds.SessionToken
AQoDYXdzEGcaEXAMPLE2gsYULo+Im5ZEXAMPLEeYjs1M2FUIgIJx9tQqNMBEXAMPLECvSRyh0FW7jEXAMPLEW+vE/7s1HRp XviG7b+qYf4nD00EXAMPLEmj4wxS04L/uZEXAMPLECihzFB5lTYLto9dyBgSDyEXAMPLE9/g7QRUhZp4bqbEXAMPLENwGPy Oj59pFA4lNKCIkVgkREXAMPLEjlzxQ7y52gekeVEXAMPLEDiB9ST3UuysgsKdEXAMPLE1TVastU1A0SKFEXAMPLEiywCC/C s8EXAMPLEpZgOs+6hz4AP4KEXAMPLERbASP+4eZScEXAMPLEsnf87eNhyDHq6ikBQ==PS C:\>
$Creds.Expiration
Thursday, June 18, 2018 2:28:31 PM -
Per utilizzare queste credenziali per ogni successivo comando, includerle con il parametro
-Credential
. Ad esempio, il comando seguente utilizza le credenziali del ruolo e funziona solo se al ruolo viene concessa l'autorizzazioneiam:ListRoles
grazie alla quale può quindi eseguire il cmdletGet-IAMRoles
:PS C:\>
get-iamroles -Credential $Creds
-
Per tornare alle credenziali originali, è sufficiente smettere di utilizzare il
-Credentials $Creds
parametro e consentire PowerShell il ripristino delle credenziali archiviate nel profilo predefinito.