Creazione di un IAM ruolo predefinito per Amazon Redshift - 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à.

Creazione di un IAM ruolo predefinito per Amazon Redshift

Quando IAM crei ruoli tramite la console Redshift, Amazon Redshift crea programmaticamente i ruoli nel Account AWS tuo account e li AWS allega automaticamente alle policy gestite esistenti. Questo approccio significa che puoi rimanere all'interno della console Redshift e non devi passare alla IAM console per la creazione di ruoli. Per un controllo più granulare delle autorizzazioni per un IAM ruolo esistente creato nella console Amazon Redshift, puoi allegare una policy gestita personalizzata al ruolo. IAM

IAMruoli creati nella console

Quando usi la console Amazon Redshift per creare IAM ruoli, Amazon Redshift tiene traccia di IAM tutti i ruoli creati tramite la console. Amazon Redshift preseleziona il IAM ruolo predefinito più recente per la creazione di tutti i nuovi cluster e il ripristino dei cluster dalle istantanee.

Puoi creare un IAM ruolo tramite la console che dispone di una policy con autorizzazioni per eseguire comandi. SQL Questi comandi includonoCOPY,UNLOAD, CREATE EXTERNALFUNCTION, CREATE EXTERNALTABLE, CREATE EXTERNAL SCHEMA CREATEMODEL, o CREATELIBRARY. Facoltativamente, puoi ottenere un controllo più granulare dell'accesso degli utenti alle tue AWS risorse creando e allegando politiche personalizzate al ruolo. IAM

Quando crei un IAM ruolo e lo imposti come predefinito per il cluster tramite console, non devi fornire l'Amazon Resource Name (ARN) del IAM ruolo per eseguire l'autenticazione e l'autorizzazione.

Al IAM ruolo che crei tramite la console per il cluster viene associata automaticamente la policy AmazonRedshiftAllCommandsFullAccess gestita. Questo IAM ruolo consente ad Amazon Redshift di copiare, scaricare, interrogare e analizzare i dati alla ricerca di AWS risorse nel tuo account. IAM La policy gestita fornisce l'accesso a COPYUNLOAD, CREATEEXTERNALFUNCTION, CREATEEXTERNALSCHEMACREATEMODEL, e CREATELIBRARYoperazioni. La policy concede inoltre le autorizzazioni per eseguire SELECT istruzioni per AWS servizi correlati, come Amazon S3, Amazon Logs, CloudWatch SageMaker Amazon e. AWS Glue

I CREATE LIBRARY comandi CREATE EXTERNALFUNCTION, CREATE EXTERNAL SCHEMA CREATEMODEL, e hanno una parola chiave. default Per questa parola chiave per questi comandi, Amazon Redshift utilizza il IAM ruolo impostato come predefinito e associato al cluster durante l'esecuzione del comando. Puoi eseguire il ROLE comando DEFAULTIAM_ _ per verificare il IAM ruolo predefinito corrente associato al cluster.

Per controllare i privilegi di accesso del IAM ruolo creato e impostato come predefinito per il tuo cluster Redshift, usa ASSUMEROLE il privilegio. Questo controllo di accesso si applica agli utenti e ai gruppi del database quando eseguono comandi come quelli elencati in precedenza. Dopo aver concesso il ASSUMEROLE privilegio a un utente o a un gruppo per il IAM ruolo, l'utente o il gruppo può assumere quel ruolo durante l'esecuzione di questi comandi. Utilizzando il ASSUMEROLE privilegio, è possibile concedere l'accesso ai comandi appropriati in base alle esigenze.

Utilizzando la console Amazon Redshift, puoi effettuare le seguenti operazioni:

Autorizzazioni della politica gestita AmazonRedshiftAllCommandsFullAccess

L'esempio seguente mostra le autorizzazioni nella politica AmazonRedshiftAllCommandsFullAccess gestita che consentono determinate azioni per il IAM ruolo impostato come predefinito per il cluster. Il IAM ruolo con le politiche di autorizzazione allegate autorizza ciò che un utente o un gruppo può e non può fare. Con queste autorizzazioni, puoi eseguire il COPY comando da Amazon S3, UNLOAD eseguire e utilizzare CREATE MODEL il comando.

