Autorisations pour le compartiment Amazon S3 pour le canal AWS Config de diffusion - AWS Config

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.

Autorisations pour le compartiment Amazon S3 pour le canal AWS Config de diffusion

Important

Cette page explique comment configurer le compartiment Amazon S3 pour le canal AWS Config de diffusion. Cette page ne traite pas du type de AWS::S3::Bucket ressource que l'enregistreur AWS Config de configuration peut enregistrer. Pour plus d'informations sur le canal AWS Config de diffusion, consultez la section Gestion du canal de diffusion.

Par défaut, tous les objets et les compartiments Amazon S3 sont privés. Seul le propriétaire de la ressource Compte AWS qui a créé le compartiment peut accéder à ce compartiment. Le propriétaire de la ressource peut toutefois accorder des autorisations d'accès à d'autres ressources et à d'autres utilisateurs. Une solution consiste à écrire une stratégie d'accès.

Si un compartiment Amazon S3 est AWS Config créé automatiquement pour vous (par exemple, si vous utilisez AWS Config la console pour configurer votre canal de diffusion), ces autorisations sont automatiquement ajoutées au compartiment Amazon S3. Toutefois, si vous spécifiez un compartiment Amazon S3 existant, vous devez vous assurer que le compartiment S3 dispose des autorisations appropriées.

Note

un objet n'hérite pas des autorisations de son compartiment. Par exemple, si vous créez un compartiment et accordez un accès en écriture à un utilisateur, vous ne pouvez pas accéder à ses objets sauf s'il vous accorde explicitement l'accès.

Autorisations requises pour le compartiment Amazon S3 lors de l'utilisation de rôles IAM

