Associazione dei IAM ruoli ai cluster - Amazon Redshift

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

Associazione dei IAM ruoli ai cluster

Dopo aver creato un IAM ruolo che autorizza Amazon Redshift ad accedere ad AWS altri servizi per te, devi associare quel ruolo a un cluster Amazon Redshift. È necessario eseguire questa azione prima di poter utilizzare il ruolo per caricare o scaricare i dati.

Autorizzazioni necessarie per associare un ruolo a un cluster IAM

Per associare un IAM ruolo a un cluster, un utente deve disporre dell'iam:PassRoleautorizzazione per quel IAM ruolo. Questa autorizzazione consente a un amministratore di limitare IAM i ruoli che un utente può associare ai cluster Amazon Redshift. Come best practice, consigliamo di allegare politiche di autorizzazione a un IAM ruolo e quindi di assegnarlo a utenti e gruppi in base alle esigenze. Per ulteriori informazioni, consulta Identity and access management in Amazon Redshift.

L'esempio seguente mostra una IAM politica che può essere allegata a un utente che consente all'utente di eseguire le seguenti azioni:

  • Ottieni i dettagli per tutti i cluster Amazon Redshift di proprietà dell'account dell'utente.

  • Associa uno qualsiasi dei tre IAM ruoli a uno dei due cluster Amazon Redshift.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "redshift:DescribeClusters", "Resource": "*" }, { "Effect": "Allow", "Action": [ "redshift:ModifyClusterIamRoles", "redshift:CreateCluster" ], "Resource": [ "arn:aws:redshift:us-east-1:123456789012:cluster:my-redshift-cluster", "arn:aws:redshift:us-east-1:123456789012:cluster:my-second-redshift-cluster" ] }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": [ "arn:aws:iam::123456789012:role/MyRedshiftRole", "arn:aws:iam::123456789012:role/SecondRedshiftRole", "arn:aws:iam::123456789012:role/ThirdRedshiftRole" ] } ] }

Dopo aver ottenuto le autorizzazioni appropriate, un utente può associare un IAM ruolo a un cluster Amazon Redshift. Il IAM ruolo è quindi pronto per l'uso con il UNLOAD comando COPY o o altri comandi Amazon Redshift.

Per ulteriori informazioni sulle IAM politiche, consulta Panoramica delle IAM politiche nella Guida per l'IAMutente.

Gestione dell'associazione dei IAM ruoli con un cluster

Puoi associare un IAM ruolo a un cluster Amazon Redshift quando crei il cluster. Oppure puoi modificare un cluster esistente e aggiungere o rimuovere una o più associazioni di IAM ruoli.

Ricorda quanto segue:

  • Il numero massimo di IAM ruoli che è possibile associare è soggetto a una quota.

  • Un IAM ruolo può essere associato a più cluster Amazon Redshift.

  • Un IAM ruolo può essere associato a un cluster Amazon Redshift solo se sia il IAM ruolo che il cluster sono di proprietà dello stesso AWS account.

Puoi gestire le associazioni di IAM ruoli per un cluster con la console utilizzando la seguente procedura.

Per gestire le associazioni di IAM ruoli
  1. Accedi a AWS Management Console e apri la console Amazon Redshift all'indirizzo. https://console.aws.amazon.com/redshiftv2/

  2. Dal menu di navigazione, scegliere Clusters (Cluster), quindi scegliere il cluster da aggiornare.

  3. Per Azioni, scegli Gestisci IAM ruoli per visualizzare l'elenco corrente dei IAM ruoli associati al cluster.

  4. Nella pagina Gestisci IAM ruoli, scegli i IAM ruoli disponibili da aggiungere, quindi scegli Aggiungi IAM ruolo.

  5. Scegli Save (Salva) per salvare le modifiche.

È possibile gestire le associazioni di IAM ruoli per un cluster AWS CLI utilizzando i seguenti approcci.

