View a markdown version of this page

Configurazione delle destinazioni S3 per le query pianificate - CloudWatch Registri Amazon

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

Configurazione delle destinazioni S3 per le query pianificate

Configura Amazon S3 come destinazione per archiviare i risultati delle query pianificate come file JSON per la conservazione e l'analisi a lungo termine.

Quando si utilizza Amazon S3 come destinazione, i risultati delle query vengono archiviati come file JSON nel bucket e nel prefisso specificati. Questa opzione è ideale per l'archiviazione dei risultati, l'esecuzione di analisi in batch o l'integrazione con altri AWS servizi che elaborano i dati S3.

Puoi fornire i risultati delle query a un bucket Amazon S3 nello stesso AWS account della query pianificata o a un bucket in un account diverso. AWS Opzionalmente, puoi anche crittografare i risultati delle query utilizzando una chiave gestita AWS KMS dal cliente (SSE-KMS).

Fornire risultati a un bucket Amazon S3 nello stesso account

Quando il bucket Amazon S3 di destinazione si trova nello stesso AWS account della query pianificata, puoi sfogliare e selezionare il bucket direttamente dalla console.

Per configurare una destinazione Amazon S3 con lo stesso account (console)
  1. Nella sezione Pubblica i risultati della query su S3, per il bucket S3, seleziona Questo account.

  2. Per l'URI di Amazon S3, inserisci il bucket Amazon S3 e il prefisso in cui verranno archiviati i risultati (ad esempios3://my-bucket/query-results/,) oppure scegli Browse Amazon S3 per navigare e selezionare una posizione Amazon S3 esistente.

  3. (Facoltativo) Per crittografare i risultati con una AWS KMS chiave gestita dal cliente, inserisci l'ARN della chiave nel campo ARN AWS KMS della chiave KMS. La chiave deve trovarsi nella stessa AWS regione del bucket Amazon S3 di destinazione. Se non specifichi una AWS KMS chiave, vengono applicate le impostazioni di crittografia predefinite del bucket.

  4. Nella sezione Ruolo IAM per la pubblicazione dei risultati delle query su Amazon S3, scegli Crea automaticamente un nuovo ruolo con autorizzazioni predefinite per configurare automaticamente le autorizzazioni richieste oppure scegli Usa un ruolo esistente per selezionare un ruolo IAM esistente con le policy richieste.

Il ruolo IAM di distribuzione della destinazione richiede le seguenti autorizzazioni:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:PutObject", "Resource": "arn:aws:s3:::my-bucket/prefix/*", "Condition": { "StringEquals": { "aws:ResourceAccount": "111122223333" } } } ] }

Fornire risultati a un bucket Amazon S3 in un altro account

Puoi fornire i risultati delle query pianificate a un bucket Amazon S3 in un account diverso. AWS Quando utilizzi un bucket con più account, devi fornire l'URI di Amazon S3 e l'ID account dell'account proprietario del bucket.

Per configurare una destinazione Amazon S3 (console) per più account
  1. Nella sezione Pubblica i risultati della query su S3, per il bucket S3, seleziona Altro account e inserisci come input l'ID account dell'account proprietario del bucket.

  2. Per l'URI Amazon S3, inserisci l'URI Amazon S3 completo del bucket di destinazione e il prefisso nell'altro account (ad esempio,). s3://cross-account-bucket/query-results/

  3. (Facoltativo) Per crittografare i risultati con una AWS KMS chiave gestita dal cliente, inserisci l'ARN della chiave nel campo ARN AWS KMS della chiave KMS. La chiave deve trovarsi nella stessa AWS regione del bucket Amazon S3 di destinazione.

  4. Nella sezione Ruolo IAM per la pubblicazione dei risultati delle query su Amazon S3, scegli Crea automaticamente un nuovo ruolo con autorizzazioni predefinite per configurare automaticamente le autorizzazioni richieste oppure scegli Usa un ruolo esistente per selezionare un ruolo IAM esistente con le policy richieste.

La distribuzione tra account richiede autorizzazioni su entrambi i lati. Il ruolo IAM di distribuzione della destinazione nell'account di origine richiede le seguenti autorizzazioni:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:PutObject", "Resource": "arn:aws:s3:::cross-account-bucket/prefix/*", "Condition": { "StringEquals": { "aws:ResourceAccount": "123456789012" } } } ] }

La policy del bucket di Amazon S3 nell'account di destinazione deve concedere al ruolo IAM dell'account di origine l'autorizzazione a scrivere oggetti:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowScheduledQueryRolePutObject", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/my-s3-delivery-role" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::cross-account-bucket/prefix/*" } ] }

Crittografia dei risultati con una chiave gestita dal cliente AWS KMS

Facoltativamente, puoi specificare una AWS KMS chiave gestita dal cliente per crittografare i risultati delle query forniti ad Amazon S3 utilizzando SSE-KMS. La AWS KMS chiave può trovarsi nello stesso account della query pianificata o in un altro account.

Quando si specifica una AWS KMS chiave, la query pianificata utilizza tale chiave per crittografare i risultati tramite SSE-KMS. Quando non si specifica una AWS KMS chiave, vengono applicate le impostazioni di crittografia predefinite del bucket. Se il bucket è configurato con la crittografia SSE-KMS predefinita utilizzando una chiave gestita dal cliente, il ruolo IAM di distribuzione della destinazione deve ancora disporre kms:GenerateDataKey dell'autorizzazione su quella chiave.

Il ruolo IAM per la consegna della destinazione richiede l'kms:GenerateDataKeyautorizzazione sulla chiave. AWS KMS L'esempio seguente mostra le autorizzazioni richieste per una destinazione Amazon S3 con una chiave gestita dal cliente AWS KMS :

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:PutObject", "Resource": "arn:aws:s3:::my-bucket/prefix/*", "Condition": { "StringEquals": { "aws:ResourceAccount": "111122223333" } } }, { "Effect": "Allow", "Action": "kms:GenerateDataKey", "Resource": "arn:aws:kms:us-east-1:111122223333:key/key-id", "Condition": { "StringEquals": { "kms:ViaService": "s3.us-east-1.amazonaws.com" }, "StringLike": { "kms:EncryptionContext:aws:s3:arn": "arn:aws:s3:::my-bucket*" } } } ] }

Quando la AWS KMS chiave si trova in un account diverso dal ruolo IAM di consegna della destinazione, la policy AWS KMS chiave dell'account proprietario della chiave deve concedere esplicitamente l'accesso al ruolo:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowScheduledQueryRoleToEncrypt", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/my-s3-delivery-role" }, "Action": "kms:GenerateDataKey", "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": "s3.us-east-1.amazonaws.com" }, "StringLike": { "kms:EncryptionContext:aws:s3:arn": "arn:aws:s3:::my-bucket*" } } } ] }
Nota

Quando la AWS KMS chiave e il ruolo IAM di consegna della destinazione si trovano nello stesso account, la sola policy di identità IAM è sufficiente se la policy AWS KMS chiave include l'istruzione radice predefinita «Enable IAM policies». Una concessione esplicita della policy AWS KMS chiave è richiesta solo se la policy chiave non delega a IAM.

Il ruolo IAM per la pubblicazione dei risultati delle query su Amazon S3 deve essere configurato separatamente dal ruolo IAM per l'esecuzione pianificata delle query. Questa separazione consente un controllo granulare degli accessi, in cui il ruolo di esecuzione può eseguire le query mentre il ruolo Amazon S3 gestisce specificamente la consegna dei risultati. Entrambi i ruoli devono includere una politica di fiducia che consenta al servizio CloudWatch Logs () logs.amazonaws.com di assumere il ruolo.