Octroi d’autorisations pour Batch Operations
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 avoir l’autorisation iam:PassRole pour pouvoir transmettre le rôle AWS Identity and Access Management (IAM) spécifié pour la tâche à Batch Operations.
Pour plus d’informations générales sur la spécification des ressources IAM, consultez Éléments de stratégie JSON IAM : Ressource dans le Guide de l’utilisateur IAM. Les sections suivantes fournissent des informations sur la création d’un rôle IAM et l’attachement de stratégies.
Création d’un rôle IAM S3 Batch Operations
Amazon S3 doit avoir l’autorisation d’effectuer des tâches S3 Batch Operations en votre nom. Vous pouvez accorder ces autorisations via un rôle AWS Identity and Access Management (IAM). Cette section fournit des exemples de stratégies d’approbation et d’autorisation que vous utilisez lors de la création d’un rôle IAM. Pour plus d’informations, consultez Rôles IAM dans le Guide de l’utilisateur IAM. Pour obtenir des exemples, consultez Contrôle des autorisations pour Batch Operations à l’aide de balises de tâche et Copie d’objets à l’aide de S3 Batch Operations.
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 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.
La vidéo suivante inclut la procédure de configuration d’autorisations IAM pour des tâches Batch Operations à l’aide de la AWS Management Console.
Stratégie d’approbation
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.
Attachement des stratégies d’autorisations
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:GetObjectVersionsont 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 clés AWS KMS 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
"kms:Decrypt"et"kms:GenerateDataKey"pour l’objet manifest.json et tous les fichiers de données CSV associés. Si la tâche Batch Operations génère un manifeste dans un compartiment pour lequel les listes de contrôle d’accès (ACL) sont activées et qui se trouve dans un autre Compte AWS, vous devez accorder l’autorisation
s3:PutObjectAcldans la politique IAM du rôle IAM configuré pour le traitement par lot. Si vous n’incluez pas cette autorisation, le traitement par lot échoue avec l’erreurError occurred when preparing manifest: Failed to write manifest.
Copie d’objets : PutObject
Remplacement des balises d’objet : PutObjectTagging
Suppression du balisage d’un objet : DeleteObjectTagging
Remplacement de la liste de contrôle d’accès : PutObjectAcl
Restauration des objets : RestoreObject
Application de la rétention du verrouillage d’objet : PutObjectRetention
Applications de la conservation légale du verrouillage d’objet : PutObjectLegalHold
Réplication d’objets existants : InitiateReplication avec un manifeste généré par S3
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.
Réplication d’objets existants : InitiateReplication avec un manifeste utilisateur
Utilisez cette politique si vous utilisez un manifeste fourni par l’utilisateur. 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.
Calculer la somme de contrôle : autorisez GetObject, GetObjectVersion, RestoreObject et PutObject
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.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion", "s3:RestoreObject" ], "Resource": [ "arn:aws:s3:::/*" ] }, { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket1/*" ] }, { "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket2/*" ] } ] }amzn-s3-demo-bucket3