Per associare un IAM ruolo a un cluster al momento della creazione del cluster, specifica l'Amazon Resource Name (ARN) del IAM ruolo per il --iam-role-arns parametro del create-cluster comando. Il numero massimo di IAM ruoli che puoi aggiungere quando chiami il create-cluster comando è soggetto a una quota.

L'associazione e la dissociazione IAM dei ruoli con i cluster Amazon Redshift è un processo asincrono. Puoi ottenere lo stato di tutte IAM le associazioni di cluster di ruoli chiamando il comando. describe-clusters

L'esempio seguente associa due IAM ruoli al cluster appena creato denominatomy-redshift-cluster.

aws redshift create-cluster \ --cluster-identifier "my-redshift-cluster" \ --node-type "ra3.4xlarge" \ --number-of-nodes 16 \ --iam-role-arns "arn:aws:iam::123456789012:role/RedshiftCopyUnload" \ "arn:aws:iam::123456789012:role/SecondRedshiftRole"

Per associare un IAM ruolo a un cluster Amazon Redshift esistente, specifica l'Amazon Resource Name (ARN) del IAM ruolo per il --add-iam-roles parametro del modify-cluster-iam-roles comando. Il numero massimo di IAM ruoli che puoi aggiungere quando chiami il modify-cluster-iam-roles comando è soggetto a una quota.

L'esempio seguente associa un IAM ruolo a un cluster esistente denominatomy-redshift-cluster.

aws redshift modify-cluster-iam-roles \ --cluster-identifier "my-redshift-cluster" \ --add-iam-roles "arn:aws:iam::123456789012:role/RedshiftCopyUnload"

Per dissociare un IAM ruolo da un cluster, specificate il ARN IAM ruolo per il --remove-iam-roles parametro del modify-cluster-iam-roles comando. modify-cluster-iam-roles Il numero massimo di IAM ruoli che è possibile rimuovere quando si chiama il modify-cluster-iam-roles comando è soggetto a una quota.

L'esempio seguente rimuove l'associazione per un IAM ruolo per l'123456789012 AWS account da un cluster denominatomy-redshift-cluster.

aws redshift modify-cluster-iam-roles \ --cluster-identifier "my-redshift-cluster" \ --remove-iam-roles "arn:aws:iam::123456789012:role/RedshiftCopyUnload"

Elencare le associazioni di IAM ruoli per un cluster utilizzando il AWS CLI

Per elencare tutti i IAM ruoli associati a un cluster Amazon Redshift e lo stato dell'associazione dei IAM ruoli, chiama il describe-clusters comando. Il ARN valore per ogni IAM ruolo associato al cluster viene restituito nell'IamRoleselenco, come mostrato nell'output di esempio seguente.

I ruoli che sono stati associati al cluster hanno uno stato in-sync. I ruoli di cui è in corso l'associazione al cluster hanno uno stato adding. I ruoli di cui è in corso l'eliminazione dell'associazione al cluster hanno uno stato removing.

{ "Clusters": [ { "ClusterIdentifier": "my-redshift-cluster", "NodeType": "ra3.4xlarge", "NumberOfNodes": 16, "IamRoles": [ { "IamRoleArn": "arn:aws:iam::123456789012:role/MyRedshiftRole", "IamRoleApplyStatus": "in-sync" }, { "IamRoleArn": "arn:aws:iam::123456789012:role/SecondRedshiftRole", "IamRoleApplyStatus": "in-sync" } ], ... }, { "ClusterIdentifier": "my-second-redshift-cluster", "NodeType": "ra3.4xlarge", "NumberOfNodes": 10, "IamRoles": [ { "IamRoleArn": "arn:aws:iam::123456789012:role/MyRedshiftRole", "IamRoleApplyStatus": "in-sync" }, { "IamRoleArn": "arn:aws:iam::123456789012:role/SecondRedshiftRole", "IamRoleApplyStatus": "in-sync" }, { "IamRoleArn": "arn:aws:iam::123456789012:role/ThirdRedshiftRole", "IamRoleApplyStatus": "in-sync" } ], ... } ] }

Per ulteriori informazioni sull'utilizzo di AWS CLI, vedere la Guida AWS CLI per l'utente.