View a markdown version of this page

Configuration des destinations S3 pour les requêtes planifiées - CloudWatch Journaux Amazon

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Configuration des destinations S3 pour les requêtes planifiées

Configurez Amazon S3 comme destination pour stocker les résultats de vos requêtes planifiées sous forme de fichiers JSON pour une conservation et une analyse à long terme.

Lorsque vous utilisez Amazon S3 comme destination, les résultats des requêtes sont stockés sous forme de fichiers JSON dans le compartiment et le préfixe spécifiés. Cette option est idéale pour archiver les résultats, effectuer des analyses par lots ou intégrer d'autres AWS services traitant des données S3.

Vous pouvez envoyer les résultats de la requête à un compartiment Amazon S3 du même AWS compte que la requête planifiée ou à un compartiment d'un AWS compte différent. Vous pouvez également éventuellement chiffrer les résultats des requêtes à l'aide d'une AWS KMS clé gérée par le client (SSE-KMS).

Diffusion des résultats vers un compartiment Amazon S3 du même compte

Lorsque le compartiment Amazon S3 de destination se trouve dans le même AWS compte que la requête planifiée, vous pouvez parcourir et sélectionner le compartiment directement depuis la console.

Pour configurer une destination Amazon S3 pour le même compte (console)
  1. Dans la section Publier les résultats de la requête vers S3, pour le compartiment S3, sélectionnez Ce compte.

  2. Pour l'URI Amazon S3, entrez le compartiment Amazon S3 et le préfixe dans lesquels les résultats seront stockés (par exemples3://my-bucket/query-results/), ou choisissez Parcourir Amazon S3 pour naviguer et sélectionner un emplacement Amazon S3 existant.

  3. (Facultatif) Pour chiffrer les résultats à l'aide d'une AWS KMS clé gérée par le client, entrez l'ARN de la AWS KMS clé dans le champ ARN de la clé KMS. La clé doit se trouver dans la même AWS région que le compartiment Amazon S3 de destination. Si vous ne spécifiez pas de AWS KMS clé, les paramètres de chiffrement par défaut du bucket s'appliquent.

  4. Dans la section Rôle IAM pour la publication des résultats des requêtes sur Amazon S3, choisissez Auto-create un nouveau rôle avec des autorisations par défaut pour configurer automatiquement les autorisations requises, ou choisissez Utiliser un rôle existant pour sélectionner un rôle IAM existant avec les politiques requises.

Le rôle IAM de livraison de destination nécessite les autorisations suivantes :

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

Diffusion des résultats vers un compartiment Amazon S3 d'un autre compte

Vous pouvez envoyer les résultats de requêtes planifiés à un compartiment Amazon S3 d'un autre AWS compte. Lorsque vous utilisez un compartiment multicompte, vous devez fournir l'URI Amazon S3 et l'ID de compte du compte propriétaire du compartiment.

Pour configurer une destination Amazon S3 multicompte (console)
  1. Dans la section Publier les résultats de la requête vers S3, pour le compartiment S3, sélectionnez Un autre compte et saisissez l'ID de compte du compte propriétaire du compartiment en tant qu'entrée.

  2. Pour l'URI Amazon S3, entrez l'URI Amazon S3 complet du compartiment de destination et le préfixe de l'autre compte (par exemple,s3://cross-account-bucket/query-results/).

  3. (Facultatif) Pour chiffrer les résultats à l'aide d'une AWS KMS clé gérée par le client, entrez l'ARN de la AWS KMS clé dans le champ ARN de la clé KMS. La clé doit se trouver dans la même AWS région que le compartiment Amazon S3 de destination.

  4. Dans la section Rôle IAM pour la publication des résultats des requêtes sur Amazon S3, choisissez Auto-create un nouveau rôle avec des autorisations par défaut pour configurer automatiquement les autorisations requises, ou choisissez Utiliser un rôle existant pour sélectionner un rôle IAM existant avec les politiques requises.

Cross-account la livraison nécessite des autorisations des deux côtés. Le rôle IAM de livraison de destination dans le compte source nécessite les autorisations suivantes :

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

La politique de compartiment Amazon S3 du compte de destination doit accorder au rôle IAM du compte source l'autorisation d'écrire des objets :

{ "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/*" } ] }

Chiffrement des résultats avec un client géré AWS KMS clé

Vous pouvez éventuellement spécifier une AWS KMS clé gérée par le client à l'aide SSE-KMS de laquelle chiffrer les résultats des requêtes envoyés à Amazon S3. La AWS KMS clé peut se trouver dans le même compte que la requête planifiée ou dans un compte différent.

Lorsque vous spécifiez une AWS KMS clé, la requête planifiée utilise cette clé pour chiffrer les résultats via SSE-KMS. Lorsque vous ne spécifiez pas de AWS KMS clé, les paramètres de chiffrement par défaut du bucket s'appliquent. Si le compartiment est configuré avec le SSE-KMS chiffrement par défaut à l'aide d'une clé gérée par le client, le rôle IAM de livraison de destination doit toujours disposer d'une kms:GenerateDataKey autorisation sur cette clé.

Le rôle IAM de livraison de destination nécessite une kms:GenerateDataKey autorisation sur la AWS KMS clé. L'exemple suivant montre les autorisations requises pour une destination Amazon S3 avec une AWS KMS clé gérée par le client :

{ "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*" } } } ] }

Lorsque la AWS KMS clé se trouve dans un compte différent de celui du rôle IAM de distribution de destination, la politique de AWS KMS clé du compte propriétaire de la clé doit accorder explicitement l'accès au rôle :

{ "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*" } } } ] }
Note

Lorsque la AWS KMS clé et le rôle IAM de livraison de destination se trouvent dans le même compte, la politique d'identité IAM suffit à elle seule si la politique de AWS KMS clé inclut l'instruction racine « Activer les politiques IAM » par défaut. Une attribution de stratégie de AWS KMS clé explicite n'est requise que si la politique de clé ne délègue pas à IAM.

Le rôle IAM pour publier les résultats des requêtes sur Amazon S3 doit être configuré séparément du rôle IAM pour l'exécution planifiée des requêtes. Cette séparation permet un contrôle d'accès précis, dans lequel le rôle d'exécution peut exécuter des requêtes tandis que le rôle Amazon S3 gère spécifiquement la livraison des résultats. Les deux rôles doivent inclure une politique de confiance qui permet au service CloudWatch Logs (logs.amazonaws.com) d'assumer le rôle.