Creazione di un ruolo per delegare le autorizzazioni a un utente IAM - AWS Identity and Access Management

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à.

Creazione di un ruolo per delegare le autorizzazioni a un utente IAM

Puoi utilizzare i ruoli IAM per delegare l'accesso alle tue AWS risorse. Con i ruoli IAM, puoi stabilire relazioni di fiducia tra il tuo account fiduciario e altri account AWS affidabili. L'account che concede fiducia possiede la risorsa alla quale accedere e l'account affidabile contiene gli utenti che devono accedere alla risorsa. Tuttavia, è possibile che un altro account sia proprietario di una risorsa nell'account in uso. L'account che concede fiducia potrebbe infatti consentire all'account attendibile di creare nuove risorse, ad esempio creando nuovi oggetti in un bucket Amazon S3. In tal caso, l'account che crea la risorsa ne è proprietario e controlla chi può accedervi.

Dopo aver creato la relazione di fiducia, un utente IAM o un'applicazione dell'account affidabile può utilizzare l'operazione AssumeRoleAPI AWS Security Token Service (AWS STS). Questa operazione fornisce credenziali di sicurezza temporanee che consentono l'accesso alle AWS risorse del tuo account.

Gli account possono essere controllati da sé stessi oppure l'account con gli utenti può essere controllato da terze parti. Se l'altro account con gli utenti è un account Account AWS che non controlli, puoi utilizzare l'externalIdattributo. L'ID esterno può essere qualsiasi parola o numero concordato tra l'utente e l'amministratore dell'account di terze parti. Questa opzione aggiunge automaticamente una condizione alla policy di affidabilità che consente all'utente di assumere il ruolo solo se la richiesta include il corretto sts:ExternalID. Per ulteriori informazioni, consulta Come utilizzare un ID esterno per concedere l'accesso alle proprie AWS risorse a terzi.

Per informazioni su come utilizzare i ruoli per delegare le autorizzazioni, consultare Termini e concetti dei ruoli. Per informazioni sull'utilizzo di un ruolo di servizio per consentire l'accesso a risorse nel proprio account, consultare Creazione di un ruolo per delegare le autorizzazioni a un servizio AWS.

Creazione di un ruolo IAM (console)

Puoi utilizzare il AWS Management Console per creare un ruolo che un utente IAM può assumere. Ad esempio, supponiamo che l'organizzazione disponga di più Account AWS elementi per isolare un ambiente di sviluppo da un ambiente di produzione. Per informazioni di alto livello sulla creazione di un ruolo che consenta agli utenti nell'account di sviluppo di accedere alle risorse nell'account di produzione, consulta la sezione Esempio di uno scenario in cui si utilizzano account di sviluppo e produzione separati.

