

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.

# Octroi d’autorisations pour Batch Operations
<a name="batch-ops-iam-role-policies"></a>

Avant de créer et d’exécuter des tâches S3 Batch Operations, vous devez accorder les autorisations requises. Pour créer une tâche S3 Batch Operations, l’autorisation de l’utilisateur `s3:CreateJob` est requise. La même entité qui crée la tâche doit également être `iam:PassRole` autorisée à transmettre le rôle Gestion des identités et des accès AWS (IAM) spécifié pour la tâche à Batch Operations.

Les sections suivantes fournissent des informations sur la création d’un rôle IAM et l’attachement de stratégies. Pour des informations générales sur la spécification des ressources IAM, voir [Éléments de politique IAM JSON : ressource](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_resource.html) dans le guide de l'utilisateur *IAM*.

**Topics**
+ [Création d’un rôle IAM S3 Batch Operations](#batch-ops-iam-role-policies-create)
+ [Attachement des stratégies d’autorisations](#batch-ops-iam-role-policies-perm)

## Création d’un rôle IAM S3 Batch Operations
<a name="batch-ops-iam-role-policies-create"></a>

Amazon S3 doit avoir l’autorisation d’effectuer des tâches S3 Batch Operations en votre nom. Vous accordez ces autorisations par le biais d'un rôle Gestion des identités et des accès AWS (IAM). Lorsque vous créez une tâche S3 Batch Operations, vous spécifiez le rôle IAM que vous souhaitez que la tâche utilise. Il peut s'agir d'un rôle IAM existant. Ou, si vous utilisez la console Amazon S3 pour créer la tâche, il peut s'agir d'un rôle IAM créé par Amazon S3 pour vous.

Si vous choisissez de laisser Amazon S3 créer le rôle IAM pour vous, il crée et associe automatiquement des politiques de confiance et d'autorisation au rôle. La politique de confiance permet au principal du service S3 Batch Operations (`batchoperations.s3.amazonaws.com`) d'assumer le rôle. La politique d'autorisation autorise toutes les actions requises pour exécuter le travail, en fonction des paramètres que vous spécifiez pour le travail. Par exemple, si vous configurez une tâche pour copier des objets d'un compartiment vers un autre de votre compartiment Compte AWS, la politique d'autorisation autorise des actions telles que `s3:GetObject` et`s3:PutObject`. Vous pouvez consulter les politiques de confiance et d'autorisation relatives au rôle avant de soumettre le travail. Cette option n'est disponible que si vous utilisez la console Amazon S3 pour créer une tâche et que vous configurez la tâche pour utiliser une liste d'objets générée par S3 qui utilise des filtres ou est basée sur une configuration de réplication. Une fois que vous avez soumis la tâche, le rôle IAM est conservé dans votre compte. Vous pouvez ensuite l'utiliser à nouveau pour les tâches suivantes qui exécutent la même opération, ou le supprimer une fois l'exécution de la tâche terminée.

Si vous préférez créer le rôle IAM manuellement, les exemples de politique présentés dans cette section peuvent vous aider à créer le rôle. Pour plus d'informations sur la création et la configuration des rôles, consultez la section [Rôles IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) dans le Guide de l'*utilisateur IAM*. Pour plus d'informations sur les autorisations pour les opérations d'API S3 par type de ressource S3, consultez[Autorisations requises pour les opérations d’API Amazon S3](using-with-s3-policy-actions.md). Pour des exemples supplémentaires, reportez-vous [Contrôle des autorisations pour les opérations par lot à l’aide de balises de tâche](batch-ops-job-tags-examples.md) aux sections et[Copie d’objets à l’aide de S3 Batch Operations](batch-ops-examples-copy.md).

Dans vos politiques IAM, vous pouvez également utiliser des clés de condition pour filtrer les autorisations d’accès pour les tâches S3 Batch Operations. Pour obtenir plus d’informations ainsi que la liste complète des clés de condition spécifiques à Amazon S3, consultez [Actions, ressources et clés de condition pour Amazon S3](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazons3.html) dans la *Référence de l’autorisation de service*.

Pour plus d’informations sur les autorisations relatives aux opérations d’API S3 par type de ressource S3, consultez [Autorisations requises pour les opérations d’API Amazon S3](using-with-s3-policy-actions.md).

La vidéo suivante explique comment configurer les autorisations IAM pour les tâches 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/)


### Stratégie d’approbation
<a name="batch-ops-iam-role-policies-trust"></a>

Vous attachez la stratégie d’approbation suivante au rôle IAM afin de permettre au principal de service S3 Batch Operations d’endosser le rôle.

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Effect":"Allow",
         "Principal":{
            "Service":"batchoperations.s3.amazonaws.com"
         },
         "Action":"sts:AssumeRole"
      }
   ]
}
```

------

## Attachement des stratégies d’autorisations
<a name="batch-ops-iam-role-policies-perm"></a>

En fonction du type d’opérations, vous pouvez attacher l’une des stratégies suivantes.

Avant de configurer les autorisations, veuillez noter ce qui suit :
+ Indépendamment de l’opération, Amazon S3 a besoin d’autorisations pour lire l’objet manifeste depuis votre compartiment S3 et, éventuellement, écrire un rapport dans votre compartiment. Dès lors, toutes les stratégies d’autorisations suivantes incluent ces autorisations.
+ Pour les manifestes de rapport Amazon S3 Inventory, S3 Batch Operations nécessite l’autorisation de lire l’objet manifest.json et tous les fichiers de données CSV associés.
+ Des autorisations spécifiques à la version comme `s3:GetObjectVersion` sont requises uniquement quand vous spécifiez l’ID de version des objets.
+ Si vous exécutez S3 Batch Operations sur des objets chiffrés, le rôle IAM doit également avoir accès aux AWS KMS clés utilisées pour les chiffrer.
+ Si vous soumettez un manifeste de rapport d'inventaire chiffré avec AWS KMS, votre politique IAM doit inclure les autorisations relatives à l'objet manifest.json `"kms:Decrypt"` et `"kms:GenerateDataKey"` à tous les fichiers de données CSV associés.
+ Si la tâche Batch Operations génère un manifeste dans un bucket dans lequel les listes de contrôle d'accès (ACLs) sont activées et qui se trouve dans un autre compartiment Compte AWS, vous devez accorder l'`s3:PutObjectAcl`autorisation dans la politique IAM du rôle IAM configuré pour la tâche par lots. Si vous n’incluez pas cette autorisation, le traitement par lot échoue avec l’erreur `Error occurred when preparing manifest: Failed to write manifest`.

### Copie d’objets : PutObject
<a name="batch-ops-put-copy-object-policy"></a>

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "s3:PutObject",
                "s3:PutObjectAcl",
                "s3:PutObjectTagging"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:s3:::amzn-s3-demo-destination-bucket/*"
        },
        {
            "Action": [
                "s3:GetObject",
                "s3:GetObjectAcl",
                "s3:GetObjectTagging",
                "s3:ListBucket"
            ],
            "Effect": "Allow",
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-source-bucket",
                "arn:aws:s3:::amzn-s3-demo-source-bucket/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:GetObjectVersion"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-manifest-bucket/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:PutObject"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-completion-report-bucket/*"
            ]
        }
    ]
}
```

