Gestion des politiques des 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 des 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, de la CLI AWS SDKs et de la AWS CLI. Pour plus d’informations, consultez les rubriques suivantes. Pour plus d'informations sur les actions prises en charge AWS Identity and Access Management (IAM), consultezAutorisation des opérations d’API de point de terminaison régional avec IAM. Pour voir des exemples de politiques de compartiment pour les compartiments de répertoires, consultez Exemples de politiques de compartiment pour les compartiments de répertoires.

Ajout d’une politique de compartiment

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

Pour créer ou modifier une politique 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 volet de navigation de gauche, choisissez Directory buckets.

  3. Dans la liste des compartiments du répertoire, choisissez le nom du compartiment auquel vous souhaitez ajouter une politique.

  4. Sélectionnez l’onglet Autorisations.

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

  6. Pour générer une politique automatiquement, choisissez Générateur de stratégies.

    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 l’opération pour autant d’instructions que vous souhaitez ajouter. Pour plus d’informations sur ces champs, consultez la Référence des éléments de politique IAM JSON dans le Guide de l’utilisateur IAM.

      Note

      Pour plus de commodité, la page Modifier la stratégie de compartiment affiche l’ARN (Amazon Resource Name) du compartiment actuel au-dessus du champ de texte Stratégie. 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 Fermer et revenez à la page Modifier la stratégie de compartiment dans la console Amazon S3.

  7. 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 politiques de compartiment sont limitées à une taille de 20 Ko.

  8. 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--zone-id--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 créer une politique de compartiment à un compartiment de répertoires à l’aide de l’ AWS CLI. Pour utiliser la commande, remplacez les user input placeholders par vos propres informations.

aws s3api put-bucket-policy --bucket bucket-base-name--zone-id--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/amzn-s3-demo-bucket--usw2-az1--x-s3" } ] }

Pour de plus amples informations, veuillez consulter put-bucket-policy dans le AWS Command Line Interface.

Affichage d’une politique de compartiment

Pour supprimer une politique pour un compartiment de répertoires, reportez-vous aux exemples suivants.

Cet exemple montre comment afficher la politique de compartiment attachée à un compartiment de répertoires à l’aide de l’ AWS CLI. Pour utiliser la commande, remplacez les user input placeholders par vos propres informations.

aws s3api get-bucket-policy --bucket bucket-base-name--zone-id--x-s3

Pour de plus amples informations, veuillez consulter get-bucket-policy dans le AWS Command Line Interface.

Suppression d’une politique de compartiment

Pour supprimer une politique pour un compartiment de répertoires, 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épertoires à l’aide de l’ AWS CLI. Pour utiliser la commande, remplacez les user input placeholders par vos propres informations.

aws s3api delete-bucket-policy --bucket bucket-base-name--zone-id--x-s3

Pour de plus amples informations, veuillez consulter delete-bucket-policy dans le AWS Command Line Interface.