{ "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetBucketAcl", "s3:GetBucketCors", "s3:GetEncryptionConfiguration", "s3:GetBucketLocation", "s3:ListBucket", "s3:ListAllMyBuckets", "s3:ListMultipartUploadParts", "s3:ListBucketMultipartUploads", "s3:PutObject", "s3:PutBucketAcl", "s3:PutBucketCors", "s3:DeleteObject", "s3:AbortMultipartUpload", "s3:CreateBucket" ], "Resource": [ "arn:aws:s3:::redshift-downloads", "arn:aws:s3:::redshift-downloads/*", "arn:aws:s3:::*redshift*", "arn:aws:s3:::*redshift*/*" ] }

L'esempio seguente mostra le autorizzazioni nella politica AmazonRedshiftAllCommandsFullAccess gestita che consentono determinate azioni per il IAM ruolo impostato come predefinito per il cluster. Il IAM ruolo con le politiche di autorizzazione allegate autorizza ciò che un utente o un gruppo può e non può fare. Con le seguenti autorizzazioni, è possibile eseguire il CREATE EXTERNAL FUNCTION comando.

{ "Action": [ "lambda:InvokeFunction" ], "Resource": "arn:aws:lambda:*:*:function:*redshift*" }

L'esempio seguente mostra le autorizzazioni nella politica AmazonRedshiftAllCommandsFullAccess gestita che consentono determinate azioni per il IAM ruolo impostato come predefinito per il cluster. Il IAM ruolo con le politiche di autorizzazione allegate autorizza ciò che un utente o un gruppo può e non può fare. Con le seguenti autorizzazioni, puoi eseguire i CREATE EXTERNAL TABLE comandi CREATE EXTERNAL SCHEMA and necessari per Amazon Redshift Spectrum.

{ "Effect": "Allow", "Action": [ "glue:CreateDatabase", "glue:DeleteDatabase", "glue:GetDatabase", "glue:GetDatabases", "glue:UpdateDatabase", "glue:CreateTable", "glue:DeleteTable", "glue:BatchDeleteTable", "glue:UpdateTable", "glue:GetTable", "glue:GetTables", "glue:BatchCreatePartition", "glue:CreatePartition", "glue:DeletePartition", "glue:BatchDeletePartition", "glue:UpdatePartition", "glue:GetPartition", "glue:GetPartitions", "glue:BatchGetPartition" ], "Resource": [ "arn:aws:glue:*:*:table/*redshift*/*", "arn:aws:glue:*:*:catalog", "arn:aws:glue:*:*:database/*redshift*" ] }

L'esempio seguente mostra le autorizzazioni nella politica AmazonRedshiftAllCommandsFullAccess gestita che consentono determinate azioni per il IAM ruolo impostato come predefinito per il cluster. Il IAM ruolo con le politiche di autorizzazione allegate autorizza ciò che un utente o un gruppo può e non può fare. Con le seguenti autorizzazioni, è possibile eseguire il CREATE EXTERNAL SCHEMA comando utilizzando query federate.

{ "Effect": "Allow", "Action": [ "secretsmanager:GetResourcePolicy", "secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret", "secretsmanager:ListSecretVersionIds" ], "Resource": [ "arn:aws:secretsmanager:*:*:secret:*Redshift*" ] }, { "Effect": "Allow", "Action": [ "secretsmanager:GetRandomPassword", "secretsmanager:ListSecrets" ], "Resource": "*", "Condition": { "StringEquals": { "secretsmanager:ResourceTag/Redshift": "true" } } },

Gestione dei IAM ruoli creati per un cluster utilizzando la console

Per creare, modificare e rimuovere IAM i ruoli creati dalla console Amazon Redshift, utilizza la sezione Clusters nella console.

Creare un IAM ruolo come impostazione predefinita

Sulla console, puoi creare un IAM ruolo per il tuo cluster a cui la AmazonRedshiftAllCommandsFullAccess policy è associata automaticamente. Il nuovo IAM ruolo che crei consente ad Amazon Redshift di copiare, caricare, interrogare e analizzare i dati dalle risorse Amazon presenti nel tuo IAM account.

È possibile impostare un solo IAM ruolo come predefinito per il cluster. Se si crea un altro IAM ruolo come predefinito del cluster quando un IAM ruolo esistente è attualmente assegnato come predefinito, il nuovo IAM ruolo sostituisce l'altro come predefinito.