------

### Remplacement des balises d’objet : PutObjectTagging
<a name="batch-ops-put-object-tagging-policy"></a>

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement":[
    {
      "Effect":"Allow",
      "Action":[
        "s3:PutObjectTagging",
        "s3:PutObjectVersionTagging"
      ],
      "Resource": "arn:aws:s3:::amzn-s3-demo-destination-bucket/*"
    },
    {
      "Effect": "Allow",
      "Action": [
        "s3:GetObject",
        "s3:GetObjectVersion"
      ],
      "Resource": [
        "arn:aws:s3:::amzn-s3-demo-manifest-bucket/*"
      ]
    },
    {
      "Effect":"Allow",
      "Action":[
        "s3:PutObject"
      ],
      "Resource":[
        "arn:aws:s3:::amzn-s3-demo-completion-report-bucket/*"
      ]
    }
  ]
}
```

------

### Suppression du balisage d’un objet : DeleteObjectTagging
<a name="batch-ops-delete-object-tagging-policy"></a>

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
              "s3:DeleteObjectTagging",
              "s3:DeleteObjectVersionTagging"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-destination-bucket/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:GetObjectVersion"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-manifest-bucket/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:PutObject"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-completion-report-bucket/*"
            ]
        }
    ]
}
```

------

### Remplacement de la liste de contrôle d’accès : PutObjectAcl
<a name="batch-ops-put-object-acl-policy"></a>

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:PutObjectAcl",
        "s3:PutObjectVersionAcl"
      ],
      "Resource": "arn:aws:s3:::amzn-s3-demo-destination-bucket/*"
    },
    {
      "Effect": "Allow",
      "Action": [
        "s3:GetObject",
        "s3:GetObjectVersion"
      ],
      "Resource": [
        "arn:aws:s3:::amzn-s3-demo-manifest-bucket/*"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "s3:PutObject"
      ],
      "Resource": [
        "arn:aws:s3:::amzn-s3-demo-completion-report-bucket/*"
      ]
    }
  ]
}
```

------

### Restauration des objets : RestoreObject
<a name="batch-ops-initiate-restore-policy"></a>

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement":[
    {
      "Effect":"Allow",
      "Action":[
          "s3:RestoreObject"
      ],
      "Resource": "arn:aws:s3:::amzn-s3-demo-destination-bucket/*"
    },
    {
      "Effect": "Allow",
      "Action": [
        "s3:GetObject",
        "s3:GetObjectVersion"
      ],
      "Resource": [
        "arn:aws:s3:::amzn-s3-demo-manifest-bucket/*"
      ]
    },
    {
      "Effect":"Allow",
      "Action":[
        "s3:PutObject"
      ],
      "Resource":[
        "arn:aws:s3:::amzn-s3-demo-completion-report-bucket/*"
      ]
    }
  ]
}
```

