

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.

# Création d’une tâche d’opérations par lot S3
<a name="batch-ops-create-job"></a>

Amazon S3 Batch Operations vous permet d’effectuer des opérations par lot à grande échelle sur une liste d’objets Amazon S3 spécifiques. Cette section décrit les informations dont vous avez besoin pour créer une tâche d’opérations par lot S3 ainsi que les résultats d’une demande `CreateJob`. Il fournit également des instructions pour créer une tâche Batch Operations à l'aide de la console Amazon S3, AWS Command Line Interface (AWS CLI) et AWS SDK pour Java.

Lorsque vous créez une tâche S3 Batch Operations, vous pouvez demander un rapport d'achèvement pour toutes les tâches ou uniquement pour les tâches ayant échoué. Tant qu’au moins une tâche a été invoquée avec succès, S3 Batch Operations génère un rapport pour les tâches qui ont été achevées, qui ont échoué ou qui ont été annulées. Pour plus d’informations, consultez [Exemples : Rapports de fin de tâche d’opérations par lot S3](batch-ops-examples-reports.md).

La vidéo suivante fournit une brève démonstration de la manière de créer une tâche Batch Operations à l’aide de la console Amazon S3.

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/qpwHUrwAiUI//0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/qpwHUrwAiUI/)


**Topics**
+ [Éléments d’une demande de tâche d’opération par lot](#batch-ops-create-job-request-elements)
+ [Spécification d’un manifeste](#specify-batchjob-manifest)
+ [Génération automatique d’une liste d’objets et enregistrement de celle-ci sous forme de fichier manifeste](#automatically-generate-manifest-file)
+ [Création d’un fichier manifeste](#create-manifest-file)
+ [Utilisation d’un manifeste existant](#specify-existing-manifest-file)
+ [Création d’une tâche](#to-create-batch-ops-job)
+ [Réponses à la tâche](#batch-ops-create-job-response-elements)

## Éléments d’une demande de tâche d’opération par lot
<a name="batch-ops-create-job-request-elements"></a>

Pour créer une tâche S3 Batch Operations, vous devez fournir les informations suivantes :

**Opération**  
Spécifiez l’opération que la tâche S3 Batch Operations doit exécuter sur les objets du manifeste. Chaque type d’opération accepte des paramètres spécifiques à cette opération. Avec Batch Operations, vous pouvez effectuer une opération en bloc, avec les mêmes résultats que si vous aviez effectué cette opération one-by-one sur chaque objet.

**Manifeste**  
Un *manifeste* est une liste d’objets Amazon S3 qui contient les clés d’objet sur lesquelles Amazon S3 doit agir. Vous pouvez utiliser les méthodes suivantes pour spécifier un manifeste pour une tâche d’opérations par lot :  
+ Demander à Batch Operations de générer une liste d’objets en fonction des métadonnées que vous spécifiez. Vous pouvez enregistrer cette liste sous forme de fichier manifeste et l’utiliser lors de la création de votre tâche. Cette option est disponible pour tous les types de tâches que vous créez à l'aide de la console Amazon S3, de AWS CLI AWS SDKs, ou de l'API REST Amazon S3.
+ Générer automatiquement une liste d’objets sur la base d’une configuration de réplication existante. Vous pouvez enregistrer cette liste sous forme de fichier manifeste et l’utiliser pour de futures tâches. 
+ Créez manuellement un nouveau fichier manifeste.
+ Utilisez un manifeste existant. 
+ Quelle que soit la manière dont vous spécifiez les objets, le manifeste lui-même doit être stocké dans un compartiment à usage général. Batch Operations ne peut pas importer de manifestes existants à partir de compartiments de répertoires, ni enregistrer les listes d’objets générées comme manifestes dans ces compartiments. Toutefois, les objets décrits dans le manifeste peuvent être stockés dans des compartiments de répertoires. Pour plus d’informations, consultez [Compartiments de répertoires](https://docs.aws.amazon.com//AmazonS3/latest/userguide/directory-buckets-overview.html).
+ Si les objets de votre manifeste se trouvent dans un compartiment versionné, la spécification de la version IDs des objets indique à Batch Operations d'effectuer l'opération sur une version spécifique. Si aucune version IDs n'est spécifiée, Batch Operations exécute l'opération sur la dernière version des objets. Si votre manifeste comprend un champ d’identification de version, vous devez fournir un identifiant de version pour tous les objets du manifeste.
Pour plus d’informations, consultez [Spécification d’un manifeste](#specify-batchjob-manifest).

**Priority**  
Utilisez les priorités pour indiquer la priorité relative de cette tâche par rapport aux autres s’exécutant dans votre compte. Un nombre plus élevé indique une priorité plus élevée.  
Les priorités n’ont de sens que par rapport aux priorités établies pour d’autres tâches dans le même compte et la même Région. Ainsi, vous pouvez choisir le système de numérotation qui vous convient. Par exemple, vous souhaiterez peut-être attribuer à toutes les tâches **Restore** (`RestoreObject`) une priorité de 1, à toutes les tâches **Copy** (`CopyObject`) une priorité de 2 et à toutes les tâches **Replace des listes de contrôle d'accès (ACLs`PutObjectAcl`)** () une priorité de 3.   
S3 Batch Operations traite les tâches en fonction de leur numéro de priorité, mais un ordre strict n’est pas garanti. Par conséquent, n’utilisez pas les priorités de tâche pour vous assurer qu’une tâche commence ou finit avant une autre. Si vous devez garantir un ordre strict, attendez qu’une tâche se termine avant de démarrer la suivante. 

**RoleArn**  
Spécifiez un rôle Gestion des identités et des accès AWS (IAM) pour exécuter la tâche. Le rôle IAM que vous utilisez doit disposer d'autorisations suffisantes pour effectuer l'opération spécifiée dans la tâche. Par exemple, pour exécuter une tâche `CopyObject`, le rôle IAM doit avoir l’autorisation `s3:GetObject` pour le compartiment source et l’autorisation `s3:PutObject` pour le compartiment de destination. Le rôle a également besoin d’autorisations pour lire le manifeste et générer le rapport d’achèvement.  
Le rôle IAM peut être un rôle existant. Ou, si vous utilisez la console Amazon S3 pour créer la tâche, il peut s'agir d'un rôle IAM qu'Amazon S3 crée automatiquement pour vous. Pour de plus amples informations, veuillez consulter [Octroi d’autorisations pour Batch Operations](batch-ops-iam-role-policies.md).  
Pour plus d'informations sur les rôles IAM, consultez [Rôles IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) dans le manuel *IAM Guide de l'utilisateur*. Pour plus d’informations sur les autorisations Amazon S3, consultez [Actions de politique pour Amazon S3](security_iam_service-with-iam.md#security_iam_service-with-iam-id-based-policies-actions).  
Les tâches d’opérations par lots qui effectuent des actions sur des compartiments de répertoires nécessitent des autorisations spécifiques. Pour plus d’informations, consultez [Gestion des identités et des accès AWS (IAM) pour S3 Express One Zone](https://docs.aws.amazon.com//AmazonS3/latest/userguide/s3-express-security-iam.html).

**Rapport**  
Indiquez si vous souhaitez que S3 Batch Operations génère un rapport d’achèvement. Si vous demandez un rapport d’achèvement, vous devez également fournir les paramètres du rapport dans cet élément. Les informations suivantes sont requises :  
+ Le compartiment dans lequel vous souhaitez stocker le rapport
**Note**  
Le rapport doit être stocké dans un compartiment à usage général. Batch Operations ne peut pas enregistrer les rapports dans des compartiments de répertoires. Pour plus d’informations, consultez [Compartiments de répertoires](https://docs.aws.amazon.com//AmazonS3/latest/userguide/directory-buckets-overview.html).
+ Le format du rapport
+ Si vous souhaitez que le rapport comprenne les détails de toutes les tâches ou uniquement de celles ayant échoué
+ Une chaîne de préfixe facultative
Si le champ `CreateJob.Report.ExpectedBucketOwner` est renseigné, il faut que le propriétaire du compartiment du rapport d’achèvement corresponde. Dans le cas contraire, la tâche échoue.  
Les rapports d’achèvement sont toujours chiffrés côté serveur avec des clés gérées par Amazon S3 (SSE-S3).

**Les balises (facultatif)**  
Vous pouvez étiqueter et contrôler l’accès à vos tâches d’opérations par lot S3 en ajoutant des *étiquettes*. Vous pouvez utiliser des balises pour identifier qui est responsable d’une tâche Batch Operations ou pour contrôler comment les utilisateurs interagissent avec les tâches Batch Operations. La présence d’étiquettes de tâche peut octroyer ou limiter la capacité d’un utilisateur à annuler une tâche, activer une tâche dans l’état de confirmation ou modifier le niveau de priorité d’une tâche. Par exemple, vous pouvez accorder à un utilisateur l’autorisation d’invoquer l’opération `CreateJob`, à condition que la tâche soit créée avec la balise `"Department=Finance"`.   
Vous pouvez créer des tâches avec des étiquettes qui leur sont attachées et ajouter des étiquettes aux travaux après les avoir créés.   
Pour plus d’informations, consultez [Contrôle de l’accès et étiquetage des tâches à l’aide d’étiquettes](batch-ops-job-tags.md).

**Description (facultative)**  
Pour suivre et surveiller votre tâche, vous pouvez également fournir une description de 256 caractères maximum. Amazon S3 inclut cette description chaque fois qu’il renvoie des informations sur une tâche ou affiche les détails de la tâche sur la console Amazon S3. Cela vous permet de trier et filtrer facilement les tâches en fonction des descriptions que vous avez allouées. Comme les descriptions n’ont pas à être uniques, vous pouvez utiliser les descriptions comme catégories (par exemple, « Tâches hebdomadaires de copie des journaux ») pour vous aider à suivre les groupes de tâches similaires.

## Spécification d’un manifeste
<a name="specify-batchjob-manifest"></a>

Un *manifeste* est une liste d’objets Amazon S3 qui contient les clés d’objet sur lesquelles Amazon S3 doit agir. Vous pouvez utiliser les méthodes suivantes pour spécifier un manifeste pour une tâche d’opérations par lot :
+ Demander à Batch Operations de générer une liste d’objets en fonction des métadonnées que vous spécifiez. Vous pouvez enregistrer cette liste sous forme de manifeste et l’utiliser lors de la création de votre tâche. Cette option est disponible pour tous les types de tâches que vous créez à l'aide de la console Amazon S3, de AWS CLI AWS SDKs, ou de l'API REST Amazon S3.
+ Générer automatiquement une liste d’objets sur la base d’une configuration de réplication existante. Vous pouvez enregistrer cette liste sous forme de manifeste et l’utiliser pour de futures tâches. 
+ Créez manuellement un nouveau fichier manifeste.
+ Utilisez un manifeste existant. 

**Note**  
Amazon S3 Batch Operations ne prend pas en charge la génération de listes d’objets entre régions. 
Quelle que soit la manière dont vous spécifiez les objets, le manifeste lui-même doit être stocké dans un compartiment à usage général. Batch Operations ne peut pas importer de manifestes existants à partir de compartiments de répertoires, ni enregistrer les listes d’objets générées comme manifestes dans ces compartiments. Toutefois, les objets décrits dans le manifeste peuvent être stockés dans des compartiments de répertoires. Pour plus d’informations, consultez [Compartiments de répertoires](https://docs.aws.amazon.com//AmazonS3/latest/userguide/directory-buckets-overview.html).

## Génération automatique d’une liste d’objets et enregistrement de celle-ci sous forme de fichier manifeste
<a name="automatically-generate-manifest-file"></a>

Vous pouvez demander à Amazon S3 de générer automatiquement une liste d’objets sur la base des métadonnées que vous spécifiez. Vous pouvez enregistrer cette liste sous forme de manifeste et l’utiliser lors de la création de votre tâche. Cette option est disponible pour tous les types de tâches que vous créez à l'aide de la console Amazon S3, de AWS CLI AWS SDKs, ou de l'API REST Amazon S3. 

Pour générer automatiquement une liste d’objets et l’enregistrer sous forme de fichier manifeste, vous devez spécifier les éléments suivants dans le cadre de votre demande de création de tâche :
+ Informations sur le compartiment qui contient vos objets sources, y compris le propriétaire du compartiment et l’Amazon Resource Name (ARN).
+ Informations sur la sortie du manifeste, notamment un indicateur permettant de créer un fichier manifeste, le propriétaire du compartiment de sortie, l’ARN, le préfixe, le format du fichier et le type de chiffrement.
+ Critères facultatifs pour filtrer les objets en fonction de leur date de création, de leur nom de clé, de leur taille, de leur type de chiffrement, de l’ARN de la clé KMS, de la clé de compartiment et de la classe de stockage. Dans le cas des tâches de réplication, vous pouvez également utiliser des balises pour filtrer les objets. 

### Critères de filtre d’objet
<a name="manifest-generator-filter-criteria"></a>

Pour filtrer les objets à inclure dans une liste d’objets générée automatiquement, vous pouvez spécifier les critères suivants. Pour plus d’informations, consultez [https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_JobManifestGeneratorFilter.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_JobManifestGeneratorFilter.html) dans la *Référence d’API Amazon S3*.

**CreatedAfter**  
Si ce critère est fourni, le manifeste généré inclut uniquement les objets du compartiment source créés après cet instant.

**CreatedBefore**  
Si ce critère est fourni, le manifeste généré inclut uniquement les objets du compartiment source créés avant cet instant.

**EligibleForReplication**  
Si ce critère est fourni, le manifeste généré inclut les objets uniquement s’ils sont éligibles à la réplication conformément à la configuration de réplication du compartiment source.

**KeyNameConstraint**  
S'il est fourni, le manifeste généré inclut uniquement les objets du compartiment source dont les clés d'objet correspondent aux contraintes de chaîne spécifiées pour **MatchAnySubstring**MatchAnyPrefix****, et **MatchAnySuffix**.  
**MatchAnySubstring**— S'il est fourni, le manifeste généré inclut des objets si la chaîne spécifiée apparaît n'importe où dans la chaîne clé de l'objet.  
**MatchAnyPrefix**— S'il est fourni, le manifeste généré inclut des objets si la chaîne spécifiée apparaît au début de la chaîne clé de l'objet.  
**MatchAnySuffix**— S'il est fourni, le manifeste généré inclut des objets si la chaîne spécifiée apparaît à la fin de la chaîne clé de l'objet.

**MatchAnyObjectEncryption**  
 Si elle est fournie, la liste d’objets générée enregistrée en tant que fichier manifeste inclut uniquement les objets du compartiment source et le type de chiffrement côté serveur indiqué (SSE-S3, SSE-KMS, SSE-C ou NOT-SSE). Si vous sélectionnez SSE-KMS ou DSSE-KMS, vous pouvez éventuellement filtrer vos résultats en spécifiant un ARN de clé KMS. Si vous sélectionnez SSE-KMS, vous pouvez également filtrer vos résultats en fonction du statut d’activation de la clé de compartiment.   
Pour améliorer les performances de génération de manifestes lors de l'utilisation du `KmsKeyArn` filtre, utilisez-le avec d'autres filtres de métadonnées d'objets`MatchAnyPrefix`, tels que`CreatedAfter`, ou`MatchAnyStorageClass`.

**MatchAnyStorageClass**  
Si ce critère est fourni, le manifeste généré inclut uniquement les objets du compartiment source stockés avec la classe de stockage spécifiée.

**ObjectReplicationStatuses**  
Si ce critère est fourni, le manifeste généré inclut uniquement les objets du compartiment source présentant l’un des statuts de réplication spécifiés.

**ObjectSizeGreaterThanBytes**  
Si ce critère est fourni, le manifeste généré inclut uniquement les objets du compartiment source dont la taille de fichier est supérieure au nombre d’octets spécifié.

**ObjectSizeLessThanBytes**  
Si ce critère est fourni, le manifeste généré inclut uniquement les objets du compartiment source dont la taille de fichier est inférieure au nombre d’octets spécifié.

**Note**  
Vous ne pouvez pas cloner la plupart des tâches ayant des listes d’objets générées automatiquement enregistrées sous forme de manifestes. Les tâches de réplication par lot peuvent être clonées, sauf lorsqu’elles utilisent les critères de filtre de manifeste `KeyNameConstraint`, `MatchAnyStorageClass`, `ObjectSizeGreaterThanBytes` ou `ObjectSizeLessThanBytes`.

La syntaxe permettant de spécifier les critères du manifeste varie en fonction de la méthode que vous utilisez pour créer votre tâche. Pour obtenir des exemples, consultez [Création d’une tâche](#to-create-batch-ops-job).

## Création d’un fichier manifeste
<a name="create-manifest-file"></a>

Pour créer un fichier manifeste manuellement, vous devez spécifier la clé de l'objet manifeste ETag (balise d'entité) et l'ID de version facultatif dans une liste au format CSV. Les contenus du manifeste doivent être codés au format URL. 

Par défaut, Amazon S3 utilise automatiquement le chiffrement côté serveur avec les clés gérées par Amazon S3 (SSE-S3) pour chiffrer un manifeste chargé dans un compartiment Amazon S3. Les manifestes qui utilisent un chiffrement côté serveur avec des clés fournies par le client (SSE-C) ne sont pas pris en charge. Les manifestes qui utilisent le chiffrement côté serveur avec des clés AWS Key Management Service (AWS KMS) (SSE-KMS) ne sont pris en charge que lorsque vous utilisez des rapports d'inventaire au format CSV. L'utilisation d'un manifeste créé manuellement avec n' AWS KMS est pas prise en charge.

Votre manifeste doit contenir le nom du compartiment, la clé d’objet et, facultativement, la version de chaque objet. Les autres champs du manifeste ne sont pas utilisés par S3 Batch Operations.

**Note**  
Si les objets de votre manifeste se trouvent dans un compartiment versionné, la spécification de la version IDs des objets indique à Batch Operations d'effectuer l'opération sur une version spécifique. Si aucune version IDs n'est spécifiée, Batch Operations exécute l'opération sur la dernière version des objets. Si votre manifeste comprend un champ d’identification de version, vous devez fournir un identifiant de version pour tous les objets du manifeste.

Voici un exemple de manifeste au format CSV sans version IDs.

```
amzn-s3-demo-bucket1,objectkey1
amzn-s3-demo-bucket1,objectkey2
amzn-s3-demo-bucket1,objectkey3
amzn-s3-demo-bucket1,photos/jpgs/objectkey4
amzn-s3-demo-bucket1,photos/jpgs/newjersey/objectkey5
amzn-s3-demo-bucket1,object%20key%20with%20spaces
```

Voici un exemple de manifeste au format CSV qui inclut la version IDs.

```
amzn-s3-demo-bucket1,objectkey1,PZ9ibn9D5lP6p298B7S9_ceqx1n5EJ0p
amzn-s3-demo-bucket1,objectkey2,YY_ouuAJByNW1LRBfFMfxMge7XQWxMBF
amzn-s3-demo-bucket1,objectkey3,jbo9_jhdPEyB4RrmOxWS0kU0EoNrU_oI
amzn-s3-demo-bucket1,photos/jpgs/objectkey4,6EqlikJJxLTsHsnbZbSRffn24_eh5Ny4
amzn-s3-demo-bucket1,photos/jpgs/newjersey/objectkey5,imHf3FAiRsvBW_EHB8GOu.NHunHO1gVs
amzn-s3-demo-bucket1,object%20key%20with%20spaces,9HkPvDaZY5MVbMhn6TMn1YTb5ArQAo3w
```

## Utilisation d’un manifeste existant
<a name="specify-existing-manifest-file"></a>

Vous pouvez spécifier un manifeste existant pour créer une tâche Batch Operations dans l’un des deux formats suivants :
+ **Rapport d’inventaire Amazon S3** : il doit s’agir d’un rapport d’inventaire Amazon S3 au format CSV. Vous devez spécifier le fichier `manifest.json` associé au rapport d’inventaire. Pour plus d’informations sur les rapports d’inventaire, consultez [Catalogage et analyse de vos données avec S3 Inventory](storage-inventory.md). Si le rapport d'inventaire inclut la version IDs, S3 Batch Operations fonctionne sur les versions d'objets spécifiques.
**Note**  
S3 Batch Operations prend en charge des *rapports d’inventaire* CSV chiffrés avec SSE-KMS.
Si vous soumettez un manifeste de rapport d’inventaire chiffré avec SSE-KMS, votre politique IAM doit inclure les autorisations `"kms:Decrypt"` et `"kms:GenerateDataKey"` pour l’objet `manifest.json` et tous les fichiers de données CSV associés.
+ **Fichier CSV** : chaque ligne du fichier doit inclure le nom du compartiment, la clé d’objet et, éventuellement, la version de l’objet. Les clés d’objets doivent être encodées en URL, comme montré dans les exemples suivants. Le manifeste doit inclure la version IDs pour tous les objets ou omettre la version IDs pour tous les objets. Pour plus d’informations sur le format de manifeste CSV, consultez [https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_JobManifestSpec.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_JobManifestSpec.html) dans la *Référence des API Amazon Simple Storage Service*.
**Note**  
S3 Batch Operations ne prend pas en charge les *fichiers manifestes* CSV chiffrés avec SSE-KMS.

**Important**  
Lorsque vous utilisez un manifeste créé manuellement et un compartiment versionné, nous vous recommandons de spécifier la version IDs des objets. Lorsque vous créez une tâche, S3 Batch Operations analyse l’intégralité du manifeste avant d’exécuter la tâche. Cependant, cela ne crée pas d’instantané de l’état de ce compartiment.  
Les manifestes pouvant contenir des milliards d’objets, l’exécution des tâches peut prendre beaucoup de temps, ce qui peut avoir une incidence sur la version d’un objet sur laquelle la tâche agit. Supposons que vous remplaciez un objet par une nouvelle version pendant qu’une tâche s’exécute et que vous n’avez pas spécifié d’ID de version pour cet objet. Dans ce cas, Amazon S3 effectue l’opération sur la dernière version de l’objet, et non pas sur la version qui existait lorsque vous avez créé la tâche. Le seul moyen d'éviter ce comportement est de spécifier IDs la version des objets répertoriés dans le manifeste.

## Création d’une tâche
<a name="to-create-batch-ops-job"></a>

 Vous pouvez créer des tâches S3 Batch Operations à l'aide de la console Amazon S3 ou de l'API REST Amazon S3. AWS CLI AWS SDKs 

Pour plus d’informations sur la création d’une demande de tâche, consultez [Éléments d’une demande de tâche d’opération par lot](#batch-ops-create-job-request-elements). 

**Conditions préalables**  
Avant de créer une tâche Batch Operations, vérifiez que vous avez configuré les autorisations pertinentes. Pour plus d’informations, consultez [Octroi d’autorisations pour Batch Operations](batch-ops-iam-role-policies.md).

### Utilisation de la console S3
<a name="batch-ops-create-job-console"></a>

**Pour créer une tâche Batch Operations à l’aide de la console S3**

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

1. Choisissez **Opérations par lot** dans le volet de navigation de gauche de la console Amazon S3.

1. Choisissez **Créer une tâche**.

1. Sous **Choisir la région et le champ d'application**, choisissez et visualisez la AWS région dans laquelle vous souhaitez créer votre emploi.
**Note**  
Pour les opérations de copie, vous devez créer la tâche dans la même région que le compartiment de destination. Pour toutes les autres opérations, vous devez créer la tâche dans la même région que les objets figurant dans le manifeste.

1. Pour **Portée**, spécifiez la liste d’objets sur laquelle votre tâche Batch Operations portera.

   Sous **Liste d'objets**, vous pouvez choisir de générer un manifeste à l'aide d'une liste d'objets, de générer un manifeste à l'aide d'une configuration de réplication ou d'utiliser un manifeste existant.
   + Si vous choisissez **Générer une liste d’objets**, une liste d’objets est automatiquement générée en fonction de l’emplacement source et des métadonnées que vous spécifiez. Vous pouvez enregistrer cette liste sous forme de manifeste et l’utiliser pour de futures tâches.
**Note**  
Pour générer une liste d'objets, vous devez disposer de cette `s3:PutInventoryConfiguration` autorisation. Le compartiment source doit être un compartiment à usage général.
   + Si vous choisissez **Utiliser un manifeste existant**, vous pouvez importer une liste d’objets d’un manifeste existant. Un manifeste est un rapport S3 Inventory ou un fichier CSV qui répertorie les objets sur lesquels vous souhaitez que Batch Operations agisse.
   + Si vous choisissez **Utiliser une configuration de réplication**, vous pouvez générer automatiquement une liste d’objets sur la base d’une configuration de réplication existante. Vous pouvez enregistrer cette liste sous forme de manifeste et l’utiliser pour de futures tâches. 

      Pour cet exemple, choisissez **Générer une liste d’objets**.

1. Pour **Compte source**, choisissez le compte qui possède les objets source.

1. Sous **Source**, saisissez le chemin d’accès à votre source, par exemple, `s3://` *amzn-s3-demo-bucket*.

1. Sous **Filtres d’objet**, vous pouvez utiliser des filtres pour filtrer sur n’importe quelle partie de la clé d’objet ou sur la fin de la clé d’objet. Les **filtres de clé d’objet** aident à affiner la liste des objets à utiliser dans le manifeste. Pour **Filtres de métadonnées d’objet**, choisissez des filtres pour définir plus précisément l’étendue des objets à inclure dans le manifeste.

1. Sous **Choisir l’opération**, choisissez le type d’opération que vous souhaitez effectuer sur tous les objets répertoriés dans le manifeste. Si votre manifeste fait référence à des objets stockés dans un compartiment de répertoire, utilisez uniquement les opérations de la fonction AWS Lambda de copie ou d'appel. Toutes les autres opérations ne sont pas prises en charge.

1. Après avoir sélectionné un type d’opération, choisissez **Suivant**.

1. Renseignez les informations pour **Configurer les options supplémentaires**.

   Pour **les autorisations**, spécifiez le rôle Gestion des identités et des accès AWS (IAM) que vous souhaitez que la tâche utilise. Il peut s'agir d'un rôle existant ou d'un rôle créé automatiquement par Amazon S3 pour vous. Pour de plus amples informations, veuillez consulter [Octroi d’autorisations pour Batch Operations](batch-ops-iam-role-policies.md). Amazon S3 peut créer le rôle pour vous si vous avez configuré la tâche pour utiliser une liste d'objets générée par S3 avec des filtres ou une liste d'objets basée sur une configuration de réplication.

1. Lorsque vous avez terminé de configurer les options supplémentaires, choisissez **Next**.

1. Sous **Vérification**, vérifiez les paramètres. Si vous devez apporter des modifications, choisissez **Précédent**. Sinon, vous pouvez choisir **Soumettre le travail**.

### À l'aide du AWS CLI
<a name="batch-ops-example-cli-job-create"></a>

Pour créer votre tâche Batch Operations avec le AWS CLI, choisissez l'un des exemples suivants, selon que vous spécifiez un manifeste existant ou que vous générez un manifeste automatiquement. 

------
#### [ Specify manifest ]

L'exemple suivant montre comment utiliser le AWS CLI pour créer une `S3PutObjectTagging` tâche S3 Batch Operations qui agit sur des objets répertoriés dans un fichier manifeste existant.

**Pour créer une tâche Batch Operations `S3PutObjectTagging` en spécifiant un manifeste**

1. Utilisez les commandes suivantes pour créer un rôle Gestion des identités et des accès AWS (IAM), puis créez une politique IAM pour attribuer les autorisations appropriées. Le rôle et la politique suivants accordent à Amazon S3 l’autorisation d’ajouter des balises d’objet, dont vous aurez besoin lors de la création de la tâche dans une étape ultérieure.

   1. Utilisez l’exemple de commande suivant pour créer un rôle IAM qui sera utilisé par les opérations par lot. Pour utiliser cet exemple de commande, remplacez `S3BatchJobRole` par le nom que vous souhaitez donner à ce rôle.

      ```
      aws iam create-role \
       --role-name S3BatchJobRole \
       --assume-role-policy-document '{
         "Version": "2012-10-17"		 	 	 ,
         "Statement":[
            {
               "Effect":"Allow",
               "Principal":{
                  "Service":"batchoperations.s3.amazonaws.com"
               },
               "Action":"sts:AssumeRole"
            }
         ]
      }'
      ```

      Prenez note de l’Amazon Resource Name (ARN) du rôle. Vous aurez besoin de l’ARN lors de la création d’une tâche.

   1. Utilisez l’exemple de commande suivant pour créer une politique IAM avec les autorisations nécessaires et l’attacher au rôle IAM que vous avez créé à l’étape précédente. Pour plus d’informations sur les autorisations nécessaires, consultez [Octroi d’autorisations pour Batch Operations](batch-ops-iam-role-policies.md).
**Note**  
Les tâches d’opérations par lots qui effectuent des actions sur des compartiments de répertoires nécessitent des autorisations spécifiques. Pour plus d’informations, consultez [Gestion des identités et des accès AWS (IAM) pour S3 Express One Zone](https://docs.aws.amazon.com//AmazonS3/latest/userguide/s3-express-security-iam.html).

      Pour utiliser cet exemple de commande, remplacez les `user input placeholders` comme suit : 
      + Remplacez `S3BatchJobRole` par le nom de votre rôle IAM. Assurez-vous que ce nom correspond au nom que vous avez utilisé précédemment.
      + Remplacez `PutObjectTaggingBatchJobPolicy` par le nom que vous souhaitez donner à la politique IAM.
      + Remplacez `amzn-s3-demo-destination-bucket` par le nom du compartiment qui contient les objets auxquels vous souhaitez appliquer des balises.
      + Remplacez *`amzn-s3-demo-manifest-bucket`* par le nom du compartiment qui contient le manifeste.
      + Remplacez *`amzn-s3-demo-completion-report-bucket`* par le nom du compartiment dans lequel vous souhaitez que le rapport d’achèvement soit généré. 

      ```
      aws iam put-role-policy \
        --role-name S3BatchJobRole \
        --policy-name PutObjectTaggingBatchJobPolicy \
        --policy-document '{
        "Version": "2012-10-17"		 	 	 ,		 	 	 TCX5-2025-waiver;,
        "Statement":[
          {
            "Effect":"Allow",
            "Action":[
              "s3:PutObjectTagging",
              "s3:PutObjectVersionTagging"
            ],
            "Resource": "arn:aws:s3:::amzn-s3-demo-destination-bucket/*"
          },
          {
            "Effect": "Allow",
            "Action": [
              "s3:GetObject",
              "s3:GetObjectVersion",
              "s3:GetBucketLocation"
            ],
            "Resource": [
              "arn:aws:s3:::amzn-s3-demo-manifest-bucket",
              "arn:aws:s3:::amzn-s3-demo-manifest-bucket/*"
            ]
          },
          {
            "Effect":"Allow",
            "Action":[
              "s3:PutObject",
              "s3:GetBucketLocation"
            ],
            "Resource":[
              "arn:aws:s3:::amzn-s3-demo-completion-report-bucket",
              "arn:aws:s3:::amzn-s3-demo-completion-report-bucket/*"
            ]
          }
        ]
      }'
      ```

1. Utilisez l’exemple de commande suivant pour créer une tâche `S3PutObjectTagging`. 

   Le fichier `manifest.csv` fournit une liste des valeurs de compartiment et de clé d’objet. Cette tâche applique les balises spécifiées aux objets identifiés dans le manifeste. `ETag`Il s'agit ETag de l'`manifest.csv`objet, que vous pouvez obtenir depuis la console Amazon S3. Cette demande spécifie le paramètre `no-confirmation-required`, afin que vous puissiez exécuter la tâche sans avoir à la confirmer avec la commande `update-job-status`. Pour plus d’informations, consultez [https://docs.aws.amazon.com/cli/latest/reference/s3control/create-job.html](https://docs.aws.amazon.com/cli/latest/reference/s3control/create-job.html) dans la *Référence des commandes de l’AWS CLI *.

   Pour utiliser cet exemple de commande, remplacez `user input placeholders` par vos propres informations. Remplacez *`IAM-role`* par l’ARN du rôle IAM que vous avez créé auparavant. 

   ```
   aws s3control create-job \
       --region us-west-2 \
       --account-id acct-id \
       --operation '{"S3PutObjectTagging": { "TagSet": [{"Key":"keyOne", "Value":"ValueOne"}] }}' \
       --manifest '{"Spec":{"Format":"S3BatchOperations_CSV_20180820","Fields":["Bucket","Key"]},"Location":{"ObjectArn":"arn:aws:s3:::amzn-s3-demo-manifest-bucket/manifest.csv","ETag":"60e460c9d1046e73f7dde5043ac3ae85"}}' \
       --report '{"Bucket":"arn:aws:s3:::amzn-s3-demo-completion-report-bucket","Prefix":"final-reports", "Format":"Report_CSV_20180820","Enabled":true,"ReportScope":"AllTasks"}' \
       --priority 42 \
       --role-arn IAM-role \
       --client-request-token $(uuidgen) \
       --description "job description" \
       --no-confirmation-required
   ```

   En réponse, Amazon S3 renvoie un ID de tâche (par exemple, `00e123a4-c0d8-41f4-a0eb-b46f9ba5b07c`). Vous aurez besoin de l’ID de la tâche pour identifier, surveiller et modifier la tâche.

------
#### [ Generate manifest ]

L’exemple suivant montre comment créer une tâche S3 Batch Operations `S3DeleteObjectTagging` qui génère automatiquement un manifeste en fonction de vos critères de filtre d’objet. Ces critères incluent la date de création, le nom de la clé, la taille, la classe de stockage et les balises.

**Pour créer une tâche Batch Operations `S3DeleteObjectTagging` en générant un manifeste**

1. Utilisez les commandes suivantes pour créer un rôle Gestion des identités et des accès AWS (IAM), puis créez une politique IAM pour attribuer des autorisations. Le rôle et la politique suivants accordent à Amazon S3 l’autorisation de supprimer des balises d’objet, dont vous aurez besoin lors de la création de la tâche dans une étape ultérieure.

   1. 

      Utilisez l’exemple de commande suivant pour créer un rôle IAM qui sera utilisé par les opérations par lot. Pour utiliser cet exemple de commande, remplacez `S3BatchJobRole` par le nom que vous souhaitez donner à ce rôle.

      ```
      aws iam create-role \
       --role-name S3BatchJobRole \
       --assume-role-policy-document '{
         "Version": "2012-10-17"		 	 	 ,		 	 	 TCX5-2025-waiver;,
         "Statement":[
            {
               "Effect":"Allow",
               "Principal":{
                  "Service":"batchoperations.s3.amazonaws.com"
               },
               "Action":"sts:AssumeRole"
            }
         ]
      }'
      ```

      Prenez note de l’Amazon Resource Name (ARN) du rôle. Vous aurez besoin de l’ARN lors de la création d’une tâche.

   1. Utilisez l’exemple de commande suivant pour créer une politique IAM avec les autorisations nécessaires et l’attacher au rôle IAM que vous avez créé à l’étape précédente. Pour plus d’informations sur les autorisations nécessaires, consultez [Octroi d’autorisations pour Batch Operations](batch-ops-iam-role-policies.md).
**Note**  
Les tâches d’opérations par lots qui effectuent des actions sur des compartiments de répertoires nécessitent des autorisations spécifiques. Pour plus d’informations, consultez [Gestion des identités et des accès AWS (IAM) pour S3 Express One Zone](https://docs.aws.amazon.com//AmazonS3/latest/userguide/s3-express-security-iam.html).

      Pour utiliser cet exemple de commande, remplacez les `user input placeholders` comme suit : 
      + Remplacez `S3BatchJobRole` par le nom de votre rôle IAM. Assurez-vous que ce nom correspond au nom que vous avez utilisé précédemment.
      + Remplacez `DeleteObjectTaggingBatchJobPolicy` par le nom que vous souhaitez donner à la politique IAM.
      + Remplacez `amzn-s3-demo-destination-bucket` par le nom du compartiment qui contient les objets auxquels vous souhaitez appliquer des balises.
      + Remplacez `amzn-s3-demo-manifest-bucket` par le nom du compartiment dans lequel vous voulez enregistrer le manifeste.
      + Remplacez `amzn-s3-demo-completion-report-bucket` par le nom du compartiment dans lequel vous souhaitez que le rapport d’achèvement soit généré. 

      ```
      aws iam put-role-policy \
        --role-name S3BatchJobRole \
        --policy-name DeleteObjectTaggingBatchJobPolicy \
        --policy-document '{
        "Version": "2012-10-17"		 	 	 ,		 	 	 TCX5-2025-waiver;,
        "Statement":[
          {
            "Effect":"Allow",
            "Action":[
              "s3:DeleteObjectTagging",
              "s3:DeleteObjectVersionTagging"
            ],
            "Resource": "arn:aws:s3:::amzn-s3-demo-destination-bucket/*"
          },
          {
            "Effect":"Allow",
            "Action":[
              "s3:PutInventoryConfiguration"
            ],
            "Resource": "arn:aws:s3:::amzn-s3-demo-destination-bucket"
          },
          {
            "Effect": "Allow",
            "Action": [
              "s3:GetObject",
              "s3:GetObjectVersion",
              "s3:ListBucket"
            ],
            "Resource": [
              "arn:aws:s3:::amzn-s3-demo-manifest-bucket",
              "arn:aws:s3:::amzn-s3-demo-manifest-bucket/*"
            ]
          },
          {
            "Effect":"Allow",
            "Action":[
              "s3:PutObject",
              "s3:ListBucket"
            ],
            "Resource":[
              "arn:aws:s3:::amzn-s3-demo-completion-report-bucket",
              "arn:aws:s3:::amzn-s3-demo-completion-report-bucket/*",
              "arn:aws:s3:::amzn-s3-demo-manifest-bucket/*"
            ]
          }
        ]
      }'
      ```

      

1. Utilisez l’exemple de commande suivant pour créer la tâche `S3DeleteObjectTagging`.

   Dans cet exemple, les valeurs de la section `--report` spécifient le compartiment, le préfixe, le format et la portée du rapport de tâche qui sera généré. La section `--manifest-generator` fournit des informations sur le compartiment source qui contient les objets sur lesquels la tâche agira, des informations sur la liste de sortie du manifeste qui sera générée pour la tâche et les critères de filtre permettant de réduire l’étendue des objets à inclure dans le manifeste en fonction de la date de création, de contraintes de nom, de la taille et de la classe de stockage. La commande spécifie également la priorité de la tâche, le rôle IAM et la Région AWS.

   Pour plus d’informations, consultez [https://docs.aws.amazon.com/cli/latest/reference/s3control/create-job.html](https://docs.aws.amazon.com/cli/latest/reference/s3control/create-job.html) dans la *Référence des commandes de l’AWS CLI *.

   Pour utiliser cet exemple de commande, remplacez `user input placeholders` par vos propres informations. Remplacez *`IAM-role`* par l’ARN du rôle IAM que vous avez créé auparavant. 

   ```
   aws s3control create-job \
       --account-id 012345678901 \
       --operation '{
           "S3DeleteObjectTagging": {}
       }' \
       --report '{
           "Bucket":"arn:aws:s3:::amzn-s3-demo-completion-report-bucket",
           "Prefix":"reports", 
           "Format":"Report_CSV_20180820",
           "Enabled":true,
           "ReportScope":"AllTasks"
       }' \
       --manifest-generator '{
           "S3JobManifestGenerator": {
             "ExpectedBucketOwner": "012345678901",
             "SourceBucket": "arn:aws:s3:::amzn-s3-demo-source-bucket",
             "EnableManifestOutput": true,
             "ManifestOutputLocation": {
               "ExpectedManifestBucketOwner": "012345678901",
               "Bucket": "arn:aws:s3:::amzn-s3-demo-manifest-bucket",
               "ManifestPrefix": "prefix",
               "ManifestFormat": "S3InventoryReport_CSV_20211130"
             },
             "Filter": {
               "CreatedAfter": "2023-09-01",
               "CreatedBefore": "2023-10-01",
               "KeyNameConstraint": {
                 "MatchAnyPrefix": [
                   "prefix"
                 ],
                 "MatchAnySuffix": [
                   "suffix"
                 ]
               },
               "ObjectSizeGreaterThanBytes": 100,
               "ObjectSizeLessThanBytes": 200,
               "MatchAnyStorageClass": [
                 "STANDARD",
                 "STANDARD_IA"
               ]
             }
           }
         }' \
        --priority 2 \
        --role-arn IAM-role \
        --region us-east-1
   ```

   En réponse, Amazon S3 renvoie un ID de tâche (par exemple, `00e123a4-c0d8-41f4-a0eb-b46f9ba5b07c`). Vous aurez besoin de cet ID de tâche pour identifier, surveiller ou modifier la tâche.

------

### À l'aide du AWS SDK pour Java
<a name="batch-ops-examples-java-create-job"></a>

Pour créer votre tâche Batch Operations avec le AWS SDK for Java, vous pouvez choisir entre deux approches selon que vous spécifiez un manifeste existant ou que vous générez un manifeste automatiquement :
+ *Spécifier le manifeste existant :* créez une tâche S3 Batch Operations (par exemple, `S3PutObjectTagging`) qui agit sur les objets répertoriés dans un fichier manifeste existant. Cette approche nécessite que vous fournissiez l'emplacement du manifeste et ETag les spécifications de format.
+ *Générer un manifeste automatiquement :* créez une tâche S3 Batch Operations (par exemple, `s3PutObjectCopy`) qui génère automatiquement un manifeste sur la base de vos critères de filtre d’objet, notamment la date de création, le nom de la clé et les contraintes de taille.

Les deux approches utilisent le client S3Control pour configurer les opérations des tâches, les spécifications des manifestes, les rapports de tâches, les rôles IAM et d’autres paramètres des tâches, notamment les exigences de priorité et de confirmation.

Pour des exemples de création de tâches S3 Batch Operations avec le AWS SDK for Java, [consultez la section Créer une tâche par lots pour copier](https://docs.aws.amazon.com/AmazonS3/latest/API/s3-control_example_s3-control_CreateJob_section.html) des objets dans *le manuel Amazon S3 API* Reference.

### Utilisation de l'API REST
<a name="batch-ops-examples-rest-create-job"></a>

Vous pouvez utiliser l’API REST pour créer une tâche Batch Operations. Pour plus d’informations, consultez [https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateJob.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateJob.html) dans la *Référence d’API Amazon Simple Storage Service*. 

## Réponses à la tâche
<a name="batch-ops-create-job-response-elements"></a>

Si la demande `CreateJob` aboutit, Amazon S3 renvoie un ID de tâche. L’ID de tâche est un identifiant unique généré automatiquement par Amazon S3 afin que vous puissiez identifier votre tâche Batch Operations et surveiller son statut.

Lorsque vous créez une tâche via l'API AWS CLI AWS SDKs, ou REST, vous pouvez configurer S3 Batch Operations pour commencer à traiter la tâche automatiquement. La tâche s’exécute dès qu’elle est prête, au lieu d’attendre que des tâches de plus haute priorité soient traitées en premier.

Lorsque vous créez une tâche via la console Amazon S3, vous devez vérifier les détails de la tâche et confirmer que vous voulez l’exécuter avant que Batch Operations commence à la traiter. Si une tâche reste suspendue pendant plus de 30 jours, elle échouera.