Per creare un nuovo cluster e un set di IAM ruoli predefinito per il nuovo cluster
  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). Regione AWS Sono elencati i cluster del tuo account nella versione corrente. Nelle colonne dell'elenco è visualizzato un sottoinsieme delle proprietà di ciascun cluster.

  3. Per creare un cluster, scegli Create cluster (Crea cluster).

  4. Segui le istruzioni sulla pagina della console per inserire le proprietà della Cluster configuration (Configurazione del cluster). Per ulteriori informazioni su questa fase, consultare Creazione di un cluster.

  5. (Facoltativo) Scegliere Caricare dati campione per caricare il set di dati di esempio nel cluster Amazon Redshift per iniziare a utilizzare l'editor di query per interrogare i dati.

    Se è abilitata la protezione di un firewall, è necessario specificare una porta del database aperta che accetti connessioni in entrata.

  6. Segui le istruzioni sulla pagina della console per inserire le proprietà delle Database configurations (Configurazioni del database).

  7. In Autorizzazioni del cluster, da Gestisci IAM ruoli, scegli Crea IAM ruolo.

  8. Specificate un bucket Amazon S3 per il IAM ruolo a cui accedere scegliendo uno dei seguenti metodi:

    • Scegli Nessun bucket Amazon S3 aggiuntivo per creare il IAM ruolo senza specificare bucket Amazon S3 specifici.

    • Scegliere Qualsiasi bucket Amazon S3 per consentire agli utenti che hanno accesso al cluster Amazon Redshift di accedere anche a qualsiasi bucket Amazon S3 e ai relativi contenuti nel tuo Account AWS.

    • Scegli bucket Amazon S3 specifici per specificare uno o più bucket Amazon S3 a cui il IAM ruolo creato è autorizzato ad accedere. Scegli quindi uno o più bucket Amazon S3 dalla tabella.

  9. Scegli Crea IAM ruolo come predefinito. Amazon Redshift crea e imposta automaticamente il IAM ruolo come predefinito per il cluster.

  10. Per creare il cluster, scegli Create cluster (Crea cluster). Potrebbero essere necessari diversi minuti prima che il cluster sia pronto per l'utilizzo.

Rimuovere IAM i ruoli dal cluster

Puoi rimuovere uno o più IAM ruoli dal tuo cluster.

Per rimuovere IAM i ruoli dal cluster
  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). Regione AWS Sono elencati i cluster del tuo account nella versione corrente. Nelle colonne dell'elenco è visualizzato un sottoinsieme delle proprietà di ciascun cluster.

  3. Scegli il cluster da cui desideri rimuovere il IAM ruolo.

  4. In Autorizzazioni del cluster, scegli uno o più IAM ruoli che desideri rimuovere dal cluster.

  5. Da Gestisci IAM ruoli, scegli Rimuovi IAM ruoli.

Associazione dei IAM ruoli al cluster

Puoi associare uno o più IAM ruoli al tuo cluster.

Per associare IAM ruoli al cluster
  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). Regione AWS Sono elencati i cluster del tuo account nella versione corrente. Nelle colonne dell'elenco è visualizzato un sottoinsieme delle proprietà di ciascun cluster.

  3. Scegli il cluster a cui desideri associare IAM i ruoli.

  4. In Autorizzazioni del cluster, scegli uno o più IAM ruoli che desideri associare al cluster.

  5. Da Gestisci IAM ruoli, scegli Associa IAM ruoli.

  6. Scegli uno o più IAM ruoli da associare al tuo cluster.

  7. Scegli IAMRuoli associati.

Impostazione di un IAM ruolo come predefinito

Puoi impostare un IAM ruolo come predefinito per il tuo cluster.

Per impostare un IAM ruolo come predefinito per il cluster
  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). Regione AWS Sono elencati i cluster del tuo account nella versione corrente. Nelle colonne dell'elenco è visualizzato un sottoinsieme delle proprietà di ciascun cluster.

  3. Scegli il cluster per il quale desideri impostare un IAM ruolo predefinito.

  4. In Autorizzazioni cluster, da IAMRuoli associati, scegli un IAM ruolo che desideri impostare come predefinito per il cluster.

  5. In Impostazione predefinita, scegliere Rendi predefinito.

  6. Quando richiesto, scegli Imposta come predefinito per confermare l'impostazione del IAM ruolo specificato come predefinito.

Impostazione di un IAM ruolo non più predefinito per il cluster