------

### Application de la rétention du verrouillage d’objet : PutObjectRetention
<a name="batch-ops-put-object-lock-policy"></a>

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "s3:GetBucketObjectLockConfiguration",
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-destination-bucket"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:PutObjectRetention",
                "s3:BypassGovernanceRetention"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-destination-bucket/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:GetObjectVersion"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-manifest-bucket/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:PutObject"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-completion-report-bucket/*"
            ]
        }
    ]
}
```

------

### Applications de la conservation légale du verrouillage d’objet : PutObjectLegalHold
<a name="batch-ops-put-object-legal-hold-policy"></a>

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "s3:GetBucketObjectLockConfiguration",
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-destination-bucket"
            ]
        },
        {
            "Effect": "Allow",
            "Action": "s3:PutObjectLegalHold",
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-destination-bucket/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:GetObjectVersion"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-manifest-bucket/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:PutObject"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-completion-report-bucket/*"
            ]
        }
    ]
}
```

------

### Réplication d’objets existants : InitiateReplication avec un manifeste généré par S3
<a name="batch-ops-batch-replication-policy"></a>

Optez pour cette politique si vous utilisez et stockez un manifeste généré par S3. Pour plus d’informations sur l’utilisation de Batch Operations pour répliquer des objets existants, consultez [Réplication d’objets existants via la réplication par lot](s3-batch-replication-batch.md).

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Action":[
            "s3:InitiateReplication"
         ],
         "Effect":"Allow",
         "Resource":[
            "arn:aws:s3:::amzn-s3-demo-source-bucket/*"
         ]
      },
      {
         "Action":[
            "s3:GetReplicationConfiguration",
            "s3:PutInventoryConfiguration"
         ],
         "Effect":"Allow",
         "Resource":[
            "arn:aws:s3:::amzn-s3-demo-source-bucket"
         ]
      },
      {
         "Action":[
            "s3:GetObject",
            "s3:GetObjectVersion"
         ],
         "Effect":"Allow",
         "Resource":[
            "arn:aws:s3:::amzn-s3-demo-manifest-bucket/*"
         ]
      },
      {
         "Effect":"Allow",
         "Action":[
            "s3:PutObject"
         ],
         "Resource":[
            "arn:aws:s3:::amzn-s3-demo-completion-report-bucket/*",
            "arn:aws:s3:::amzn-s3-demo-manifest-bucket/*"    
         ]
      }
   ]
}
```

------

### Réplication d’objets existants : InitiateReplication avec un manifeste utilisateur
<a name="batch-ops-batch-replication-policy-user"></a>

Utilisez cette politique si vous utilisez un manifeste fourni par l’utilisateur. Pour plus d’informations sur l’utilisation des opérations par lot pour répliquer des objets existants, consultez [Réplication d’objets existants via la réplication par lot](s3-batch-replication-batch.md).

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Action":[
            "s3:InitiateReplication"
         ],
         "Effect":"Allow",
         "Resource":[
            "arn:aws:s3:::amzn-s3-demo-source-bucket/*"
         ]
      },
      {
         "Action":[
            "s3:GetObject",
            "s3:GetObjectVersion"
         ],
         "Effect":"Allow",
         "Resource":[
            "arn:aws:s3:::amzn-s3-demo-manifest-bucket/*"
         ]
      },
      {
         "Effect":"Allow",
         "Action":[
            "s3:PutObject"
         ],
         "Resource":[
            "arn:aws:s3:::amzn-s3-demo-completion-report-bucket/*"    
         ]
      }
   ]
}
```

------

### Calculer la somme de contrôle : Autoriser `GetObject``GetObjectVersion`,`RestoreObject`, et `PutObject`
<a name="batch-ops-compute-object-checksum-policies"></a>

Utilisez cette politique si vous essayez d’utiliser l’opération **Calculer la somme de contrôle** avec S3 Batch Operations. Les autorisations `GetObject`, `GetObjectVersion` et `RestoreObject` sont requises pour obtenir et lire les octets de données stockées. Remplacez les espaces réservés à la saisie utilisateur par vos propres informations. Pour plus d’informations sur l’opération **Calculer la somme de contrôle**, consultez [Vérification de l’intégrité des données d’un objet au repos dans Amazon S3](checking-object-integrity-at-rest.md).

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:GetObject",
        "s3:GetObjectVersion",
        "s3:RestoreObject"
      ],
      "Resource": [
        "arn:aws:s3:::amzn-s3-demo-bucket1/*"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "s3:GetObject",
        "s3:GetObjectVersion"
      ],
      "Resource": [
        "arn:aws:s3:::amzn-s3-demo-bucket2/*"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "s3:PutObject"
      ],
      "Resource": [
        "arn:aws:s3:::amzn-s3-demo-bucket3/*"
      ]
    }
  ]
}
```

### Mettre à jour le chiffrement des objets
<a name="batch-ops-update-encryption-policies"></a>

Vous devez joindre la politique d'autorisation suivante pour permettre à Batch Operations de lire un manifeste, de mettre à jour le type de chiffrement de vos objets et de rédiger un rapport d'achèvement. Pour utiliser cette politique d'autorisation, remplacez-la *`user input placeholders`* par vos propres informations. Pour plus d'informations sur l'utilisation de cette opération et sur les autorisations que vous devez attribuer au rôle utilisé par votre principal IAM, consultez[Mettre à jour le chiffrement des objets](batch-ops-update-encryption.md).

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [{
            "Sid": "S3BatchOperationsUpdateEncryption",
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:GetObjectVersion",
                "s3:PutObject",
                "s3:UpdateObjectEncryption"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket-target"
                "arn:aws:s3:::amzn-s3-demo-bucket-target/*"
            ]
        },
        {
            "Sid": "S3BatchOperationsPolicyForManifestFile",
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:GetObject",
                "s3:GetObjectVersion"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket-manifest/*"
            ]
        },
        {
            "Sid": "S3BatchOperationsPolicyForCompletionReport",
            "Effect": "Allow",
            "Action": [
                "s3:PutObject"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket-completion-report/*"
            ]
        },
        {
            "Sid": "S3BatchOperationsPolicyManifestGeneration",
            "Effect": "Allow",
            "Action": [
                "s3:PutInventoryConfiguration"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket-target"
            ]
        }
        {
            "Sid": "AllowKMSOperationsForS3BatchOperations",
            "Effect": "Allow",
            "Action": [
                "kms:Decrypt",
                "kms:GenerateDataKey",
                "kms:Encrypt",
                "kms:ReEncrypt*"
            ],
            "Resource": [
                "arn:aws:kms:us-east-1:111122223333:key/01234567-89ab-cdef-0123-456789abcdef"
            ]
        }
    ]
}
```