Per creare un ruolo (console)
  1. Accedi AWS Management Console e apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/.

  2. Nel riquadro di navigazione della console, selezionare Roles (Ruoli) e Crea ruolo.

  3. Scegli il tipo di ruolo Account AWS.

  4. Per creare un ruolo per il tuo account, scegli This account (Questo account). Per creare un ruolo per un altro account, scegli Altro Account AWS e inserisci l'ID account ID al quale desideri concedere l'accesso alle risorse.

    L'amministratore dell'account specificato può concedere l'autorizzazione di assumere questo ruolo a qualsiasi utente IAM in tale account. Per eseguire questa operazione, l'amministratore collega una policy all'utente o al gruppo che garantisce l'autorizzazione per l'operazione sts:AssumeRole. Tale policy deve specificare il nome ARN del ruolo Resource.

  5. Per concedere le autorizzazioni agli utenti da un account di cui non hai il controllo e se tali utenti assumeranno il ruolo a livello di programmazione, seleziona Require external ID (Richiedi ID esterno). L'ID esterno può essere qualsiasi parola o numero concordato tra l'utente e l'amministratore dell'account di terze parti. Questa opzione aggiunge automaticamente una condizione alla policy di affidabilità che consente all'utente di assumere il ruolo solo se la richiesta include il corretto sts:ExternalID. Per ulteriori informazioni, consulta Come utilizzare un ID esterno per concedere l'accesso alle proprie AWS risorse a terzi.

    Importante

    La scelta di questa opzione limita l'accesso al ruolo solo tramite Tools for Windows PowerShell o l' AWS API. AWS CLI Questo perché non è possibile utilizzare la AWS console per passare a un ruolo che presenta una externalId condizione nella politica di attendibilità. Tuttavia, è possibile creare questo tipo di accesso a livello di codice scrivendo uno script o un'applicazione utilizzando il kit SDK rilevante. Per ulteriori informazioni e uno script di esempio, vedi Come abilitare l'accesso da più account a AWS Management Console nel blog sulla AWS sicurezza.

  6. Se si desidera limitare il ruolo agli utenti che accedono con la multi-factor authentication (MFA), selezionare Require MFA (Richiedi MFA). Questa opzione aggiunge una condizione alla policy di affidabilità del ruolo che controlla un accesso MFA. Gli utenti che desidera assumere il ruolo deve effettuare l'accesso temporaneo con una password una tantum temporanea configurata da un dispositivo MFA. Gli utenti senza l'autenticazione MFA non possono assumere il ruolo. Per ulteriori informazioni sulla funzionalità MFA, consultare Utilizzo dell'autenticazione a più fattori (MFA) in AWS.

  7. Seleziona Successivo.

  8. IAM include un elenco delle politiche AWS gestite e gestite dai clienti nel tuo account. Selezionare la policy delle autorizzazioni da utilizzare o scegliere Crea policy per aprire una nuova scheda del browser e creare una nuova policy da zero. Per ulteriori informazioni, consulta Creazione di policy IAM. Una volta creata la policy, chiudere la scheda e tornare alla scheda originale. Selezionare la casella di controllo accanto alle policy di autorizzazione da assegnare a chiunque assuma il ruolo. È anche possibile non selezionare le policy ora e collegarle al ruolo in un secondo momento. Per default, un ruolo non dispone di autorizzazioni.

  9. (Facoltativo) Impostare un limite delle autorizzazioni. Questa è una caratteristica avanzata.

    Aprire la sezione Set permissions boundary (Imposta limite delle autorizzazioni) e selezionare Use a permissions boundary to control the maximum role permissions (Usa un limite delle autorizzazioni per controllare il numero massimo di autorizzazioni del ruolo). Selezionare la policy da utilizzare per il limite delle autorizzazioni.

  10. Seleziona Successivo.

  11. In Nome ruolo, immetti un nome per il ruolo. I nomi dei ruoli devono essere univoci all'interno del tuo Account AWS. Quando il nome di un ruolo viene utilizzato in una policy o come parte di un ARN, il nome del ruolo fa distinzione tra maiuscole e minuscole. Quando un nome di ruolo viene visualizzato ai clienti nella console, ad esempio durante la procedura di accesso, il nome del ruolo non fa distinzione tra maiuscole e minuscole. Poiché varie entità possono fare riferimento al ruolo, non puoi modificare il nome del ruolo dopo averlo creato.

  12. (Facoltativo) In Description (Descrizione), inserisci una descrizione per il nuovo ruolo.

  13. Scegli Edit (Modifica) nelle sezioni Step 1: Select trusted entities (Fase 1: seleziona le entità attendibili) o Step 2: Add permissions (Fase 2: aggiungi autorizzazioni) per modificare i casi d'uso e le autorizzazioni per il ruolo. Verrai reindirizzato alle pagine precedenti per apportare le modifiche.

  14. (Facoltativo) Aggiungere metadati al ruolo collegando i tag come coppie chiave-valore. Per ulteriori informazioni sull'utilizzo dei tag in IAM, consultare Tagging delle risorse IAM.

  15. Rivedere il ruolo e scegliere Crea ruolo.

    Importante

    Ricordare che questa è solo la prima metà della configurazione obbligatoria. È inoltre necessario fornire ai singoli utenti nell'account attendibile l'autorizzazione a passare al ruolo nella console o ad assumere il ruolo a livello di codice. Per ulteriori informazioni su questa fase, consultare Concessione di autorizzazioni agli utenti per il cambio di ruoli.

