Gestion des politiques de compartiment pour les compartiments de répertoires - Amazon Simple Storage Service

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.

Gestion des politiques de compartiment pour les compartiments de répertoires

Vous pouvez ajouter, supprimer, mettre à jour et consulter les politiques de compartiment pour les compartiments d'annuaire Amazon S3 à l'aide de la console Amazon S3 et des AWS kits SDK. Pour plus d’informations, consultez les rubriques suivantes. Pour plus d'informations sur les actions AWS Identity and Access Management (IAM) et les clés de condition prises en charge pour S3 Express One Zone, consultezAWS Identity and Access Management (IAM) pour S3 Express One Zone. Pour voir des exemples de politiques de compartiment pour les compartiments de répertoires, consultez Exemples de politiques de compartiment de répertoires pour S3 Express One Zone.

Ajout d'une stratégie de compartiment

Pour ajouter une politique de compartiment à un compartiment de répertoire, vous pouvez utiliser la console Amazon S3, AWS les SDK ou le AWS CLI.

Pour créer ou modifier une stratégie de compartiment
  1. Connectez-vous à la console Amazon S3 AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/s3/.

  2. Dans le panneau de navigation de gauche, choisissez Compartiments.

  3. Choisissez l’onglet Compartiments de répertoires.

  4. Dans la liste Compartiments de répertoires, choisissez le nom du compartiment dans lequel vous souhaitez charger vos dossiers ou fichiers.

  5. Choisissez l’onglet Permissions (Autorisations).

  6. Sous Politique de compartiment, choisissez Modifier. La page Edit bucket policy (Modifier la politique de compartiment) s'affiche.

  7. Pour générer une politique automatiquement, choisissez Générateur de politiques.

    Si vous choisissez le générateur de AWS politiques, celui-ci s'ouvre dans une nouvelle fenêtre.

    Si vous ne souhaitez pas utiliser le générateur de AWS politiques, vous pouvez ajouter ou modifier des instructions JSON dans la section Politique.

    1. Sur la page AWS Policy Generator (Générateur de politiques), pour Select Type of Policy (Sélectionner le type de politique), sélectionnez S3 Bucket Policy (Politique de compartiment S3).

    2. Ajoutez une instruction en saisissant les informations dans les champs fournis, puis choisissez Add Statement (Ajouter une instruction). Répétez cette étape pour tous les énoncés que vous souhaitez ajouter. Pour plus d'informations sur ces champs, consultez la Référence des éléments de stratégie IAM JSON dans le Guide de l'utilisateur IAM.

      Note

      Pour vous faciliter la tâche, la page Modifier la politique du bucket affiche l'ARN du bucket (Amazon Resource Name) du bucket actuel au-dessus du champ de texte de la politique. Vous pouvez copier cet ARN pour l'utiliser dans les instructions de la page AWS Policy Generator (Générateur de politique).

    3. Une fois que vous avez fini d'ajouter des instructions, choisissez Generate Policy (Générer une stratégie).

    4. Copiez le texte de stratégie généré, choisissez Close (Fermer) et revenez à la page Edit bucket policy (Modifier la stratégie de compartiment) dans la console Amazon S3.

  8. Dans la zone Politique, modifiez la politique existante ou collez la politique de compartiment depuis le générateur de AWS politiques. Veillez à résoudre les avertissements de sécurité, les erreurs, les avertissements généraux et les suggestions avant d'enregistrer votre stratégie.

    Note

    Les stratégies de compartiment sont limitées à une taille de 20 Ko.

  9. Choisissez Save changes (Enregistrer les modifications), ce qui vous ramène à l'onglet Permissions (Autorisations).

SDK for Java 2.x

PutBucketPolicy AWS SDK for Java 2.x

public static void setBucketPolicy(S3Client s3Client, String bucketName, String policyText) { //sample policy text /** * policy_statement = { * 'Version': '2012-10-17', * 'Statement': [ * { * 'Sid': 'AdminPolicy', * 'Effect': 'Allow', * 'Principal': { * "AWS": "111122223333" * }, * 'Action': 's3express:*', * 'Resource': 'arn:aws:s3express:region:111122223333:bucket/bucket-base-name--azid--x-s3' * } * ] * } */ System.out.println("Setting policy:"); System.out.println("----"); System.out.println(policyText); System.out.println("----"); System.out.format("On Amazon S3 bucket: \"%s\"\n", bucketName); try { PutBucketPolicyRequest policyReq = PutBucketPolicyRequest.builder() .bucket(bucketName) .policy(policyText) .build(); s3Client.putBucketPolicy(policyReq); System.out.println("Done!"); } catch (S3Exception e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } }

Cet exemple montre comment ajouter une politique de compartiment à un compartiment de répertoire à l'aide du AWS CLI. Pour utiliser la commande, remplacez les espaces réservés saisis par l'utilisateur par vos propres informations.

aws s3api put-bucket-policy --bucket bucket-base-name--azid--x-s3 --policy file://bucket_policy.json

bucket_policy.json :

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AdminPolicy", "Effect": "Allow", "Principal": { "AWS": "111122223333" }, "Action": "s3express*", "Resource": "arn:aws:s3express:us-west-2:111122223333:bucket/bucket-name--usw2-az1--x-s3" } ] }

Pour plus d'informations, consultez put-bucket-policyle AWS Command Line Interface.

Affichage d'une politique de compartiment

Pour consulter une politique de compartiment pour un compartiment de répertoire, utilisez les exemples suivants.

Cet exemple montre comment afficher la politique de compartiment attachée à un compartiment de répertoire à l'aide du AWS CLI. Pour utiliser la commande, remplacez les espaces réservés saisis par l'utilisateur par vos propres informations.

aws s3api get-bucket-policy --bucket bucket-base-name--azid--x-s3

Pour plus d'informations, consultez get-bucket-policyle AWS Command Line Interface.

Suppression d'une politique de compartiment

Pour supprimer une politique de compartiment pour un compartiment de répertoire, utilisez les exemples suivants.

SDK for Java 2.x

DeleteBucketPolicy AWS SDK for Java 2.x

public static void deleteBucketPolicy(S3Client s3Client, String bucketName) { try { DeleteBucketPolicyRequest deleteBucketPolicyRequest = DeleteBucketPolicyRequest .builder() .bucket(bucketName) .build() s3Client.deleteBucketPolicy(deleteBucketPolicyRequest); System.out.println("Successfully deleted bucket policy"); } catch (S3Exception e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); }

Cet exemple montre comment supprimer une politique de compartiment pour un compartiment de répertoire à l'aide du AWS CLI. Pour utiliser la commande, remplacez les espaces réservés saisis par l'utilisateur par vos propres informations.

aws s3api delete-bucket-policy --bucket bucket-base-name--azid--x-s3

Pour plus d'informations, consultez delete-bucket-policyle AWS Command Line Interface.