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

Creare un ruolo per delegare le autorizzazioni a un utente IAM

Puoi utilizzare IAM i ruoli per delegare l'accesso alle tue AWS risorse. Con IAM i ruoli, puoi stabilire relazioni di fiducia tra il tuo account affidabile e altri account AWS fidati. 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 trust, un IAM utente o un'applicazione dell'account affidabile può utilizzare l'AssumeRoleAPIoperazione AWS Security Token Service (AWS STS). Questa operazione fornisce credenziali di sicurezza temporanee che consentono l'accesso alle AWS risorse dell'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 Accesso a Account AWS proprietà di 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 Creare un ruolo per delegare le autorizzazioni a un servizio AWS.

Creazione di un ruolo IAM (Console)

Puoi usare il AWS Management Console per creare un ruolo che un IAM utente può assumere. Ad esempio, si supponga 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 a AWS Management Console e apri la IAM console 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 ad assumere questo ruolo a qualsiasi IAM utente dell'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 politica deve specificare che il ARN ruolo è ilResource.

  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 Accesso a Account AWS proprietà di terzi.

    Importante

    La scelta di questa opzione limita l'accesso al ruolo solo tramite AWS CLI, Tools for Windows PowerShell o. AWS API 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 l'apposito comando. SDK Per ulteriori informazioni e uno script di esempio, consulta Come abilitare l'accesso da più account a AWS Management Console nel blog sulla AWS sicurezza.

  6. Se desideri limitare il ruolo agli utenti che accedono con l'autenticazione a più fattori (MFA), seleziona Richiedi. MFA Ciò aggiunge una condizione alla politica di fiducia del ruolo che verifica la presenza di un MFA accesso. Un utente che desidera assumere il ruolo deve accedere con una password monouso temporanea da un dispositivo configuratoMFA. Gli utenti senza MFA autenticazione non possono assumere il ruolo. Per ulteriori informazioni suMFA, vedere AWS Autenticazione a più fattori in IAM

  7. Scegli Next (Successivo).

  8. IAMinclude 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. Scegli Next (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 unaARN, 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 inIAM, consultaTagging 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 Concedere a un utente le autorizzazioni per cambiare ruolo.

Creazione di un IAM ruolo (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 esplicitamente ogni passaggio da soli. È 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 della AWS riga di comando.

In questo esempio, è necessario includere la seguente policy di attendibilità nel primo comando al momento della creazione del ruolo. Questa politica di attendibilità consente agli utenti dell'123456789012account di assumere il ruolo utilizzando l'AssumeRoleoperazione, ma solo se l'utente fornisce MFA l'autenticazione utilizzando i TokenCode parametri SerialNumber and. Per ulteriori informazioni suMFA, vedereAWS Autenticazione a più fattori in IAM.

{ "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'Principalelemento contiene il codice ARN per un IAM ruolo o un utente specifico, questo ARN viene trasformato in un ID principale univoco quando la policy viene salvata. Ciò aiuta a mitigare il rischio che qualcuno aumenti le proprie autorizzazioni rimuovendo e ricreando il ruolo o l'utente. Normalmente questo ID non viene visualizzato nella console perché avviene anche una trasformazione inversa, al momento in ARN cui viene visualizzata la politica di attendibilità. Tuttavia, se elimini il ruolo o l'utente, l'ID principale viene visualizzato nella console perché non è più AWS possibile mapparlo a unARN. Pertanto, se si elimina e si ricrea un utente o un ruolo a cui si fa riferimento in un Principal elemento di una politica di fiducia, è necessario modificare il ruolo per sostituire il. 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 precedente politica di autorizzazione come politica gestita dai clienti nel tuo Account AWS 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 Concedere a un utente le autorizzazioni per cambiare ruolo.

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 Passa a un IAM ruolo (AWS CLI).

Creazione di un IAM ruolo ()AWS API

La creazione di un ruolo da AWS API richiede più passaggi. Quando si utilizza la console per creare un ruolo, molti passaggi vengono eseguiti automaticamente, ma con la console API è necessario eseguire esplicitamente ogni passaggio da soli. È 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 in code ()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 Concedere a un utente le autorizzazioni per cambiare ruolo.

  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 Passa a un IAM ruolo (AWS API).

Creazione di un IAM ruolo ()AWS CloudFormation

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

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