

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.

# AWS Enregistrements de flux de Transit Gateway dans Amazon S3
<a name="flow-logs-s3"></a>

Les journaux de flux peuvent publier des données de journal de flux vers Amazon S3. 

Lors de la publication vers Amazon S3, les données de journal de flux sont publiées dans un compartiment Amazon S3 existant que vous indiquez. Les enregistrements de journaux de flux pour toutes les passerelles de transit surveillées sont publiés dans une série d'objets de fichier journal qui sont stockés dans le compartiment.

Des frais d'ingestion de données et d'archivage sont appliqués aux journaux vendus lorsque vous publiez des journaux de flux sur Amazon S3. Amazon CloudWatch Pour plus d'informations sur la CloudWatch tarification des journaux vendus, ouvrez [Amazon CloudWatch Pricing](https://aws.amazon.com/cloudwatch/pricing/), choisissez **Logs**, puis recherchez **Vended** Logs.

Pour créer un compartiment Amazon S3 à utiliser avec les journaux de flux, consultez [Create a bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html) dans le *Guide d’utilisation d’Amazon S3*.

Pour plus d'informations sur la journalisation de plusieurs comptes, veuillez consulter [Journalisation centrale](https://aws.amazon.com/solutions/implementations/centralized-logging/) dans la bibliothèque de solutions AWS .

Pour plus d'informations sur CloudWatch les journaux, consultez la section [Journaux envoyés à Amazon S3](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html#AWS-logs-infrastructure-S3) dans le *guide de l'utilisateur Amazon CloudWatch Logs*.

