View a markdown version of this page

En utilisant les commandes API-Level (s3api) du AWS CLI - AWS Command Line Interface

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.

En utilisant les commandes API-Level (s3api) du AWS CLI

Les API-level commandes (contenues dans le jeu de s3api commandes) fournissent un accès direct aux API Amazon Simple Storage Service (Amazon S3) et permettent certaines opérations qui ne sont pas exposées dans les s3 commandes de haut niveau. Ces commandes sont équivalentes aux autres AWS services qui permettent d' API-level accéder aux fonctionnalités des services. Pour plus d’informations sur les commandes s3, consultez À l'aide des commandes de haut niveau (s3) du AWS CLI

Cette rubrique fournit des exemples qui montrent comment utiliser les commandes de niveau inférieur mappées aux API Amazon S3. En outre, vous pouvez trouver des exemples pour chaque commande de l'API S3 dans la s3api AWS CLI version 2.

Conditions préalables

Pour exécuter les commandes s3api, vous devez respecter les conditions requises suivantes :

Application d’une liste ACL personnalisée

Avec les commandes de haut niveau, vous pouvez utiliser l’option --acl pour appliquer des listes de contrôle d’accès (ACL) prédéfinies aux objets Amazon S3. Mais vous ne pouvez pas utiliser cette commande pour définir des listes ACL à l’échelle du compartiment. Vous pouvez toutefois le faire à l'aide de la put-bucket-acl API-level commande.

L'exemple suivant montre comment accorder un contrôle total à deux AWS utilisateurs (user1@example.com et user2@example.com) et une autorisation de lecture à tout le monde. L’identifiant pour « tout le monde » provient d’un URI spécial que vous passez en tant que paramètre.

$ aws s3api put-bucket-acl --bucket amzn-s3-demo-bucket --grant-full-control 'emailaddress="user1@example.com",emailaddress="user2@example.com"' --grant-read 'uri="http://acs.amazonaws.com/groups/global/AllUsers"'

Pour plus de détails sur la création des listes ACL, consultez PUT Bucket acl dans la Référence des API Amazon Simple Storage Service. Les commandes ACL s3api de l’interface de ligne de commande, telles que put-bucket-acl, utilisent la même notation d’argument raccourcie.

Configuration d’une politique de journalisation

La commande d’API put-bucket-logging configure une politique de journalisation des compartiments.

Dans l'exemple suivant, l' AWS utilisateur user@example.com dispose d'un contrôle total sur les fichiers journaux, et tous les utilisateurs ont un accès en lecture à ceux-ci. Notez que la commande put-bucket-acl est également requise pour accorder au système de diffusion des journaux d’Amazon S3 (spécifié par un URI) les autorisations nécessaires pour lire et écrire les journaux dans le compartiment.

$ aws s3api put-bucket-acl --bucket amzn-s3-demo-bucket --grant-read-acp 'URI="http://acs.amazonaws.com/groups/s3/LogDelivery"' --grant-write 'URI="http://acs.amazonaws.com/groups/s3/LogDelivery"' $ aws s3api put-bucket-logging --bucket amzn-s3-demo-bucket --bucket-logging-status file://logging.json

Le fichier logging.json dans la commande précédente contient les éléments suivants.

{ "LoggingEnabled": { "TargetBucket": "amzn-s3-demo-bucket", "TargetPrefix": "amzn-s3-demo-bucketLogs/", "TargetGrants": [ { "Grantee": { "Type": "AmazonCustomerByEmail", "EmailAddress": "user@example.com" }, "Permission": "FULL_CONTROL" }, { "Grantee": { "Type": "Group", "URI": "http://acs.amazonaws.com/groups/global/AllUsers" }, "Permission": "READ" } ] } }

Ressources

AWS CLI référence :

Référence du service :