È possibile impostare un IAM ruolo non più come predefinito per il cluster.

Per cancellare un IAM ruolo come predefinito per il tuo cluster
  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). Regione AWS Sono elencati i cluster del tuo account nella versione corrente. Nelle colonne dell'elenco è visualizzato un sottoinsieme delle proprietà di ciascun cluster.

  3. Scegli il cluster a cui desideri associare IAM i ruoli.

  4. In Autorizzazioni cluster, in IAMRuoli associati, scegli il IAM ruolo predefinito.

  5. In Impostazione predefinita, scegliere Annulla predefinito.

  6. Quando richiesto, scegli Cancella impostazioni predefinite per confermare la cancellazione del IAM ruolo specificato come predefinito.

Gestione dei IAM ruoli creati nel cluster utilizzando il AWS CLI

È possibile gestire IAM i ruoli creati nel cluster utilizzando AWS CLI.

Per creare un cluster Amazon Redshift con un IAM ruolo impostato come predefinito

Per creare un cluster Amazon Redshift con un IAM ruolo impostato come predefinito per il cluster, usa il aws redshift create-cluster AWS CLI comando.

Il AWS CLI comando seguente crea un cluster Amazon Redshift e il IAM ruolo denominato myrole1. Il AWS CLI comando imposta anche myrole1 come predefinito per il cluster.

aws redshift create-cluster \ --node-type dc2.large \ --number-of-nodes 2 \ --master-username adminuser \ --master-user-password TopSecret1 \ --cluster-identifier mycluster \ --iam-roles 'arn:aws:iam::012345678910:role/myrole1' 'arn:aws:iam::012345678910:role/myrole2' \ --default-iam-role-arn 'arn:aws:iam::012345678910:role/myrole1'

Il seguente frammento è un esempio della risposta.

{ "Cluster": { "ClusterIdentifier": "mycluster", "NodeType": "dc2.large", "MasterUsername": "adminuser", "DefaultIamRoleArn": "arn:aws:iam::012345678910:role/myrole1", "IamRoles": [ { "IamRoleArn": "arn:aws:iam::012345678910:role/myrole1", "ApplyStatus": "adding" }, { "IamRoleArn": "arn:aws:iam::012345678910:role/myrole2", "ApplyStatus": "adding" } ] ... } }

Per aggiungere uno o più IAM ruoli a un cluster Amazon Redshift

Per aggiungere uno o più IAM ruoli associati al cluster, usa il aws redshift modify-cluster-iam-roles AWS CLI comando.

Il AWS CLI comando seguente aggiunge myrole3 e myrole4 al cluster.

aws redshift modify-cluster-iam-roles \ --cluster-identifier mycluster \ --add-iam-roles 'arn:aws:iam::012345678910:role/myrole3' 'arn:aws:iam::012345678910:role/myrole4'

Il seguente frammento è un esempio della risposta.

{ "Cluster": { "ClusterIdentifier": "mycluster", "NodeType": "dc2.large", "MasterUsername": "adminuser", "DefaultIamRoleArn": "arn:aws:iam::012345678910:role/myrole1", "IamRoles": [ { "IamRoleArn": "arn:aws:iam::012345678910:role/myrole1", "ApplyStatus": "in-sync" }, { "IamRoleArn": "arn:aws:iam::012345678910:role/myrole2", "ApplyStatus": "in-sync" }, { "IamRoleArn": "arn:aws:iam::012345678910:role/myrole3", "ApplyStatus": "adding" }, { "IamRoleArn": "arn:aws:iam::012345678910:role/myrole4", "ApplyStatus": "adding" } ], ... } }

Per rimuovere uno o più IAM ruoli da un cluster Amazon Redshift

Per rimuovere uno o più IAM ruoli associati al cluster, usa il aws redshift modify-cluster-iam-roles AWS CLI comando.

Il AWS CLI comando seguente rimuove myrole3 e myrole4 dal cluster.

aws redshift modify-cluster-iam-roles \ --cluster-identifier mycluster \ --remove-iam-roles 'arn:aws:iam::012345678910:role/myrole3' 'arn:aws:iam::012345678910:role/myrole4'

Il seguente frammento è un esempio della risposta.