Creazione di un ruolo IAM (AWS CLI)

La creazione di un ruolo da AWS CLI richiede più passaggi. Quando si utilizza la console per creare un ruolo, molti passaggi vengono eseguiti automaticamente, ma con la console è AWS CLI necessario eseguire ogni passaggio in modo esplicito e autonomo. È necessario creare il ruolo e quindi assegnargli una policy di autorizzazione. Puoi anche scegliere di impostare il limite delle autorizzazioni per il ruolo.

Per creare un ruolo per accesso tra account (AWS CLI)
  1. Creare un ruolo: aws iam create-role

  2. Allega una politica di autorizzazioni gestite al ruolo: aws iam attach-role-policy

    oppure

    Crea una politica di autorizzazioni in linea per il ruolo: aws iam put-role-policy

  3. (Facoltativo) Aggiungere attributi personalizzati al ruolo collegando tag: aws iam tag-role

    Per ulteriori informazioni, consulta Gestione dei tag sui ruoli (AWS CLI o AWS API) IAM.

  4. (Facoltativo) Imposta il limite delle autorizzazioni per il ruolo: aws iam put-role-permissions-boundary

    Il limite delle autorizzazioni controlla il numero massimo di autorizzazioni che è possibile concedere a un ruolo. I limiti delle autorizzazioni sono una funzionalità avanzata. AWS

L'esempio seguente mostra i primi due passaggi, più comuni, per la creazione di un ruolo per più account in un ambiente semplice. Questo esempio permette agli utenti dell'account 123456789012 di assumere il ruolo e visualizzare il bucket example_bucket di Amazon S3. L'esempio presuppone inoltre l'uso un computer client con Windows e che l'interfaccia a riga di comando sia già configurata con le credenziali dell'account e la regione. Per ulteriori informazioni, vedere Configurazione dell'interfaccia a AWS riga di comando.

In questo esempio, è necessario includere la seguente policy di attendibilità nel primo comando al momento della creazione del ruolo. Questa policy di attendibilità consente agli utenti dell'account 123456789012 di assumere il ruolo tramite l'operazione AssumeRole, ma solo se l'utente fornisce l'autenticazione MFA utilizzando i parametri SerialNumber e TokenCode. Per ulteriori informazioni sulla funzionalità MFA, consultare Utilizzo dell'autenticazione a più fattori (MFA) in AWS.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:root" }, "Action": "sts:AssumeRole", "Condition": { "Bool": { "aws:MultiFactorAuthPresent": "true" } } } ] }
Importante

Se l'elemento Principal contiene l'ARN per un determinato utente o ruolo IAM, quando la policy viene salvata l'ARN viene trasformato in un ID principale univoco. Ciò aiuta a mitigare il rischio che qualcuno aumenti le proprie autorizzazioni rimuovendo e ricreando il ruolo o l'utente. Questo ID non è normalmente presente nella console, perché avviene anche una trasformazione inversa nell'ARN quando la policy di affidabilità viene visualizzata. Tuttavia, se si elimina il ruolo o l'utente, l'ID principale viene visualizzato nella console perché non è più AWS possibile mapparlo su un ARN. Pertanto, se si elimina e crea nuovamente un utente o un ruolo a cui viene fatto riferimento in un elemento Principal della policy di attendibilità, è necessario modificare il ruolo per sostituire l'ARN.

Quando si utilizza il secondo comando, è necessario collegare una policy gestita esistente al ruolo. La policy delle autorizzazioni seguente consente agli utenti che assumono il ruolo di eseguire solo l'operazione ListBucket sul bucket example_bucket di Amazon S3.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::example_bucket" } ] }

