Come posso configurare l'accesso tra più account da Amazon QuickSight a un bucket Amazon S3 in un altro account?
Desidero utilizzare dati da un bucket Amazon Simple Storage Service (Amazon S3) in un altro account per creare un set di dati in Amazon QuickSight.
Breve descrizione
Completa i seguenti passaggi per creare l'accesso multi-account da Amazon QuickSight (Account A) a un bucket Amazon S3 crittografato in un altro account (Account B):
- Aggiorna la policy del bucket S3 nell'Account B (dove risiede il tuo bucket S3).
- Aggiungi il bucket S3 come risorsa a cui può accedere il ruolo di servizio QuickSight (Account A).
- Consenti al ruolo di servizio QuickSight di accedere alla chiave Servizio AWS di gestione delle chiavi (AWS KMS) per il bucket S3.
Nota: questo articolo presuppone che il bucket S3 sia crittografato. È anche consigliabile crittografare il bucket S3 con una chiave AWS KMS. Per ulteriori informazioni su come attivare la crittografia predefinita per Amazon S3, consulta Configuring default encryption.
Risoluzione
Aggiorna la policy del tuo bucket S3 nell'Account B
Per configurare l'accesso multi-account da QuickSight ad Amazon S3, completa i seguenti passaggi:
-
Aggiorna la policy del bucket del tuo bucket S3 nell'Account B. Ad esempio:
{ "Version": "2012-10-17", "Id": "BucketPolicy", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::<Account A>:role/service-role/aws-quicksight-service-role-v0" }, "Action": [ "s3:ListBucket", "s3:GetObject", "s3:GetObjectVersion" ], "Resource": [ "arn:aws:s3:::cross-account-qstest-bucket", "arn:aws:s3:::cross-account-qstest-bucket/*" ] } ] }
Nota: se il ruolo aws-quicksight-s3-consumers-role-v0 esiste nell'Account A, assicurati piuttosto di utilizzare questo ruolo. Sostituisci aws-quicksight-service-role-v0 con aws-quicksight-s3-consumers-role-v0 per evitare problemi di connessione con Amazon S3.
-
Aggiungi il ruolo di servizio QuickSight dall'Account A all'elenco di utenti che possono accedere alla chiave AWS KMS del bucket S3:
aws kms create-grant --key-id aws_kms_key_arn --grantee-principal quickSight_role_arn --operations Decrypt
Nota: sostituisci aws_kms_key_arn con l'ARN della tua chiave AWS KMS e quicksight_role_arn con l'ARN del tuo ruolo QuickSight.
Per ottenere l’ARN della tua chiave AWS KMS:
- Apri la console Amazon S3.
- Vai al bucket S3 che contiene il tuo file di dati.
- Scegli la scheda Proprietà. L’ARN della chiave AWS KMS si trova in Crittografia predefinita.
Per ottenere l’ARN del tuo ruolo di servizio QuickSight:
- Apri la console AWS Identity Access Management (IAM) nell'Account A.
- Dal pannello di navigazione, scegli Ruoli.
- Cerca aws-quicksight-service-role.
- Seleziona il tuo ruolo di servizio QuickSight e copia il relativo ARN.
Nota: se il ruolo aws-quicksight-s3-consumers-role-v0 esiste nell'account A, assicurati piuttosto di utilizzare questo ruolo. Altrimenti, potresti ricevere un messaggio di errore quando provi a connetterti ad Amazon S3.
Aggiungi il bucket S3 come risorsa a cui può accedere il ruolo del servizio QuickSight
Per consentire al ruolo del servizio QuickSight di accedere al bucket S3 nell'Account B, completa i seguenti passaggi:
- Apri la tua console Amazon QuickSight.
- Scegli Gestisci QuickSight.
- Scegli Sicurezza e autorizzazioni.
- Scegli Aggiungi o rimuovi.
- Scegli Dettagli.
- Scegli Seleziona bucket S3.
- Scegli i bucket S3 a cui puoi accedere tramite la scheda AWS per verificare che il tuo bucket S3 sia elencato per l'accesso a QuickSight.
- (Facoltativo) Se il tuo bucket S3 non è presente nell'elenco, aggiungi il tuo bucket in Usa un bucket diverso.
- Scegli Fine.
Consenti al ruolo del servizio QuickSight di accedere alla chiave AWS KMS per il bucket S3
Aggiungi la seguente policy IAM in linea al ruolo del servizio QuickSight nell'account A:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "ExampleStmt3", "Effect": "Allow", "Action": [ "kms:Decrypt" ], "Resource": ""arn:aws:kms:us-east-1:<account ID of your S3 bucket>:key/<KEYID>" } ] }
Nota: la policy in linea precedente consente al ruolo del servizio QuickSight di accedere alla tua chiave AWS KMS nell'Account B. Sostituisci ExampleStmt3 con l’ID della dichiarazione.
Importante: se il ruolo aws-quicksight-s3-consumers-role-v0 esiste nell'account A, devi allegare la policy AWS KMS al ruolo. La policy AWS KMS decrittografa i dati nel tuo bucket S3. Se invece alleghi la policy del ruolo aggiornata al tuo ruolo del servizio QuickSight, potresti riscontrare un errore di autorizzazione. Per informazioni su come risolvere l'errore di autorizzazione, consulta Come risolvere gli errori di autorizzazione delle risorse AWS in Amazon QuickSight
Considerazioni aggiuntive
Quando configuri l'accesso multi-account da QuickSight a un bucket S3 in un altro account, considera quanto segue:
- Controlla le assegnazioni della policy IAM nel tuo account QuickSight. Le policy del ruolo IAM devono concedere al ruolo di servizio QuickSight l'accesso al bucket S3. Per ulteriori informazioni, consulta Setting granular access to AWS services through IAM.
- Usa il file manifesto per connetterti al bucket S3 e crea un set di dati utilizzando i file S3. Assicurati di utilizzare un formato supportato per il file manifesto S3.
Informazioni correlate
Non riesco a connettermi ad Amazon S3
Contenuto pertinente
- AWS UFFICIALEAggiornata un anno fa
- AWS UFFICIALEAggiornata 9 mesi fa
- AWS UFFICIALEAggiornata 2 anni fa
- AWS UFFICIALEAggiornata 8 mesi fa