{ "Cluster": { "ClusterIdentifier": "mycluster", "NodeType": "dc2.large", "MasterUsername": "adminuser", "DefaultIamRoleArn": "arn:aws:iam::012345678910:role/myrole1", "IamRoles": [ { "IamRoleArn": "arn:aws:iam::012345678910:role/myrole1", "ApplyStatus": "in-sync" }, { "IamRoleArn": "arn:aws:iam::012345678910:role/myrole2", "ApplyStatus": "in-sync" }, { "IamRoleArn": "arn:aws:iam::012345678910:role/myrole3", "ApplyStatus": "removing" }, { "IamRoleArn": "arn:aws:iam::012345678910:role/myrole4", "ApplyStatus": "removing" } ], ... } }

Per impostare un IAM ruolo associato come predefinito per il cluster

Per impostare un IAM ruolo associato come predefinito per il cluster, usa il aws redshift modify-cluster-iam-roles AWS CLI comando.

Il AWS CLI comando seguente viene impostato myrole2 come predefinito per il cluster.

aws redshift modify-cluster-iam-roles \ --cluster-identifier mycluster \ --default-iam-role-arn 'arn:aws:iam::012345678910:role/myrole2'

Il seguente frammento è un esempio della risposta.

{ "Cluster": { "ClusterIdentifier": "mycluster", "NodeType": "dc2.large", "MasterUsername": "adminuser", "DefaultIamRoleArn": "arn:aws:iam::012345678910:role/myrole2", "IamRoles": [ { "IamRoleArn": "arn:aws:iam::012345678910:role/myrole1", "ApplyStatus": "in-sync" }, { "IamRoleArn": "arn:aws:iam::012345678910:role/myrole2", "ApplyStatus": "in-sync" } ], ... } }

Per impostare un IAM ruolo non associato come predefinito per il cluster

Per impostare un IAM ruolo non associato come predefinito per il cluster, usa il aws redshift modify-cluster-iam-roles AWS CLI comando.

Il AWS CLI comando seguente aggiunge myrole2 al cluster Amazon Redshift e lo imposta come predefinito per il cluster.

aws redshift modify-cluster-iam-roles \ --cluster-identifier mycluster \ --add-iam-roles 'arn:aws:iam::012345678910:role/myrole3' \ --default-iam-role-arn 'arn:aws:iam::012345678910:role/myrole3'

Il seguente frammento è un esempio della risposta.

{ "Cluster": { "ClusterIdentifier": "mycluster", "NodeType": "dc2.large", "MasterUsername": "adminuser", "DefaultIamRoleArn": "arn:aws:iam::012345678910:role/myrole3", "IamRoles": [ { "IamRoleArn": "arn:aws:iam::012345678910:role/myrole1", "ApplyStatus": "in-sync" }, { "IamRoleArn": "arn:aws:iam::012345678910:role/myrole2", "ApplyStatus": "in-sync" }, { "IamRoleArn": "arn:aws:iam::012345678910:role/myrole3", "ApplyStatus": "adding" } ], ... } }

Per ripristinare un cluster da un'istantanea e impostarne un IAM ruolo come predefinito

Quando ripristini il cluster da un'istantanea, puoi associare un IAM ruolo esistente o crearne uno nuovo e impostarlo come predefinito per il cluster.

Per ripristinare un cluster Amazon Redshift da uno snapshot e impostare un IAM ruolo come cluster predefinito, usa il comando. aws redshift restore-from-cluster-snapshot AWS CLI

Il AWS CLI comando seguente ripristina il cluster da uno snapshot e lo imposta myrole2 come predefinito per il cluster.

aws redshift restore-from-cluster-snapshot \ --cluster-identifier mycluster-clone \ --snapshot-identifier my-snapshot-id --iam-roles 'arn:aws:iam::012345678910:role/myrole1' 'arn:aws:iam::012345678910:role/myrole2' \ --default-iam-role-arn 'arn:aws:iam::012345678910:role/myrole1'

Il seguente frammento è un esempio della risposta.

{ "Cluster": { "ClusterIdentifier": "mycluster-clone", "NodeType": "dc2.large", "MasterUsername": "adminuser", "DefaultIamRoleArn": "arn:aws:iam::012345678910:role/myrole1", "IamRoles": [ { "IamRoleArn": "arn:aws:iam::012345678910:role/myrole1", "ApplyStatus": "adding" }, { "IamRoleArn": "arn:aws:iam::012345678910:role/myrole2", "ApplyStatus": "adding" } ], ... } }