Per creare questo ruolo Test-UserAccess-Role, è prima necessario salvare la policy di attendibilità precedente con il nome trustpolicyforacct123456789012.json nella cartella policies dell'unità C: locale. Quindi salva la politica di autorizzazione precedente come politica gestita dai clienti nel tuo account Account AWS con il nome. PolicyForRole È quindi possibile utilizzare i comandi seguenti per creare il ruolo e collegare la policy gestita.

# Create the role and attach the trust policy file that allows users in the specified account to assume the role. $ aws iam create-role --role-name Test-UserAccess-Role --assume-role-policy-document file://C:\policies\trustpolicyforacct123456789012.json # Attach the permissions policy (in this example a managed policy) to the role to specify what it is allowed to do. $ aws iam attach-role-policy --role-name Test-UserAccess-Role --policy-arn arn:aws:iam::123456789012:policy/PolicyForRole
Importante

Ricordare che questa è solo la prima metà della configurazione obbligatoria. È inoltre necessario fornire a singoli utenti nell'account affidabile le autorizzazioni per passare al ruolo. Per ulteriori informazioni su questa fase, consultare Concessione di autorizzazioni agli utenti per il cambio di ruoli.

Dopo aver creato il ruolo e avergli concesso le autorizzazioni per eseguire AWS attività o accedere alle AWS risorse, qualsiasi utente dell'123456789012account può assumere il ruolo. Per ulteriori informazioni, consulta Passaggio a un ruolo IAM (AWS CLI).

Creazione di un ruolo IAM (AWS API)

La creazione di un ruolo dall' AWS API prevede diversi passaggi. Quando si usa la console per creare un ruolo, molti dei passaggi vengono eseguiti automaticamente, ma con l'API ogni passaggio deve essere eseguito esplicitamente dall'utente. È necessario creare il ruolo e quindi assegnargli una policy di autorizzazione. Puoi anche scegliere di impostare il limite delle autorizzazioni per il ruolo.

Creare un ruolo nel codice (AWS API)
  1. Crea un ruolo: CreateRole

    Per la policy di affidabilità del ruolo, è possibile specificare una posizione del file.

  2. Allega una politica di autorizzazione gestita al ruolo: AttachRolePolicy

    oppure

    Crea una politica di autorizzazione in linea per il ruolo: PutRolePolicy

    Importante

    Ricordare che questa è solo la prima metà della configurazione obbligatoria. È inoltre necessario fornire a singoli utenti nell'account affidabile le autorizzazioni per passare al ruolo. Per ulteriori informazioni su questa fase, consultare Concessione di autorizzazioni agli utenti per il cambio di ruoli.

  3. (Facoltativo) Aggiungi attributi personalizzati all'utente allegando tag: TagRole

    Per ulteriori informazioni, consulta Gestione dei tag sugli utenti IAM (AWS CLI o AWS API).

  4. (Facoltativo) Imposta il limite delle autorizzazioni per il ruolo: PutRolePermissionsBoundary

    Il limite delle autorizzazioni controlla il numero massimo di autorizzazioni che è possibile concedere a un ruolo. I limiti delle autorizzazioni sono una funzionalità avanzata. AWS

Dopo aver creato il ruolo e avergli concesso le autorizzazioni per eseguire AWS attività o accedere alle AWS risorse, è necessario concedere le autorizzazioni agli utenti dell'account per consentire loro di assumere il ruolo. Per ulteriori informazioni sull'assunzione di un ruolo, consulta Passaggio a un ruolo IAM (AWS API).

Creazione di un ruolo IAM (AWS CloudFormation)

Per informazioni sulla creazione di un ruolo IAM in AWS CloudFormation, consulta il riferimento alle risorse e alle proprietà e gli esempi nella Guida per l'AWS CloudFormation utente.

Per ulteriori informazioni sui modelli IAM in AWS CloudFormation, consulta gli snippet di AWS Identity and Access Management modello nella Guida per l'AWS CloudFormation utente.