Come posso utilizzare una policy IAM basata sull'identità per limitare l'accesso a una specifica sessione di ruolo IAM?
Desidero utilizzare una policy basata sull'identità per concedere le autorizzazioni a una specifica sessione di ruolo AWS Identity and Access Management (AWS IAM).
Risoluzione
Per creare una policy IAM che consenta l'accesso a una specifica sessione di ruolo IAM, utilizza la chiave di contesto per la condizione globale AWS aws:userid.
Nota: se ricevi messaggi di errore durante l'esecuzione dei comandi dell'Interfaccia della linea di comando AWS (AWS CLI), consulta la sezione Risoluzione degli errori per AWS CLI. Inoltre, assicurati di utilizzare la versione più recente di AWS CLI.
La chiave di condizione globale aws:userid verifica se l'ID univoco del principale che effettua la richiesta corrisponde all'ID univoco specificato nella policy IAM. Ad esempio, per consentire a una sessione di ruolo IAM di eseguire azioni specifiche di Amazon Elastic Compute Cloud (Amazon EC2) nell'account AWS, crea una policy IAM:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowASpecificRoleSession", "Effect": "Allow", "Action": [ "ec2:StartInstances", "ec2:StopInstances", "ec2:RebootInstances", "ec2:TerminateInstances" ], "Resource": "*", "Condition": { "StringEquals": { "aws:userid": "AROA123456789EXAMPLE:&ExampleRoleSessionName" } } } ] }
Nota: sostituisci aws:userid con l'ID univoco e il nome della tua sessione di ruolo.
La precedente policy IAM concede all'istanza Amazon EC2 l'accesso alla sessione di ruolo IAM nella chiave di condizione globale aws:userid. Altre sessioni di ruolo non possono eseguire azioni di Amazon EC2.
Per ottenere l'ID del ruolo IAM, esegui il comando AWS CLI get-role:
aws iam get-role --role-name role_name
Nota: sostituisci role_name con il nome del tuo ruolo.
Ricevi un output simile al seguente:
{ "Role": { "Path": "/", "RoleName": "Test-Role", "RoleId": "AROA123456789EXAMPLE", "Arn": "arn:aws:iam::444455556666:role/Role", "CreateDate": "2023-08-04T12:37:14+00:00", "AssumeRolePolicyDocument": "URL-encoded-JSON", "Description": "Test Role", "MaxSessionDuration": 3600, "RoleLastUsed": { "Region": "us-east-1", "LastUsedDate": "2025-10-27T12:36:29+00:00" } } }
Nell'output, controlla la stringa RoleId. L'ID del ruolo viene utilizzato nella policy basata sull'identità per definire l'ambito di accesso dell'istanza Amazon EC2 alla sessione di ruolo IAM.
Nota: la chiave di condizione globale aws:userid può essere utilizzata in qualsiasi tipo di policy IAM, ad esempio una policy basata sull'identità, una policy basata sulle risorse e una policy sul limite di autorizzazione. I valori della chiave di condizione globale aws:userid dipendono dal tipo di principale che avvia la richiesta. Per determinare i valori per diversi tipi di principali, consulta Valori della chiave del principale.
Informazioni correlate
In che modo è possibile limitare l'accesso delle identità IAM a risorse Amazon EC2 specifiche?
- Argomenti
- Security, Identity, & Compliance
- Lingua
- Italiano