Lorsque AWS Config vous envoyez des informations de configuration (fichiers d'historique et instantanés) au compartiment Amazon S3 de votre compte, il assume le rôle IAM que vous avez attribué lors de la configuration. AWS Config Lorsqu' AWS Config envoie les informations de configuration à un compartiment Amazon S3 d'un autre compte, il tente d'abord d'utiliser le rôle IAM, mais cette tentative échoue si la stratégie d'accès pour le compartiment n'accorde pas l'accès WRITE au rôle IAM. Dans ce cas, AWS Config envoie à nouveau les informations, cette fois en tant que principal du AWS Config service. Pour que la livraison puisse réussir, la politique d'accès doit autoriser l'WRITEaccès au nom config.amazonaws.com principal. AWS Config est alors le propriétaire des objets qu'il livre au compartiment S3. Vous devez attacher une stratégie d'accès (mentionnée à l'étape 6 ci-dessous) au compartiment Amazon S3 d'un autre compte pour accorder à AWS Config un accès à ce compartiment Amazon S3.

Avant de AWS Config pouvoir envoyer des journaux à votre compartiment Amazon S3, AWS Config vérifie si le compartiment existe et dans quelle AWS région il se trouve. AWS Config tente d'appeler HeadBucketl'API Amazon S3 pour vérifier si le compartiment existe et pour obtenir la région du compartiment. Si aucune autorisation n'est fournie pour localiser le compartiment lors de la vérification de localisation, une AccessDenied erreur s'affiche dans AWS CloudTrail les journaux. Toutefois, la diffusion des journaux est effectuée dans votre compartiment Amazon S3 si vous ne fournissez pas d'autorisations sur l'emplacement de ce dernier.

Note

Pour accorder une autorisation à l'API Amazon S3 HeadBucket, autorisez l'exécution de l'action s3:ListBucket en tant que Sid AWSConfigBucketExistenceCheck, comme indiqué à l'étape 6 ci-dessous.

Autorisations requises pour le compartiment Amazon S3 lors de l'utilisation de rôles liés à un service

Le rôle AWS Config lié à un service n'est pas autorisé à placer des objets dans des compartiments Amazon S3. Ainsi, si vous configurez AWS Config en utilisant un rôle lié à un service, il AWS Config enverra plutôt les éléments de configuration en tant que principal du AWS Config service. Vous devrez joindre une politique d'accès, mentionnée à l'étape 6 ci-dessous, au compartiment Amazon S3 dans votre propre compte ou sur un autre compte pour autoriser l' AWS Config accès au compartiment Amazon S3.

Octroi de l' AWS Config accès au compartiment Amazon S3

Suivez les étapes ci-dessous pour ajouter une stratégie d'accès au compartiment Amazon S3 dans votre propre compte ou dans un autre compte. La politique d'accès permet AWS Config d'envoyer des informations de configuration à un compartiment Amazon S3.

  1. Connectez-vous à l' AWS Management Console aide du compte qui possède le compartiment S3.

  2. Ouvrez la console Amazon S3 sur https://console.aws.amazon.com/s3/.

  3. Sélectionnez le compartiment que vous souhaitez utiliser AWS Config pour fournir les éléments de configuration, puis choisissez Propriétés.

  4. Choisissez Autorisations.

  5. Choisissez Modifier la stratégie de compartiment.

  6. Copiez la stratégie suivante dans la fenêtre Éditeur de stratégie de compartiment :

    Important

    Pour des raisons de sécurité, lorsque vous autorisez AWS Config l'accès à un compartiment Amazon S3, nous vous recommandons vivement de restreindre l'accès dans le cadre de la politique de compartiment à AWS:SourceAccount cette condition. Si votre politique de compartiment existante ne suit pas cette bonne pratique de sécurité, nous vous recommandons vivement de la modifier pour inclure cette protection. Cela garantit que l'accès AWS Config est accordé au nom des utilisateurs attendus uniquement.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AWSConfigBucketPermissionsCheck", "Effect": "Allow", "Principal": { "Service": "config.amazonaws.com" }, "Action": "s3:GetBucketAcl", "Resource": "arn:aws:s3:::targetBucketName", "Condition": { "StringEquals": { "AWS:SourceAccount": "sourceAccountID" } } }, { "Sid": "AWSConfigBucketExistenceCheck", "Effect": "Allow", "Principal": { "Service": "config.amazonaws.com" }, "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::targetBucketName", "Condition": { "StringEquals": { "AWS:SourceAccount": "sourceAccountID" } } }, { "Sid": "AWSConfigBucketDelivery", "Effect": "Allow", "Principal": { "Service": "config.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::targetBucketName/[optional] prefix/AWSLogs/sourceAccountID/Config/*", "Condition": { "StringEquals": { "s3:x-amz-acl": "bucket-owner-full-control", "AWS:SourceAccount": "sourceAccountID" } } } ] }
    Note

    Lorsque vous accordez des autorisations à votre rôle IAM au lieu du nom principal du AWS Config service (SPN), assurez-vous que votre rôle IAM dispose d'une PutObjectACL autorisation sur le bucket multi-comptes afin d'éviter toute erreur d'autorisation insuffisante. Consultez un exemple de politique de rôle IAM à l'adresse Politique de rôle IAM pour le compartiment S3.

  7. Remplacez les valeurs suivantes dans la stratégie de compartiment :

    • target BucketName : nom du compartiment Amazon S3 auquel les éléments de configuration AWS Config seront envoyés.

    • [optional] prefix : ajout facultatif à la clé d'objet Amazon S3 qui permet de créer une organisation de type dossier dans le compartiment.

    • sourceAccountId — L'ID du compte pour lequel les éléments de configuration AWS Config seront envoyés au compartiment cible.

  8. Choisissez Enregistrer, puis Fermer.

Vous pouvez utiliser la condition AWS:SourceAccount de la politique de compartiment Amazon S3 susmentionnée pour limiter le principal du service Config, en lui permettant uniquement d'interagir avec le compartiment Amazon S3 lorsqu'il effectue des opérations au nom de comptes spécifiques. Si vous envisagez de configurer AWS Config plusieurs comptes de la même organisation pour fournir des éléments de configuration à un seul compartiment Amazon S3, nous vous recommandons d'utiliser des rôles IAM plutôt que des rôles liés à un service afin de pouvoir utiliser des clés de AWS Organizations conditions telles que. AWS:PrincipalOrgID Pour plus d'informations sur la gestion des autorisations d'accès associées à un rôle IAM à utiliser AWS Config, consultez la section Autorisations relatives au rôle IAM attribué à. AWS Config Pour plus d'informations sur la gestion des autorisations d'accès pour AWS Organizations, consultez la section Gestion des autorisations d'accès pour votre AWS organisation.

AWS Config prend également en charge la AWS:SourceArn condition qui interdit au principal du service Config d'interagir uniquement avec le compartiment Amazon S3 lorsqu'il effectue des opérations pour le compte de canaux de AWS Config distribution spécifiques. Lorsque vous utilisez le principal de AWS Config service, la AWS:SourceArn propriété sera toujours définie comme sourceRegion étant la région du canal de livraison et sourceAccountID l'identifiant du compte contenant le canal de livraison. arn:aws:config:sourceRegion:sourceAccountID:* Pour plus d'informations sur les canaux AWS Config de diffusion, consultez la section Gestion du canal de diffusion. Ajoutez par exemple la condition suivante pour limiter le principal du service Config en lui permettant d'interagir avec votre compartiment Amazon S3 uniquement pour le compte d'un canal de livraison dans la région us-east-1 du compte 123456789012 :"ArnLike": {"AWS:SourceArn": "arn:aws:config:us-east-1:123456789012:*"}.