**Topics**
+ [Fichiers journaux de flux](#flow-logs-s3-path)
+ [Politique IAM pour les principaux IAM qui publient des journaux de flux vers Amazon S3](#flow-logs-s3-iam)
+ [Autorisations du compartiment Amazon S3 pour les journaux de flux](#flow-logs-s3-permissions)
+ [Politique de clé obligatoire à utiliser avec SSE-KMS](#flow-logs-s3-cmk-policy)
+ [Autorisations pour les fichiers journaux Amazon S3](#flow-logs-file-permissions)
+ [Création du rôle du compte source](flowlog-s3-create-source.md)
+ [Créez un journal de flux qui sera publié sur Amazon S3](flowlog-s3-create.md)
+ [Afficher les enregistrements Flow Logs](view-flow-log-records-s3.md)
+ [Enregistrements des journaux de flux de AWS Transit Gateway traités dans Amazon S3](#process-records-s3)

## Fichiers journaux de flux
<a name="flow-logs-s3-path"></a>

VPC Flow Logs est une fonction qui collecte les enregistrements des journaux de flux, les consolide dans des fichiers journaux, puis publie les fichiers journaux dans le compartiment Amazon S3 à intervalles de 5 minutes. Chaque fichier journal contient des enregistrements de journaux de flux pour le trafic IP enregistré au cours des cinq dernières minutes.

La taille maximale d'un fichier journal est de 75 Mo. Si le fichier journal atteint la limite maximale de taille au cours de la période de 5 minutes, le journal de flux cesse de lui ajouter des enregistrements de journal de flux. Ensuite, il publie le journal de flux dans le compartiment Amazon S3, puis crée un fichier journal.

Dans Amazon S3, le champ **Last modified** (Dernière modification) du fichier de journal de flux indique la date et l'heure du téléchargement du fichier dans le compartiment Amazon S3. Cette date est postérieure à l'horodatage du nom du fichier et diffère par le temps nécessaire pour charger le fichier vers le compartiment Amazon S3.

**Format de fichier journal**

Vous pouvez spécifier l'un des formats suivants pour les fichiers journaux. Chaque fichier est compressé dans un seul fichier Gzip.
+ **Text** : texte brut. Il s’agit du format par défaut.
+ **Parquet** : Apache Parquet est un format de données en colonnes. Les requêtes sur les données au format Parquet sont 10 à 100 fois plus rapides que les requêtes sur des données en texte brut. Les données au format Parquet avec compression Gzip occupent 20 % moins d'espace de stockage que le texte brut avec compression Gzip.

**Options de fichier journal**

Le cas échéant, vous pouvez spécifier les options suivantes :
+ **Hive-compatible S3 prefixes** (Préfixes S3 compatibles Hive) : activez les préfixes compatibles Hive au lieu d'importer des partitions dans vos outils compatibles Hive. Avant d'exécuter des requêtes, utilisez la commande **MSCK REPAIR TABLE**.
+ **Hourly partitions** (Partitions horaires) : si vous disposez d'un grand volume de journaux et que vous ciblez généralement les requêtes à une heure spécifique, vous pouvez obtenir des résultats plus rapidement et économiser sur les coûts des requêtes en partitionnant les journaux toutes les heures.

**Structure du compartiment S3 du fichier journal**  
Les fichiers journaux sont enregistrés dans le compartiment Amazon S3 indiqué à l'aide d'une structure de dossiers qui est déterminée par l'ID du journal de flux, sa région, sa date de création et ses options de destination.

Par défaut, les fichiers sont distribués vers l'emplacement suivant.

```
bucket-and-optional-prefix/AWSLogs/account_id/vpcflowlogs/region/year/month/day/
```

Si vous activez les préfixes S3 compatibles Hive, les fichiers sont envoyés à l'emplacement suivant.

```
bucket-and-optional-prefix/AWSLogs/aws-account-id=account_id/service=vpcflowlogs/aws-region=region/year=year/month=month/day=day/
```

Si vous activez les partitions horaires, les fichiers sont envoyés à l'emplacement suivant.

```
bucket-and-optional-prefix/AWSLogs/account_id/vpcflowlogs/region/year/month/day/hour/
```

Si vous activez les partitions compatibles Hive et que vous partitionnez le journal de flux par heure, les fichiers sont envoyés à l'emplacement suivant.

```
bucket-and-optional-prefix/AWSLogs/aws-account-id=account_id/service=vpcflowlogs/aws-region=region/year=year/month=month/day=day/hour=hour/
```

**Noms des fichiers journaux**  
Le nom de fichier d'un fichier journal est basé sur l'ID du journal de flux, la région et la date et l'heure de création. Les noms de fichier utilisent le format suivant.

```
aws_account_id_vpcflowlogs_region_flow_log_id_YYYYMMDDTHHmmZ_hash.log.gz
```

Voici un exemple de fichier journal pour un journal de flux créé par le Compte AWS 123456789012, pour une ressource dans la région us-east-1, le June 20, 2018 à 16:20 UTC. Le fichier contient les enregistrements de journaux de flux avec une heure de fin comprise entre 16:20:00 et 16:24:59.

```
123456789012_vpcflowlogs_us-east-1_fl-1234abcd_20180620T1620Z_fe123456.log.gz
```

## Politique IAM pour les principaux IAM qui publient des journaux de flux vers Amazon S3
<a name="flow-logs-s3-iam"></a>

Le principal IAM qui crée le journal de flux doit avoir les autorisations suivantes, qui sont nécessaires pour publier les journaux de flux dans le compartiment Amazon S3 de destination.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "logs:CreateLogDelivery",
        "logs:DeleteLogDelivery"
        ],
      "Resource": "*"
    }
  ]
}
```

------

## Autorisations du compartiment Amazon S3 pour les journaux de flux
<a name="flow-logs-s3-permissions"></a>

Par défaut, les compartiments Amazon S3 et les objets qu'ils contiennent sont privés. Seul le propriétaire du compartiment peut accéder au compartiment et aux objets qui y sont stockés. Cependant, le propriétaire du compartiment peut accorder l'accès à d'autres ressources et à d'autres utilisateurs en créant une politique d'accès.

Si l'utilisateur qui crée le journal de flux est le propriétaire du compartiment et dispose des autorisations `PutBucketPolicy` et `GetBucketPolicy` pour le compartiment, nous attachons automatiquement la stratégie suivante au compartiment. Cette nouvelle politique générée automatiquement est ajoutée à la politique d'origine.

Sinon, le propriétaire du compartiment doit ajouter cette politique au compartiment en spécifiant l'ID du Compte AWS du créateur du journal de flux. Sinon, la création du journal de flux échoue. Pour plus d'informations, consultez les [politiques relatives aux compartiments](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-policies.html) dans le *guide de l'utilisateur d'Amazon Simple Storage Service*.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AWSLogDeliveryWrite",
            "Effect": "Allow",
            "Principal": {
                "Service": "delivery.logs.amazonaws.com"
            },
            "Action": "s3:PutObject",
            "Resource": "arn:aws:s3:::bucket_name/*",
            "Condition": {
                "StringEquals": {
                    "s3:x-amz-acl": "bucket-owner-full-control",
                    "aws:SourceAccount": "123456789012"
                },
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:logs:us-east-1:123456789012:*"
                }
            }
        },
        {
            "Sid": "AWSLogDeliveryCheck",
            "Effect": "Allow",
            "Principal": {
                "Service": "delivery.logs.amazonaws.com"
            },
            "Action": [
                "s3:GetBucketAcl"
            ],
            "Resource": "arn:aws:s3:::bucket_name",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "123456789012"
                },
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:logs:us-east-1:123456789012:*"
                }
            }
        }
    ]
}
```

------

L'ARN que vous spécifiez *my-s3-arn* dépend de l'utilisation de préfixes S3 compatibles avec Hive ou non.
+ Préfixes par défaut

  ```
  arn:aws:s3:::bucket_name/optional_folder/AWSLogs/account_id/*
  ```
+ Préfixes S3 compatibles avec Hive

  ```
  arn:aws:s3:::bucket_name/optional_folder/AWSLogs/aws-account-id=account_id/*
  ```

Il est recommandé d'accorder ces autorisations au principal du service de livraison des journaux plutôt qu'à un individu Compte AWS ARNs. Une autre bonne pratique consiste également à utiliser les clés de condition `aws:SourceAccount` et `aws:SourceArn` afin de vous protéger contre [le problème du député confus](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html). Le compte source est le propriétaire du journal de flux et l'ARN source est l'ARN à caractère générique (\$1) du service de journaux.

## Politique de clé obligatoire à utiliser avec SSE-KMS
<a name="flow-logs-s3-cmk-policy"></a>

Vous pouvez protéger les données de votre compartiment Amazon S3 en activant soit le chiffrement côté serveur avec des clés gérées Amazon S3 (SSE-S3), soit le chiffrement côté serveur avec des clés KMS stockées (SSE-KMS). Pour plus d'informations, consultez la section [Protection des données à l'aide d'un chiffrement côté serveur](https://docs.aws.amazon.com/AmazonS3/latest/userguide/serv-side-encryption.html) dans le *Guide de l'utilisateur d'Amazon S3*.

Avec SSE-KMS, vous pouvez utiliser une clé AWS gérée ou une clé gérée par le client. Avec une clé AWS gérée, vous ne pouvez pas utiliser la livraison entre comptes. Les journaux de flux sont diffusés à partir du compte de diffusion des journaux. Vous devez donc accorder l'accès pour la diffusion entre comptes. Pour accorder l'accès entre comptes à votre compartiment S3, utilisez une clé gérée par le client et spécifiez l'Amazon Resource Name (ARN) de la clé gérée par le client lorsque vous activez le chiffrement de compartiment. Pour plus d'informations, veuillez consulter la section [Spécification du chiffrement côté serveur avec AWS KMS](https://docs.aws.amazon.com/AmazonS3/latest/userguide/specifying-kms-encryption.html) du *Guide de l'utilisateur d'Amazon S3*.

Lorsque vous utilisez SSE-KMS avec une clé gérée par le client, vous devez ajouter ce qui suit à la politique clé de votre clé (et non pas la politique de compartiment de votre compartiment S3), afin que les journaux de flux de VPC puissent écrire dans votre compartiment S3.

**Note**  
L'utilisation de clés de compartiment S3 vous permet de réduire les coûts liés aux demandes AWS Key Management Service (AWS KMS) en réduisant vos AWS KMS demandes aux opérations de chiffrement et de déchiffrement grâce à l'utilisation d'une clé au niveau du compartiment. GenerateDataKey De par leur conception, les demandes ultérieures qui tirent parti de cette clé au niveau du compartiment n'entraînent pas de demandes d' AWS KMS API et ne valident pas l'accès par rapport à la politique de AWS KMS clé.

```
{
    "Sid": "Allow Transit Gateway Flow Logs to use the key",
    "Effect": "Allow",
    "Principal": {
        "Service": [
            "delivery.logs.amazonaws.com"
        ]
    },
   "Action": [
       "kms:Encrypt",
       "kms:Decrypt",
       "kms:ReEncrypt*",
       "kms:GenerateDataKey*",
       "kms:DescribeKey"
    ],
    "Resource": "*"
}
```

## Autorisations pour les fichiers journaux Amazon S3
<a name="flow-logs-file-permissions"></a>

Outre les politiques de compartiment requises, Amazon S3 utilise des listes de contrôle d'accès (ACLs) pour gérer l'accès aux fichiers journaux créés par un journal de flux. Par défaut, le propriétaire du compartiment dispose d'autorisations `FULL_CONTROL` sur chaque fichier journal. Si le propriétaire de la diffusion des journaux n'est pas le propriétaire du compartiment, il ne dispose d'aucune autorisation. Le compte de diffusion des journaux possède les autorisations `READ` et `WRITE`. Pour plus d'informations, consultez la [présentation de la liste de contrôle d'accès (ACL)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html) dans le *guide de l'utilisateur d'Amazon Simple Storage Service*.

# Création du rôle de compte source AWS Transit Gateway Flow Logs pour Amazon S3
<a name="flowlog-s3-create-source"></a>

À partir du compte source, créez le rôle source dans la Gestion des identités et des accès AWS console. 

**Pour créer le rôle du compte source**

1. Connectez-vous à la console IAM AWS Management Console et ouvrez-la à [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)l'adresse.

1. Dans le panneau de navigation, choisissez **Politiques**.

1. Sélectionnez **Create policy** (Créer une politique).

1. Sur la page Create policy (Créer une stratégie), procédez comme suit :

   1. Choisissez **JSON**.

   1. Remplacez le contenu de cette fenêtre par la politique d'autorisations au début de cette section.

   1. Choisissez **Next: Tags** (Suivant : Balises), puis **Next: Review** (Suivant : Vérification).

   1. Saisissez un nom pour votre politique ainsi qu'une description facultative, puis choisissez **Create policy** (Créer une politique).

1. Dans le panneau de navigation, choisissez **Roles** (Rôles).

1. Sélectionnez **Create role** (Créer un rôle).

1. Pour **Trusted entity type** (Type d'entité de confiance), choisissez **Custom trust policy** (Politique de confiance personnalisée). Pour **Custom trust policy** (Politique de confiance personnalisée), remplacez `"Principal": {},` par ce qui suit, qui spécifie le service de diffusion de journaux. Choisissez **Suivant**.

   ```
   "Principal": {
      "Service": "delivery.logs.amazonaws.com"
   },
   ```

1. Sur la page **Add permissions** (Ajouter des autorisations), cochez la case correspondant à la politique que vous avez créée plus tôt dans cette procédure, puis choisissez **Next** (Suivant).

1. Entrez un nom pour votre rôle et fournissez une description, le cas échéant.

1. Choisissez **Créer un rôle**.

# Créez un enregistrement AWS Transit Gateway Flow Logs qui sera publié sur Amazon S3
<a name="flowlog-s3-create"></a>

Une fois votre compartiment Amazon S3 créé et configuré, vous pouvez créer des journaux de flux pour les passerelles de transit. Vous pouvez créer un journal de flux Amazon S3 à l'aide de la console Amazon VPC ou de la CLI AWS .

**Pour créer un journal de flux de passerelle de transit publié dans Amazon S3 à l'aide de la console**

1. Ouvrez la console Amazon VPC à l’adresse [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/).

1. Dans le panneau de navigation, choisissez **Transit gateways** (Passerelles de transit), **Transit gateway attachment** (Attachements de passerelle de transit).

1. Cochez les cases correspondant à une ou plusieurs passerelles de transit ou à un ou plusieurs attachements de passerelle de transit.

1. Choisissez **Actions**, **Create flow log** (Créer le journal de flux).

1. Configurez les paramètres du journal de flux. Pour de plus amples informations, veuillez consulter [Pour configurer les paramètres du journal de flux](#configure-flow-log).<a name="configure-flow-log"></a>

**Pour configurer des paramètres de journaux de flux à l'aide de la console**

1. Pour **Destination**, choisissez **Send to an S3 bucket** (Envoyer vers un compartiment S3).

1. Pour **S3 bucket ARN** (ARN de compartiment S3)), indiquez l'Amazon Resource Name (ARN) d'un compartiment Amazon S3 existant. Vous pouvez éventuellement inclure un sous-dossier. Par exemple, pour spécifier le sous-dossier `my-logs` dans me compartiment `my-bucket`, utilisez l'ARN suivant :

   `arn:aws::s3:::my-bucket/my-logs/`

   Le compartiment ne peut pas utiliser `AWSLogs` comme nom de sous-dossier, car il s'agit d'un terme réservé.

   Si vous êtes le propriétaire du compartiment, nous créons automatiquement une politique de ressource et l'attachons au compartiment. Pour de plus amples informations, veuillez consulter [Autorisations du compartiment Amazon S3 pour les journaux de flux](flow-logs-s3.md#flow-logs-s3-permissions).

1. Pour **Log record format** (Format d'enregistrement du journal), sélectionnez le format de l'enregistrement du journal de flux.
   + Pour utiliser le format de registre de journal de flux par défaut, sélectionnez **AWS default format** (Format par défaut).
   + Pour créer un format personnalisé, choisissez **Custom format** (Format personnalisé). Pour **Log format** (Format de journal), choisissez les champs à inclure dans l'enregistrement de journal de flux.

1. Pour **Format du fichier journal**, spécifiez le format du fichier journal.
   + **Text** : texte brut. Il s’agit du format par défaut.
   + **Parquet** : Apache Parquet est un format de données en colonnes. Les requêtes sur les données au format Parquet sont 10 à 100 fois plus rapides que les requêtes sur des données en texte brut. Les données au format Parquet avec compression Gzip occupent 20 % moins d'espace de stockage que le texte brut avec compression Gzip.

1. (Facultatif) Pour utiliser des préfixes S3 compatibles avec Hive, choisissez **Hive-compatible S3 prefix** (Préfixe S3 compatible HIVE), **Enable**. (Activer).

1. (Facultatif) Pour partitionner vos journaux de flux par heure, choisissez **Every 1 hour (60 mins)** (Toutes les 1 heure (60 minutes)).

1. (Facultatif) Pour ajouter une identification au journal de flux, choisissez **Add new tag** (Ajouter une nouvelle identification) et spécifiez la clé et la valeur de l'identification.

1. Choisissez **Create flow log**. (Créer le journal de flux).

**Pour créer un journal de flux qui publie vers Amazon S3 à l'aide de l'outil de ligne de commande**

Utilisez l’une des commandes suivantes.
+ [create-flow-logs](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-flow-logs.html) (AWS CLI)
+ [New-EC2FlowLog](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2FlowLog.html) (AWS Tools for Windows PowerShell)

L' AWS CLI exemple suivant crée un journal de flux qui capture tout le trafic de passerelle de transit pour VPC `tgw-00112233344556677` et transmet les journaux de flux à un compartiment Amazon S3 appelé. `flow-log-bucket` Le paramètre `--log-format` spécifie un format personnalisé pour les enregistrements de journal de flux.

```
aws ec2 create-flow-logs --resource-type TransitGateway --resource-ids tgw-00112233344556677 --log-destination-type s3 --log-destination arn:aws:s3:::flow-log-bucket/my-custom-flow-logs/'
```

# Afficher les enregistrements des journaux de flux de AWS Transit Gateway dans Amazon S3
<a name="view-flow-log-records-s3"></a>

**Pour afficher des enregistrements de journal de flux publiés dans Amazon S3**

1. Ouvrez la console Amazon S3 à l'adresse [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. Pour **Bucket name** (Nom du compartiment), sélectionnez le compartiment dans lequel les journaux de flux sont publiés.

1. Pour **Nom**, cochez la case à côté du fichier journal. Dans le panneau de présentation de l'objet, choisissez **Download**(Télécharger).

## Enregistrements des journaux de flux de AWS Transit Gateway traités dans Amazon S3
<a name="process-records-s3"></a>

Les fichiers journaux sont compressés. Si vous ouvrez les fichiers journaux à l'aide de la console Amazon S3, ils sont décompressés et les enregistrements de journal de flux s'affichent. Si vous téléchargez les fichiers, vous devez les décompresser pour afficher les enregistrements de journaux de flux.