

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.

# Amazon S3
<a name="automation-ref-s3"></a>

 AWS Systems Manager Automation fournit des runbooks prédéfinis pour Amazon Simple Storage Service. Pour plus d’informations sur les runbooks, consultez [Travailler avec des runbooks](https://docs.aws.amazon.com/systems-manager/latest/userguide/automation-documents.html). Pour plus d'informations sur l'affichage du contenu du runbook, consultez[Afficher le contenu du runbook](automation-runbook-reference.md#view-automation-json). 

**Topics**
+ [`AWS-ArchiveS3BucketToIntelligentTiering`](automation-aws-archives3buckettointelligenttiering.md)
+ [`AWS-ConfigureS3BucketLogging`](automation-aws-configures3bucketlogging.md)
+ [`AWS-ConfigureS3BucketVersioning`](automation-aws-configures3bucketversioning.md)
+ [`AWSConfigRemediation-ConfigureS3BucketPublicAccessBlock`](automation-aws-block-public-s3-bucket.md)
+ [`AWSConfigRemediation-ConfigureS3PublicAccessBlock`](automation-aws-block-public-s3.md)
+ [`AWS-CreateS3PolicyToExpireMultipartUploads`](AWS-CreateS3PolicyToExpireMultipartUploads.md)
+ [`AWS-DisableS3BucketPublicReadWrite`](automation-aws-disables3bucketpublicreadwrite.md)
+ [`AWS-EnableS3BucketEncryption`](automation-aws-enableS3bucketencryption.md)
+ [`AWS-EnableS3BucketKeys`](automation-aws-enableS3bucketkeys.md)
+ [`AWSConfigRemediation-RemovePrincipalStarFromS3BucketPolicy`](automation-aws-remove-s3-wildcard.md)
+ [`AWSConfigRemediation-RestrictBucketSSLRequestsOnly`](automation-aws-s3-deny-http.md)
+ [`AWSSupport-TroubleshootS3PublicRead`](automation-awssupport-troubleshoots3publicread.md)
+ [`AWSSupport-ConfigureS3ReplicationSameAndCrossAccount`](automation-aws-configures3replicationsameandcrossaccount.md)
+ [`AWSSupport-EmptyS3Bucket`](automation-aws-empty-s3-bucket.md)
+ [`AWSSupport-TroubleshootS3EventNotifications`](awssupport-troubleshoot-s3-event-notifications.md)
+ [`AWSSupport-ContainS3Resource`](automation-awssupport-contains3resource.md)

# `AWS-ArchiveS3BucketToIntelligentTiering`
<a name="automation-aws-archives3buckettointelligenttiering"></a>

 **Description** 

Le `AWS-ArchiveS3BucketToIntelligentTiering` runbook crée ou remplace une configuration de hiérarchisation intelligente pour le bucket Amazon Simple Storage Service (Amazon S3) que vous spécifiez.

 [Exécuter cette automatisation (console)](https://console.aws.amazon.com/systems-manager/automation/execute/AWS-ArchiveS3BucketToIntelligentTiering) 

**Type de document**

 Automatisation

**Propriétaire**

Amazon

**Plateformes**

LinuxmacOS, Windows

**Paramètres**
+ AutomationAssumeRole

  Type : Chaîne

  Description : (Facultatif) Le nom de ressource Amazon (ARN) du rôle Gestion des identités et des accès AWS (IAM) qui permet à Systems Manager Automation d'effectuer les actions en votre nom. Si aucun rôle n'est spécifié, Systems Manager Automation utilise les autorisations de l'utilisateur qui lance ce runbook.
+ BucketName

  Type : Chaîne

  Description : (Obligatoire) Nom du compartiment S3 pour lequel vous souhaitez créer une configuration de hiérarchisation intelligente.
+ ConfigurationId

  Type : Chaîne

   Description : (Obligatoire) L'ID de la configuration de hiérarchisation intelligente. Il peut s'agir d'un nouvel ID de configuration ou de l'ID d'une configuration existante.
+ NumberOfDaysToArchive

  Type : Chaîne

  Valeurs valides : 90-730

  Description : (Obligatoire) Nombre de jours consécutifs après qu'un objet de votre compartiment est éligible à la transition vers le niveau d'accès aux archives.
+ NumberOfDaysToDeepArchive

  Type : Chaîne

  Valeurs valides : 180-730

  Description : (Obligatoire) Nombre de jours consécutifs après qu'un objet de votre bucket est éligible à la transition vers le niveau Deep Archive Access.
+ S3Prefix

  Type : Chaîne

  Description : (Facultatif) Le préfixe du nom clé des objets auxquels vous souhaitez appliquer la configuration.
+ Étiquettes

  Type : MapList

  Description : (Facultatif) Métadonnées attribuées aux objets auxquels vous souhaitez appliquer la configuration. Les balises se composent d'une clé et d'une valeur définies par l'utilisateur.

**Autorisations IAM requises**

Le `AutomationAssumeRole` paramètre nécessite les actions suivantes pour utiliser correctement le runbook.
+ `ssm:StartAutomationExecution`
+ `ssm:GetAutomationExecution`
+ `s3:GetIntelligentTieringConfiguration`
+ `s3:PutIntelligentTieringConfiguration`

 **Étapes de document** 
+ PutsBucketIntelligentTieringConfiguration (AWS:ExecuteScript) - Crée ou met à jour une configuration Amazon S3 Intelligent-Tiering pour le compartiment spécifié.
+ VerifyBucketIntelligentTieringConfiguration(aws : assertAwsResource Propriété) - Vérifie que la configuration intelligente du compartiment S3 a été appliquée au compartiment spécifié. 

# `AWS-ConfigureS3BucketLogging`
<a name="automation-aws-configures3bucketlogging"></a>

 **Description** 

Activez la journalisation sur un bucket Amazon Simple Storage Service (Amazon S3).

**Important**  
Notez les informations importantes suivantes concernant l'ACL Email Grantee pour l'[PutBucketLogging](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLogging.html)API Amazon S3, qui est utilisée par ce runbook :  
Avis de fin de prise en charge : à compter du 1er octobre 2025, Amazon S3 cessera de prendre en charge la création de nouvelles listes de contrôle d’accès (ACL) par e-mail pour les bénéficiaires. Le bénéficiaire du courrier électronique ACLs créé avant cette date continuera de fonctionner et restera accessible via les API AWS Management Console, AWS CLI (CLI) et REST. SDKs Cependant, vous ne serez plus en mesure de créer un nouveau bénéficiaire ACLs par e-mail. Entre le 15 juillet 2025 et le 1er octobre 2025, vous commencerez à constater une augmentation du taux d'erreurs HTTP 405 pour les demandes adressées à Amazon S3 lors de la tentative de création d'un nouveau bénéficiaire ACLs d'e-mail.

 [Exécuter cette automatisation (console)](https://console.aws.amazon.com/systems-manager/automation/execute/AWS-ConfigureS3BucketLogging) 

**Type de document**

 Automatisation

**Propriétaire**

Amazon

**Plateformes**

LinuxmacOS, Windows

**Paramètres**
+ AutomationAssumeRole

  Type : Chaîne

  Description : (Facultatif) Le nom de ressource Amazon (ARN) du rôle Gestion des identités et des accès AWS (IAM) qui permet à Systems Manager Automation d'effectuer les actions en votre nom. Si aucun rôle n'est spécifié, Systems Manager Automation utilise les autorisations de l'utilisateur qui lance ce runbook.
+ BucketName

  Type : Chaîne

  Description : (Obligatoire) Nom du compartiment Amazon S3 pour lequel vous souhaitez configurer la journalisation.
+ GrantedPermission

  Type : Chaîne

  Valeurs valides : FULL\$1CONTROL \$1 READ \$1 WRITE

  Description : (Obligatoire) autorisations de journalisation attribuées au bénéficiaire du compartiment.
+ GranteeEmailAddress

  Type : Chaîne

  (Facultatif) Adresse e-mail du bénéficiaire.
+ GranteeId

  Type : Chaîne

  Description : (Facultatif) ID d'utilisateur canonique du bénéficiaire.
+ GranteeType

  Type : Chaîne

  Valeurs valides : CanonicalUser \$1 AmazonCustomerByEmail \$1 Groupe

  Description : (Obligatoire) type de bénéficiaire.
+ GranteeUri

  Type : Chaîne

  Description : (Facultatif) URI du groupe de bénéficiaires.
+ TargetBucket

  Type : Chaîne

  Description : (Obligatoire) Spécifie le compartiment dans lequel vous souhaitez qu'Amazon S3 stocke les journaux d'accès au serveur. Les journaux peuvent être fournis dans n'importe quel compartiment que vous possédez. Vous pouvez également configurer plusieurs compartiments pour diffuser leurs journaux vers le même compartiment cible. Dans ce cas, vous devez en choisir un différent TargetPrefix pour chaque compartiment source afin que les fichiers journaux fournis puissent être distingués par clé.
+ TargetPrefix

  Type : Chaîne

  Par défaut : /

  Description : (Facultatif) spécifie un préfixe pour les clés sous lesquelles les fichiers journaux sont stockés.

# `AWS-ConfigureS3BucketVersioning`
<a name="automation-aws-configures3bucketversioning"></a>

 **Description** 

Configurez le versionnement pour un bucket Amazon Simple Storage Service (Amazon S3).

 [Exécuter cette automatisation (console)](https://console.aws.amazon.com/systems-manager/automation/execute/AWS-ConfigureS3BucketVersioning) 

**Type de document**

 Automatisation

**Propriétaire**

Amazon

**Plateformes**

LinuxmacOS, Windows

**Paramètres**
+ AutomationAssumeRole

  Type : Chaîne

  Description : (Facultatif) Le nom de ressource Amazon (ARN) du rôle Gestion des identités et des accès AWS (IAM) qui permet à Systems Manager Automation d'effectuer les actions en votre nom. Si aucun rôle n'est spécifié, Systems Manager Automation utilise les autorisations de l'utilisateur qui lance ce runbook.
+ BucketName

  Type : Chaîne

  Description : (Obligatoire) Le nom du compartiment Amazon S3 pour lequel vous souhaitez configurer le versionnement.
+ VersioningState

  Type : Chaîne

  Valeurs valides : Activé \$1 Suspendu

  Par défaut : Enabled

   Description : (Facultatif) Appliqué au VersioningConfiguration .Status. Lorsque ce paramètre est défini sur « Enabled », ce processus permet la gestion des versions pour les objets du compartiment. Tous les objets ajoutés à ce compartiment reçoivent un ID de version unique. Lorsqu'il est défini sur`Suspended`, ce processus désactive la gestion des versions pour les objets du compartiment. Tous les objets ajoutés au compartiment reçoivent l'ID de version`null`. 

# `AWSConfigRemediation-ConfigureS3BucketPublicAccessBlock`
<a name="automation-aws-block-public-s3-bucket"></a>

 **Description** 

 Le `AWSConfigRemediation-ConfigureS3BucketPublicAccessBlock` runbook configure les paramètres de blocage de l'accès public Amazon Simple Storage Service (Amazon S3) pour un compartiment Amazon S3 en fonction des valeurs que vous spécifiez dans les paramètres du runbook. 

 [Exécuter cette automatisation (console)](https://console.aws.amazon.com/systems-manager/automation/execute/AWSConfigRemediation-ConfigureS3BucketPublicAccessBlock) 

**Type de document**

 Automatisation

**Propriétaire**

Amazon

**Plateformes**

LinuxmacOS, Windows

**Paramètres**
+ AutomationAssumeRole

  Type : Chaîne

  Description : (Obligatoire) Le nom de ressource Amazon (ARN) du rôle Gestion des identités et des accès AWS (IAM) qui permet à Systems Manager Automation d'effectuer les actions en votre nom.
+ BlockPublicAcls

  Type : Boolean

  Valeur par défaut : true

   Description : (Facultatif) Si ce paramètre est défini sur`true`, Amazon S3 bloque les listes de contrôle d'accès public (ACLs) pour le compartiment S3, ainsi que les objets stockés dans le compartiment S3 que vous spécifiez dans le `BucketName` paramètre. 
+ BlockPublicPolicy

  Type : Boolean

  Valeur par défaut : true

   Description : (Facultatif) Si ce paramètre est défini sur`true`, Amazon S3 bloque les politiques de compartiment public pour le compartiment S3 que vous spécifiez dans le `BucketName` paramètre. 
+ BucketName

  Type : Chaîne

  Description : (Obligatoire) Nom du compartiment S3 que vous souhaitez configurer.
+ IgnorePublicAcls

  Type : Boolean

  Valeur par défaut : true

   Description : (Facultatif) Si ce paramètre est défini sur`true`, Amazon S3 ignore tout le public ACLs pour le compartiment S3 que vous spécifiez dans le `BucketName` paramètre. 
+ RestrictPublicBuckets

  Type : Boolean

  Valeur par défaut : true

   Description : (Facultatif) Si ce paramètre est défini sur`true`, Amazon S3 restreint les politiques de compartiment public pour le compartiment S3 que vous spécifiez dans le `BucketName` paramètre. 

**Autorisations IAM requises**

Le `AutomationAssumeRole` paramètre nécessite les actions suivantes pour utiliser correctement le runbook.
+  `ssm:StartAutomationExecution` 
+  `ssm:GetAutomationExecution` 
+  `s3:GetAccountPublicAccessBlock` 
+  `s3:PutAccountPublicAccessBlock` 
+  `s3:GetBucketPublicAccessBlock` 
+  `s3:PutBucketPublicAccessBlock` 

 **Étapes de document** 
+  `aws:executeAwsApi`- Crée ou modifie la `PublicAccessBlock` configuration du compartiment S3 spécifié dans le `BucketName` paramètre. 
+  `aws:executeScript`- Renvoie la `PublicAccessBlock` configuration du compartiment S3 spécifié dans le `BucketName` paramètre et vérifie que les modifications ont été effectuées avec succès sur la base des valeurs spécifiées dans les paramètres du runbook. 

# `AWSConfigRemediation-ConfigureS3PublicAccessBlock`
<a name="automation-aws-block-public-s3"></a>

 **Description** 

 Le `AWSConfigRemediation-ConfigureS3PublicAccessBlock` runbook configure les paramètres de blocage d'accès public Compte AWS Amazon Simple Storage Service (Amazon S3) d'un utilisateur en fonction des valeurs que vous spécifiez dans les paramètres du runbook. 

 [Exécuter cette automatisation (console)](https://console.aws.amazon.com/systems-manager/automation/execute/AWSConfigRemediation-ConfigureS3PublicAccessBlock) 

**Type de document**

 Automatisation

**Propriétaire**

Amazon

**Plateformes**

LinuxmacOS, Windows

**Paramètres**
+ AccountId

  Type : Chaîne

  Description : (Obligatoire) L'ID du propriétaire du compartiment S3 Compte AWS que vous configurez.
+ AutomationAssumeRole

  Type : Chaîne

  Description : (Obligatoire) Le nom de ressource Amazon (ARN) du rôle Gestion des identités et des accès AWS (IAM) qui permet à Systems Manager Automation d'effectuer les actions en votre nom.
+ BlockPublicAcls

  Type : Boolean

  Valeur par défaut : true

   Description : (Facultatif) Si ce paramètre est défini sur`true`, Amazon S3 bloque les listes de contrôle d'accès public (ACLs) pour les compartiments S3 appartenant à ceux Compte AWS que vous spécifiez dans le `AccountId` paramètre. 
+ BlockPublicPolicy

  Type : Boolean

  Valeur par défaut : true

   Description : (Facultatif) Si ce paramètre est défini sur`true`, Amazon S3 bloque les politiques de compartiment public pour les compartiments S3 appartenant à ceux Compte AWS que vous spécifiez dans le `AccountId` paramètre. 
+ IgnorePublicAcls

  Type : Boolean

  Valeur par défaut : true

   Description : (Facultatif) Si ce paramètre est défini sur`true`, Amazon S3 ignore tous les compartiments publics ACLs pour S3 appartenant à ceux Compte AWS que vous spécifiez dans le `AccountId` paramètre. 
+ RestrictPublicBuckets

  Type : Boolean

  Valeur par défaut : true

   Description : (Facultatif) Si ce paramètre est défini sur`true`, Amazon S3 restreint les politiques relatives aux compartiments publics pour les compartiments S3 appartenant à ceux Compte AWS que vous spécifiez dans le `AccountId` paramètre. 

**Autorisations IAM requises**

Le `AutomationAssumeRole` paramètre nécessite les actions suivantes pour utiliser correctement le runbook.
+  `ssm:StartAutomationExecution` 
+  `ssm:GetAutomationExecution` 
+  `s3:GetAccountPublicAccessBlock` 
+  `s3:PutAccountPublicAccessBlock` 

 **Étapes de document** 
+  `aws:executeAwsApi`- Crée ou modifie la `PublicAccessBlock` configuration pour ce qui est Compte AWS spécifié dans le `AccountId` paramètre. 
+  `aws:executeScript`- Renvoie la `PublicAccessBlock` configuration Compte AWS spécifiée dans le `AccountId` paramètre et vérifie que les modifications ont été effectuées avec succès en fonction des valeurs spécifiées dans les paramètres du runbook. 

# `AWS-CreateS3PolicyToExpireMultipartUploads`
<a name="AWS-CreateS3PolicyToExpireMultipartUploads"></a>

 **Description** 

Le `AWS-CreateS3PolicyToExpireMultipartUploads` runbook crée une politique de cycle de vie pour un compartiment spécifique qui expire après un certain nombre de jours pour les téléchargements partiels incomplets en cours. Ce manuel fusionne la nouvelle politique de cycle de vie avec toutes les politiques de compartiment de cycle de vie existantes qui existent déjà.

 [Exécuter cette automatisation (console)](https://console.aws.amazon.com/systems-manager/automation/execute/AWS-CreateS3PolicyToExpireMultipartUploads) 

**Type de document**

 Automatisation

**Propriétaire**

Amazon

**Plateformes**

LinuxmacOS, Windows

**Paramètres**
+ AutomationAssumeRole

  Type : Chaîne

  Description : (Facultatif) Le nom de ressource Amazon (ARN) du rôle Gestion des identités et des accès AWS (IAM) qui permet à Systems Manager Automation d'effectuer les actions en votre nom. Si aucun rôle n'est spécifié, Systems Manager Automation utilise les autorisations de l'utilisateur qui lance ce runbook.
+ BucketName

  Type : Chaîne

  Description : (Obligatoire) Nom du compartiment S3 que vous souhaitez configurer.
+ DaysUntilExpire

  Type : Integer

   Description : (Obligatoire) Nombre de jours pendant lesquels Amazon S3 attend avant de supprimer définitivement toutes les parties du téléchargement.
+ RuleId

  Type : Chaîne

   Description : (Obligatoire) L'ID utilisé pour identifier la règle du bucket de cycle de vie. Il doit s'agir d'une valeur unique.
+ S3Prefix

  Type : Chaîne

   Description : (Facultatif) Le préfixe du nom clé des objets auxquels vous souhaitez appliquer la configuration.

**Autorisations IAM requises**

Le `AutomationAssumeRole` paramètre nécessite les actions suivantes pour utiliser correctement le runbook.
+ `ssm:GetAutomationExecution`
+ `ssm:StartAutomationExecution`
+ `s3:GetLifecycleConfiguration`
+ `s3:PutLifecycleConfiguration`

 **Étapes de document** 
+ ConfigureExpireMultipartUploads (AWS:ExecuteScript) - Configure la politique de cycle de vie du bucket.
+ VerifyExpireMultipartUploads (AWS:ExecuteScript) - Vérifie que la politique de cycle de vie a été configurée pour le bucket.

 **Sorties** 
+ `VerifyExpireMultipartUploads.VerifyExpireMultipartUploadsResponse`
+ `VerifyExpireMultipartUploads.LifecycleConfigurationRule`

# `AWS-DisableS3BucketPublicReadWrite`
<a name="automation-aws-disables3bucketpublicreadwrite"></a>

 **Description** 

 Utilisez Amazon Simple Storage Service (Amazon `Block Public Access` S3) pour désactiver l'accès en lecture et en écriture à un compartiment S3 public. Pour plus d'informations, consultez la section [Utilisation d'Amazon S3 Block Public Access](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-control-block-public-access.html) dans le *guide de l'utilisateur d'Amazon Simple Storage Service*. 

 [Exécuter cette automatisation (console)](https://console.aws.amazon.com/systems-manager/automation/execute/AWS-DisableS3BucketPublicReadWrite) 

**Type de document**

 Automatisation

**Propriétaire**

Amazon

**Plateformes**

LinuxmacOS, Windows

**Paramètres**
+ AutomationAssumeRole

  Type : Chaîne

  Description : (Facultatif) Le nom de ressource Amazon (ARN) du rôle Gestion des identités et des accès AWS (IAM) qui permet à Systems Manager Automation d'effectuer les actions en votre nom. Si aucun rôle n'est spécifié, Systems Manager Automation utilise les autorisations de l'utilisateur qui lance ce runbook.
+ S3 BucketName

  Type : Chaîne

  Description : (obligatoire) compartiment S3 au niveau duquel vous souhaitez restreindre l'accès.

# `AWS-EnableS3BucketEncryption`
<a name="automation-aws-enableS3bucketencryption"></a>

 **Description** 

Configure le chiffrement par défaut pour un bucket Amazon Simple Storage Service (Amazon S3).

 [Exécuter cette automatisation (console)](https://console.aws.amazon.com/systems-manager/automation/execute/AWS-EnableS3BucketEncryption) 

**Type de document**

 Automatisation

**Propriétaire**

Amazon

**Plateformes**

LinuxmacOS, Windows

**Paramètres**
+ AutomationAssumeRole

  Type : Chaîne

  Description : (Facultatif) Le nom de ressource Amazon (ARN) du rôle Gestion des identités et des accès AWS (IAM) qui permet à Systems Manager Automation d'effectuer les actions en votre nom. Si aucun rôle n'est spécifié, Systems Manager Automation utilise les autorisations de l'utilisateur qui lance ce runbook.
+ BucketName

  Type : Chaîne

  Description : (obligatoire) nom du compartiment S3 dans lequel vous souhaitez chiffrer le contenu.
+ SSEAlgorithm

  Type : Chaîne

  Par défaut : AES256

  Description : (Facultatif) algorithme de chiffrement côté serveur à utiliser pour le chiffrement par défaut.

# `AWS-EnableS3BucketKeys`
<a name="automation-aws-enableS3bucketkeys"></a>

 **Description** 

Le `AWS-EnableS3BucketKeys` runbook active les clés de compartiment sur le compartiment Amazon Simple Storage Service (Amazon S3) que vous spécifiez. Cette clé au niveau du compartiment crée des clés de données pour les nouveaux objets au cours de leur cycle de vie. Si vous ne spécifiez aucune valeur pour le `KmsKeyId` paramètre, le chiffrement côté serveur à l'aide de clés gérées Amazon S3 (SSE-S3) est utilisé pour la configuration de chiffrement par défaut. 

**Note**  
Les clés de compartiment Amazon S3 ne sont pas prises en charge pour le chiffrement double couche côté serveur avec des clés AWS Key Management Service (AWS KMS) (DSSE-KMS).

 [Exécuter cette automatisation (console)](https://console.aws.amazon.com/systems-manager/automation/execute/AWS-EnableS3BucketKeys) 

**Type de document**

 Automatisation

**Propriétaire**

Amazon

**Plateformes**

LinuxmacOS, Windows

**Paramètres**
+ AutomationAssumeRole

  Type : Chaîne

  Description : (Facultatif) Le nom de ressource Amazon (ARN) du rôle Gestion des identités et des accès AWS (IAM) qui permet à Systems Manager Automation d'effectuer les actions en votre nom. Si aucun rôle n'est spécifié, Systems Manager Automation utilise les autorisations de l'utilisateur qui lance ce runbook.
+ BucketName

  Type : Chaîne

  Description : (Obligatoire) Nom du compartiment S3 pour lequel vous souhaitez activer les clés de compartiment.
+ KMSKeyID

  Type : Chaîne

   Description : (Facultatif) Le nom de ressource Amazon (ARN), l'ID de clé ou l'alias de clé AWS Key Management Service (AWS KMS) gérée par le client que vous souhaitez utiliser pour le chiffrement côté serveur.

**Autorisations IAM requises**

Le `AutomationAssumeRole` paramètre nécessite les actions suivantes pour utiliser correctement le runbook.
+ `ssm:StartAutomationExecution`
+ `ssm:GetAutomationExecution`
+ `s3:GetEncryptionConfiguration`
+ `s3:PutEncryptionConfiguration`

 **Étapes de document** 
+ ChooseEncryptionType (aws:branch) - Évalue la valeur fournie pour le `KmsKeyId` paramètre afin de déterminer si SSE-S3 (AES256) ou SSE-KMS seront utilisés.
+ PutBucketKeysKMS (aws :executeAwsApi) - Définit la `BucketKeyEnabled` propriété sur `true` pour le compartiment S3 spécifié en utilisant le paramètre spécifié`KmsKeyId`.
+ PutBucketKeysAES256 (aws :executeAwsApi) - Définit la `BucketKeyEnabled` propriété sur `true` pour le compartiment S3 spécifié avec AES256 chiffrement.
+ VerifyS3 BucketKeysEnabled (aws : assertAwsResource Property) : vérifie que les clés de compartiment sont activées sur le compartiment S3 cible.

# `AWSConfigRemediation-RemovePrincipalStarFromS3BucketPolicy`
<a name="automation-aws-remove-s3-wildcard"></a>

 **Description** 

 Le `AWSConfigRemediation-RemovePrincipalStarFromS3BucketPolicy` runbook supprime les principales déclarations de politique contenant des caractères génériques (`Principal: *`ou`Principal: "AWS": *`) pour les `Allow` actions de votre politique de compartiment Amazon Simple Storage Service (Amazon S3). Les déclarations de politique assorties de conditions sont également supprimées. 

 [Exécuter cette automatisation (console)](https://console.aws.amazon.com/systems-manager/automation/execute/AWSConfigRemediation-RemovePrincipalStarFromS3BucketPolicy) 

**Type de document**

 Automatisation

**Propriétaire**

Amazon

**Plateformes**

LinuxmacOS, Windows

**Paramètres**
+ AutomationAssumeRole

  Type : Chaîne

  Description : (Obligatoire) Le nom de ressource Amazon (ARN) du rôle Gestion des identités et des accès AWS (IAM) qui permet à Systems Manager Automation d'effectuer les actions en votre nom.
+ BucketName

  Type : Chaîne

  Description : (Obligatoire) Le nom du compartiment Amazon S3 dont vous souhaitez modifier la politique.

**Autorisations IAM requises**

Le `AutomationAssumeRole` paramètre nécessite les actions suivantes pour utiliser correctement le runbook.
+  `ssm:StartAutomationExecution` 
+  `ssm:GetAutomationExecution` 
+  `s3:DeleteBucketPolicy` 
+  `s3:GetBucketPolicy` 
+  `s3:PutBucketPolicy` 

 **Étapes de document** 
+  `aws:executeScript`- Modifie la politique du compartiment et vérifie que les principales déclarations de politique comportant des caractères génériques ont été supprimées du compartiment Amazon S3 que vous spécifiez dans le paramètre. `BucketName` 

# `AWSConfigRemediation-RestrictBucketSSLRequestsOnly`
<a name="automation-aws-s3-deny-http"></a>

 **Description** 

 Le `AWSConfigRemediation-RestrictBucketSSLRequestsOnly` runbook crée une déclaration de politique relative au compartiment Amazon Simple Storage Service (Amazon S3) qui refuse explicitement les requêtes HTTP adressées au compartiment Amazon S3 que vous spécifiez. 

 [Exécuter cette automatisation (console)](https://console.aws.amazon.com/systems-manager/automation/execute/AWSConfigRemediation-RestrictBucketSSLRequestsOnly) 

**Type de document**

 Automatisation

**Propriétaire**

Amazon

**Plateformes**

LinuxmacOS, Windows

**Paramètres**
+ AutomationAssumeRole

  Type : Chaîne

  Description : (Obligatoire) Le nom de ressource Amazon (ARN) du rôle Gestion des identités et des accès AWS (IAM) qui permet à Systems Manager Automation d'effectuer les actions en votre nom.
+ BucketName

  Type : Chaîne

  Description : (Obligatoire) Nom du compartiment S3 auquel vous souhaitez refuser les requêtes HTTP.

**Autorisations IAM requises**

Le `AutomationAssumeRole` paramètre nécessite les actions suivantes pour utiliser correctement le runbook.
+  `ssm:StartAutomationExecution` 
+  `ssm:GetAutomationExecution` 
+  `s3:DeleteBucketPolicy` 
+  `s3:GetBucketPolicy` 
+  `s3:PutEncryptionConfiguration` 
+  `s3:PutBucketPolicy` 

 **Étapes de document** 
+  `aws:executeScript`- Crée une politique de compartiment pour le compartiment S3 spécifié dans le `BucketName` paramètre qui refuse explicitement les requêtes HTTP. 

# `AWSSupport-TroubleshootS3PublicRead`
<a name="automation-awssupport-troubleshoots3publicread"></a>

 **Description** 

 Le `AWSSupport-TroubleshootS3PublicRead` runbook diagnostique les problèmes de lecture des objets du compartiment public Amazon Simple Storage Service (Amazon S3) que vous spécifiez dans le paramètre. `S3BucketName` Un sous-ensemble de paramètres est également analysé pour les objets du compartiment S3. 

 [Exécuter cette automatisation (console)](https://console.aws.amazon.com/systems-manager/automation/execute/AWSSupport-TroubleshootS3PublicRead) 

 **Limites** 
+ Cette automatisation ne vérifie pas les points d'accès qui permettent au public d'accéder aux objets.
+ Cette automatisation n'évalue pas les clés de condition dans la politique du compartiment S3.
+ Si vous l'utilisez AWS Organizations, cette automatisation n'évalue pas les politiques de contrôle des services pour confirmer que l'accès à Amazon S3 est autorisé.

**Type de document**

 Automatisation

**Propriétaire**

Amazon

**Plateformes**

LinuxmacOS, Windows

**Paramètres**
+ AutomationAssumeRole

  Type : Chaîne

  Description : (Facultatif) Le nom de ressource Amazon (ARN) du rôle Gestion des identités et des accès AWS (IAM) qui permet à Systems Manager Automation d'effectuer les actions en votre nom. Si aucun rôle n'est spécifié, Systems Manager Automation utilise les autorisations de l'utilisateur qui lance ce runbook.
+ CloudWatchLogGroupName

  Type : Chaîne

  Description : (Facultatif) Le groupe de CloudWatch journaux Amazon Logs dans lequel vous souhaitez envoyer le résultat d'automatisation. Si aucun groupe de journaux correspondant à la valeur que vous spécifiez n'est trouvé, l'automatisation créera un groupe de journaux à l'aide de cette valeur de paramètre. La période de conservation du groupe de journaux créé par cette automatisation est de 14 jours.
+ CloudWatchLogStreamName

  Type : Chaîne

   Description : (Facultatif) Le flux du journal CloudWatch des journaux dans lequel vous souhaitez envoyer la sortie d'automatisation. Si aucun flux de journal correspondant à la valeur que vous spécifiez n'est trouvé, l'automatisation créera un flux de journal à l'aide de cette valeur de paramètre. Si vous ne spécifiez pas de valeur pour ce paramètre, l'automatisation utilisera le `ExecutionId` pour le nom du flux de journal. 
+ HttpGet

  Type : Boolean

  Valeurs valides : true \$1 false

  Valeur par défaut : true

   Description : (Facultatif) Si ce paramètre est défini sur`true`, l'automatisation envoie une requête HTTP partielle aux objets `S3BucketName` que vous spécifiez. Seul le premier octet de l'objet est renvoyé à l'aide de l'en-tête HTTP Range. 
+ IgnoreBlockPublicAccess

  Type : Boolean

  Valeurs valides : true \$1 false

  Valeur par défaut : false

   Description : (Facultatif) Si ce paramètre est défini sur`true`, l'automatisation ignore les paramètres de blocage d'accès public du compartiment S3 que vous spécifiez dans le `S3BucketName` paramètre. Il n'est pas recommandé de modifier ce paramètre par rapport à la valeur par défaut. 
+ MaxObjects

  Type : Integer

  Valeurs valides : 1 à 25

  Par défaut: 5

   Description : (Facultatif) Le nombre d'objets à analyser dans le compartiment S3 que vous spécifiez dans le `S3BucketName` paramètre. 
+ S3 BucketName

  Type : Chaîne

  Description : (Obligatoire) Nom du compartiment S3 à dépanner.
+ S3 PrefixName

  Type : Chaîne

   Description : (Facultatif) Le préfixe du nom clé des objets que vous souhaitez analyser dans votre compartiment S3. Pour plus d'informations, consultez la section [Clés d'objet](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingMetadata.html#object-keys) dans le *guide de l'utilisateur d'Amazon Simple Storage Service*. 
+ StartAfter

  Type : Chaîne

  Description : (Facultatif) Nom de la clé d'objet dans laquelle vous souhaitez que l'automatisation commence à analyser les objets de votre compartiment S3.
+ ResourcePartition

  Type : Chaîne

   Valeurs valides : `aws` \$1 `aws-us-gov` \$1 `aws-cn` 

   Valeur par défaut : `aws` 

  Description : (Obligatoire) La partition dans laquelle se trouve votre compartiment S3.
+ Détaillée

  Type : Boolean

  Valeurs valides : true \$1 false

  Valeur par défaut : false

   Description : (Facultatif) Pour renvoyer des informations plus détaillées lors de l'automatisation, définissez ce paramètre sur`true`. Seuls les messages d'avertissement et d'erreur seront renvoyés si le paramètre est défini sur`false`. 

**Autorisations IAM requises**

Le `AutomationAssumeRole` paramètre nécessite les actions suivantes pour utiliser correctement le runbook.

 Les `logs:PutLogEvents` autorisations`logs:CreateLogGroup`,`logs:CreateLogStream`, et ne sont requises que si vous souhaitez que l'automatisation envoie des données de journal à CloudWatch Logs. 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "iam:SimulateCustomPolicy",
                "iam:GetContextKeysForCustomPolicy",
                "s3:ListAllMyBuckets",
                "logs:CreateLogGroup",
                "logs:CreateLogStream",
                "logs:PutLogEvents",
                "logs:PutRetentionPolicy",
                "s3:GetAccountPublicAccessBlock"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "s3:GetObject",
                "s3:GetObjectAcl",
                "s3:GetObjectTagging"
            ],
            "Resource": "arn:aws:s3:::amzn-s3-demo-bucket1/*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "s3:ListBucket",
                "s3:GetBucketLocation",
                "s3:GetBucketPublicAccessBlock",
                "s3:GetBucketRequestPayment",
                "s3:GetBucketPolicyStatus",
                "s3:GetBucketPolicy",
                "s3:GetBucketAcl"
            ],
            "Resource": "arn:aws:s3:::amzn-s3-demo-bucket1",
            "Effect": "Allow"
        }
    ]
}
```

------

 **Étapes de document** 
+  `aws:assertAwsResourceProperty`- Confirme que le compartiment S3 existe et qu'il est accessible. 
+  `aws:executeScript`- Renvoie l'emplacement du compartiment S3 et votre ID utilisateur canonique. 
+  `aws:executeScript`- Renvoie les paramètres de blocage de l'accès public pour votre compte et le compartiment S3. 
+  `aws:assertAwsResourceProperty`- Confirme que le payeur du compartiment S3 est réglé sur`BucketOwner`. S'il `Requester Pays` est activé sur le compartiment S3, l'automatisation prend fin. 
+  `aws:executeScript`- Renvoie l'état de la politique du compartiment S3 et détermine s'il est considéré comme public. Pour plus d'informations sur les compartiments S3 publics, consultez [La signification du terme « public »](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-control-block-public-access.html#access-control-block-public-access-policy-status) dans le *guide de l'utilisateur d'Amazon Simple Storage Service*. 
+  `aws:executeAwsApi`- Renvoie la politique du compartiment S3. 
+  `aws:executeAwsApi`- Renvoie toutes les clés de contexte présentes dans la politique du compartiment S3. 
+  `aws:assertAwsResourceProperty`- Confirme s'il existe un refus explicite dans la politique du compartiment S3 pour l'action d'`GetObject`API. 
+  `aws:executeAwsApi`- Renvoie la liste de contrôle d'accès (ACL) pour le compartiment S3. 
+  `aws:executeScript`- Crée un groupe de CloudWatch journaux et un flux de journaux si vous spécifiez une valeur pour le `CloudWatchLogGroupName` paramètre. 
+  `aws:executeScript`- Sur la base des valeurs que vous spécifiez dans les paramètres d'entrée du runbook, évalue si l'un des paramètres du compartiment S3 collectés lors de l'automatisation empêche le public d'accéder aux objets. Ce script exécute les fonctions suivantes : 
  + Évalue les paramètres de blocage de l'accès public
  +  Renvoie les objets de votre compartiment S3 en fonction des valeurs que vous spécifiez dans les `StartAfter` paramètres `MaxObjects``S3PrefixName`, et. 
  + Renvoie la politique du compartiment S3 pour simuler une politique IAM personnalisée pour les objets renvoyés par votre compartiment S3.
  +  Exécute une requête HTTP partielle vers les objets renvoyés si le `HttpGet` paramètre est défini sur`true`. Seul le premier octet de l'objet est renvoyé à l'aide de l'en-tête HTTP Range. 
  + Vérifie le nom de clé de l'objet renvoyé pour confirmer s'il se termine par un ou deux points. Les noms de clés d'objet qui se terminent par des points ne peuvent pas être téléchargés depuis la console Amazon S3.
  + Vérifie si le propriétaire de l'objet renvoyé correspond au propriétaire du compartiment S3.
  +  Vérifie si l'ACL de l'objet accorde `READ` `FULL_CONTROL` ou autorise des utilisateurs anonymes. 
  + Renvoie les balises associées à l'objet.
  +  Utilise la stratégie IAM simulée pour confirmer s'il existe un refus explicite pour cet objet dans la politique du compartiment S3 pour l'action d'`GetObject`API. 
  + Renvoie les métadonnées de l'objet pour confirmer que la classe de stockage est prise en charge.
  + Vérifie les paramètres de chiffrement côté serveur de l'objet pour vérifier si l'objet est chiffré à l'aide d'une clé gérée par le client AWS Key Management Service (AWS KMS).

 **Sorties** 

AnalyzeObjects.seau

AnalyzeObjects.objet

# `AWSSupport-ConfigureS3ReplicationSameAndCrossAccount`
<a name="automation-aws-configures3replicationsameandcrossaccount"></a>

 **Description** 

Le manuel `AWSSupport-ConfigureS3ReplicationSameAndCrossAccount` d'automatisation configure la réplication du bucket Amazon Simple Storage Service (Amazon S3) entre un bucket source et un bucket de destination pour des comptes identiques ou intercomptes. Cette automatisation prend en charge la réplication des buckets chiffrés avec le chiffrement côté serveur avec les clés gérées par Amazon S3 (SSE-S3) et le chiffrement côté serveur avec (SSE-KMS). AWS Key Management Service Il prend également en charge le filtrage de réplication sélectif basé sur des préfixes et des balises, le contrôle du temps de réplication Amazon S3 (Amazon S3 RTC) avec un SLA de 15 minutes et la réplication par marqueurs de suppression. L'automatisation exécute les actions suivantes :
+ Valide la compatibilité des paramètres d'entrée et des configurations de compartiment.
+ Vérifie les paramètres de chiffrement sur les compartiments source et de destination.
+ Crée un nouveau rôle Gestion des identités et des accès AWS (IAM) avec les autorisations appropriées pour la réplication s'il n'est pas fourni en entrée.
+ Configure les règles de réplication en fonction de paramètres spécifiés (préfixe, balises ou compartiment entier).
+ Active le versionnement des compartiments s'il n'est pas déjà activé.
+ Configure la configuration de réplication avec des fonctionnalités optionnelles telles que le contrôle du temps de réplication (RTC) et la réplication des marqueurs de suppression.

**Important**  
**Cette automatisation ne prend pas en charge les buckets dotés de règles de réplication existantes.** Le compartiment source ne doit pas avoir de configuration de réplication existante.
**Cette automatisation crée un nouveau rôle IAM** avec les autorisations appropriées pour la réplication si aucune ReplicationRole entrée S3 n'est fournie.
**Cette automatisation ne reproduit pas les objets existants.** La réplication Amazon S3 ne s'applique aux objets qu'une uploaded/created fois la configuration de réplication activée.
Pour la réplication entre comptes, vous devez fournir un rôle IAM dans le compte de destination avec les autorisations appropriées pour les opérations Amazon S3 et les AWS KMS opérations (si le bucket utilise le AWS KMS chiffrement).
Cette automatisation utilise l'`aws:approve`action, qui suspend temporairement l'exécution jusqu'à ce que les principaux désignés approuvent les modifications de configuration. Voir [Exécution d'une automatisation avec des approbateurs](https://docs.aws.amazon.com//systems-manager/latest/userguide/running-automations-require-approvals.html) pour plus d'informations.

 **Fonctionnement** 

Le runbook exécute les étapes suivantes :
+ **ValidateInputParameters**: valide l'exactitude et la compatibilité de tous les paramètres d'entrée afin de garantir une configuration de réplication correcte.
+ **PrepareApprovalMessage**: prépare un message d'approbation contenant tous les paramètres de configuration de réplication pour examen par l'utilisateur.
+ **RequestApproval**: demande l'approbation des utilisateurs autorisés avant d'ajouter la configuration de réplication Amazon S3 dans le compartiment source.
+ **CheckBucketEncryption**: Vérifie la configuration de chiffrement pour les compartiments Amazon S3 source et de destination afin de déterminer les paramètres de réplication compatibles.
+ **BranchOnEncryptionType**: Exécution de branches basée sur le type de chiffrement des compartiments Amazon S3 afin d'appliquer une configuration de réplication appropriée aux compartiments chiffrés SSE-S3 ou SSE-KMS.
+ **Configurer SSES3 la réplication** : configure la réplication Amazon S3 pour les compartiments chiffrés avec le chiffrement côté serveur avec des clés gérées par Amazon S3 (SSE-S3), y compris les rôles IAM et les règles de réplication.
+ **Configurer SSEKMSReplication** : configure la réplication Amazon S3 pour les compartiments chiffrés avec le chiffrement côté serveur avec AWS KMS (SSE-KMS), y compris les rôles IAM, les autorisations clés KMS et les règles de réplication.
+ **CleanupResources**: Nettoie le rôle IAM créé lors de l'échec de la configuration de réplication lorsque S3 n'ReplicationRole est pas fourni en entrée.

 [Exécuter cette automatisation (console)](https://console.aws.amazon.com/systems-manager/automation/execute/AWSSupport-ConfigureS3ReplicationSameAndCrossAccount) 

**Autorisations IAM requises**

Le `AutomationAssumeRole` paramètre nécessite les actions suivantes pour utiliser correctement le runbook.
+ s3 : ListBucket
+ s3 : GetBucketVersioning
+ s3 : GetEncryptionConfiguration
+ s3 : GetBucketLocation
+ s3 : GetReplicationConfiguration
+ s3 : PutBucketVersioning
+ s3 : PutReplicationConfiguration
+ iam : ListRoles
+ iam : GetRole
+ iam : GetRolePolicy
+ iam : ListRoleTags
+ iam : ListAttachedRolePolicies
+ iam : ListRolePolicies
+ iam : SimulatePrincipalPolicy
+ iam : CreateRole
+ iam : TagRole
+ iam : PassRole
+ iam : DeleteRole
+ iam : DeleteRolePolicy
+ iam : DetachRolePolicy
+ iam : PutRolePolicy
+ sets : GetCallerIdentity
+ sns:Publish
+ kms : GetKeyPolicy (lorsque les buckets utilisent SSE-KMS, réplication sur le même compte)
+ kms : DescribeKey (lorsque les buckets utilisent SSE-KMS, réplication sur le même compte)
+ kms : PutKeyPolicy (lorsque les buckets utilisent SSE-KMS, réplication sur le même compte)
+ sts : AssumeRole (pour la réplication entre comptes)

**CrossAccountReplicationRole (pour les scénarios entre comptes) :**

Pour la réplication entre comptes, vous devez fournir un compte CrossAccountReplicationRole dans le compte de destination avec les autorisations suivantes :
+ s3 : ListBucket
+ s3 : GetBucketVersioning
+ s3 : GetBucketLocation
+ s3 : GetBucketPolicy
+ s3 : GetEncryptionConfiguration
+ s3 : PutBucketVersioning
+ s3 : PutBucketPolicy
+ kms : GetKeyPolicy (lorsque le bucket de destination entre comptes utilise SSE-KMS)
+ kms : DescribeKey (lorsque le bucket de destination entre comptes utilise SSE-KMS)
+ kms : PutKeyPolicy (lorsque le bucket de destination entre comptes utilise SSE-KMS)

**S3 ReplicationRole (rôle fourni par le client) :**

Si vous fournissez un S3 existantReplicationRole, il doit disposer des autorisations suivantes :
+ s3 : ListBucket
+ s3 : GetBucketLocation
+ s3 : GetReplicationConfiguration
+ s3 : GetObjectVersionAcl
+ s3 : GetObjectVersionTagging
+ s3 : GetObjectVersionForReplication
+ s3 : GetObjectTagging
+ s3 : ReplicateObject
+ s3 : ReplicateDelete
+ s3 : ReplicateTags
+ s3 : ObjectOwnerOverrideToBucketOwner
+ KMS:Decrypt (pour les scénarios SSE-KMS, clé KMS source)
+ KMS:Encrypt (pour les scénarios SSE-KMS, clé KMS de destination)
+ kms : GenerateDataKey (pour les scénarios SSE-KMS, clé KMS de destination)
+ kms : ReEncrypt \$1 (pour les scénarios SSE-KMS, clé KMS de destination)

Exemple **AutomationAssumeRole**de politique pour la réplication sur **un même compte** :

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "S3Permissions",
            "Effect": "Allow",
            "Action": [
                "s3:GetBucketVersioning",
                "s3:GetEncryptionConfiguration",
                "s3:GetBucketLocation",
                "s3:GetReplicationConfiguration",
                "s3:ListBucket",
                "s3:PutBucketVersioning",
                "s3:PutReplicationConfiguration"
            ],
            "Resource": [
                "arn:aws:s3:::SOURCE_BUCKET",
                "arn:aws:s3:::DESTINATION_BUCKET"
            ]
        },
        {
            "Sid": "IAMReadOperations",
            "Effect": "Allow",
            "Action": [
                "iam:GetRole",
                "iam:GetRolePolicy",
                "iam:ListRoleTags",
                "iam:ListAttachedRolePolicies",
                "iam:ListRolePolicies",
                "iam:SimulatePrincipalPolicy"
            ],
            "Resource": "*"
        },
        {
            "Sid": "IAMListRolesForCleanup",
            "Effect": "Allow",
            "Action": "iam:ListRoles",
            "Resource": "*"
        },
        {
            "Sid": "IAMCreateAndTagRole",
            "Effect": "Allow",
            "Action": [
                "iam:CreateRole",
                "iam:TagRole"
            ],
            "Resource": "arn:aws:iam::ACCOUNT_ID:role/S3RepRole-*",
            "Condition": {
                "StringLike": {
                    "aws:RequestTag/AWSSupport-ConfigureS3ReplicationSameAndCrossAccount": "*"
                }
            }
        },
        {
            "Sid": "IAMPassRole",
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::ACCOUNT_ID:role/S3RepRole-*",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": "s3.amazonaws.com"
                }
            }
        },
        {
            "Sid": "TaggedIAMRoleModifyAndDeleteOperations",
            "Effect": "Allow",
            "Action": [
                "iam:DeleteRole",
                "iam:DeleteRolePolicy",
                "iam:DetachRolePolicy",
                "iam:PutRolePolicy"
            ],
            "Resource": "arn:aws:iam::ACCOUNT_ID:role/S3RepRole-*",
            "Condition": {
                "StringLike": {
                    "aws:ResourceTag/AWSSupport-ConfigureS3ReplicationSameAndCrossAccount": "*"
                }
            }
        },
        {
            "Sid": "STSGetCallerIdentity",
            "Effect": "Allow",
            "Action": "sts:GetCallerIdentity",
            "Resource": "*"
        },
        {
            "Sid": "SNSPublish",
            "Effect": "Allow",
            "Action": "sns:Publish",
            "Resource": "SNS_TOPIC_ARN"
        },
        {
            "Sid": "KMSKeyReadOperations",
            "Effect": "Allow",
            "Action": [
                "kms:GetKeyPolicy",
                "kms:DescribeKey"
            ],
            "Resource": [
                "arn:aws:kms:REGION:ACCOUNT_ID:key/SOURCE_KMS_KEY_ID",
                "arn:aws:kms:REGION:ACCOUNT_ID:key/DESTINATION_KMS_KEY_ID"
            ]
        },
        {
            "Sid": "KMSKeyMutatingOperations",
            "Effect": "Allow",
            "Action": "kms:PutKeyPolicy",
            "Resource": [
                "arn:aws:kms:REGION:ACCOUNT_ID:key/SOURCE_KMS_KEY_ID",
                "arn:aws:kms:REGION:ACCOUNT_ID:key/DESTINATION_KMS_KEY_ID"
            ],
            "Condition": {
                "StringEquals": {
                    "kms:CallerAccount": "ACCOUNT_ID"
                }
            }
        }
    ]
}
```

**Note**  
Les déclarations de politique (KMSKeyReadOperations et KMSKeyMutatingOperations) ne sont requises que lorsque les compartiments utilisent le chiffrement SSE-KMS.

Exemple **AutomationAssumeRole**de politique pour la **réplication entre comptes** :

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "S3SourceBucketOperations",
            "Effect": "Allow",
            "Action": [
                "s3:GetBucketVersioning",
                "s3:GetEncryptionConfiguration",
                "s3:GetBucketLocation",
                "s3:GetReplicationConfiguration",
                "s3:ListBucket",
                "s3:PutBucketVersioning",
                "s3:PutReplicationConfiguration"
            ],
            "Resource": "arn:aws:s3:::SOURCE_BUCKET"
        },
        {
            "Sid": "IAMReadOperations",
            "Effect": "Allow",
            "Action": [
                "iam:GetRole",
                "iam:GetRolePolicy",
                "iam:ListRoleTags",
                "iam:ListAttachedRolePolicies",
                "iam:ListRolePolicies",
                "iam:SimulatePrincipalPolicy"
            ],
            "Resource": "*"
        },
        {
            "Sid": "IAMListRolesForCleanup",
            "Effect": "Allow",
            "Action": "iam:ListRoles",
            "Resource": "*"
        },
        {
            "Sid": "IAMCreateAndTagRole",
            "Effect": "Allow",
            "Action": [
                "iam:CreateRole",
                "iam:TagRole"
            ],
            "Resource": "arn:aws:iam::SOURCE_ACCOUNT_ID:role/S3RepRole-*",
            "Condition": {
                "StringLike": {
                    "aws:RequestTag/AWSSupport-ConfigureS3ReplicationSameAndCrossAccount": "*"
                }
            }
        },
        {
            "Sid": "IAMPassRole",
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::SOURCE_ACCOUNT_ID:role/S3RepRole-*",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": "s3.amazonaws.com"
                }
            }
        },
        {
            "Sid": "TaggedIAMRoleModifyAndDeleteOperations",
            "Effect": "Allow",
            "Action": [
                "iam:DeleteRole",
                "iam:DeleteRolePolicy",
                "iam:DetachRolePolicy",
                "iam:PutRolePolicy"
            ],
            "Resource": "arn:aws:iam::SOURCE_ACCOUNT_ID:role/S3RepRole-*",
            "Condition": {
                "StringLike": {
                    "aws:ResourceTag/AWSSupport-ConfigureS3ReplicationSameAndCrossAccount": "*"
                }
            }
        },
        {
            "Sid": "CrossAccountRoleAssumption",
            "Effect": "Allow",
            "Action": "sts:AssumeRole",
            "Resource": "CROSS_ACCOUNT_REPLICATION_ROLE_ARN"
        },
        {
            "Sid": "STSGetCallerIdentity",
            "Effect": "Allow",
            "Action": "sts:GetCallerIdentity",
            "Resource": "*"
        },
        {
            "Sid": "SNSPublish",
            "Effect": "Allow",
            "Action": "sns:Publish",
            "Resource": "SNS_TOPIC_ARN"
        },
        {
            "Sid": "KMSSourceKeyReadOperations",
            "Effect": "Allow",
            "Action": [
                "kms:GetKeyPolicy",
                "kms:DescribeKey"
            ],
            "Resource": "arn:aws:kms:SOURCE_REGION:SOURCE_ACCOUNT_ID:key/SOURCE_KMS_KEY_ID"
        },
        {
            "Sid": "KMSSourceKeyMutatingOperations",
            "Effect": "Allow",
            "Action": "kms:PutKeyPolicy",
            "Resource": "arn:aws:kms:SOURCE_REGION:SOURCE_ACCOUNT_ID:key/SOURCE_KMS_KEY_ID",
            "Condition": {
                "StringEquals": {
                    "kms:CallerAccount": "SOURCE_ACCOUNT_ID"
                }
            }
        }
    ]
}
```

**Note**  
Les déclarations de politique (KMSSourceKeyReadOperations et KMSSourceKeyMutatingOperations) ne sont requises que lorsque le compartiment source utilise le chiffrement SSE-KMS.
Remplacez CROSS\$1ACCOUNT\$1REPLICATION\$1ROLE\$1ARN par la valeur de paramètre réelle que vous fournissez à l'automatisation. CrossAccountReplicationRole 

Exemple **CrossAccountReplicationRole**de politique :

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "S3DestinationBucketReadOperations",
            "Effect": "Allow",
            "Action": [
                "s3:GetBucketVersioning",
                "s3:GetBucketLocation",
                "s3:GetBucketPolicy",
                "s3:GetEncryptionConfiguration",
                "s3:ListBucket",
                "s3:PutBucketVersioning",
                "s3:PutBucketPolicy"
            ],
            "Resource": "arn:aws:s3:::DESTINATION_BUCKET"
        },
        {
            "Sid": "KMSDestinationKeyReadOperations",
            "Effect": "Allow",
            "Action": [
                "kms:GetKeyPolicy",
                "kms:DescribeKey"
            ],
            "Resource": "arn:aws:kms:DESTINATION_REGION:DESTINATION_ACCOUNT_ID:key/DESTINATION_KMS_KEY_ID"
        },
        {
            "Sid": "KMSDestinationKeyMutatingOperations",
            "Effect": "Allow",
            "Action": "kms:PutKeyPolicy",
            "Resource": "arn:aws:kms:DESTINATION_REGION:DESTINATION_ACCOUNT_ID:key/DESTINATION_KMS_KEY_ID",
            "Condition": {
                "StringEquals": {
                    "kms:CallerAccount": "DESTINATION_ACCOUNT_ID"
                }
            }
        }
    ]
}
```

**Note**  
Les instructions KMS (KMSDestinationKeyReadOperations et KMSDestinationKeyMutatingOperations) ne sont requises que lorsque le compartiment de destination utilise le chiffrement SSE-KMS. Supprimez ces instructions pour les scénarios SSE-S3.

Exemple de politique de CrossAccountReplicationRole confiance :

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "AUTOMATION_ASSUME_ROLE_ARN"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

**Note**  
Remplacez AUTOMATION\$1ASSUME\$1ROLE\$1ARN par la valeur de paramètre réelle que vous fournissez à l'automatisation. AutomationAssumeRole 

Exemple de ReplicationRole politique **S3** :

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "S3SourceBucketPermissions",
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket",
                "s3:GetBucketLocation",
                "s3:GetReplicationConfiguration",
                "s3:GetObjectVersionAcl",
                "s3:GetObjectVersionTagging",
                "s3:GetObjectVersionForReplication",
                "s3:GetObjectTagging"
            ],
            "Resource": [
                "arn:aws:s3:::SOURCE_BUCKET",
                "arn:aws:s3:::SOURCE_BUCKET/*"
            ]
        },
        {
            "Sid": "S3DestinationBucketPermissions",
            "Effect": "Allow",
            "Action": [
                "s3:ReplicateObject",
                "s3:ReplicateDelete",
                "s3:ReplicateTags"
            ],
            "Resource": "arn:aws:s3:::DESTINATION_BUCKET/*"
        },
        {
            "Sid": "S3CrossAccountPermissions",
            "Effect": "Allow",
            "Action": "s3:ObjectOwnerOverrideToBucketOwner",
            "Resource": "arn:aws:s3:::DESTINATION_BUCKET/*"
        },
        {
            "Sid": "KMSSourceKeyPermissions",
            "Effect": "Allow",
            "Action": "kms:Decrypt",
            "Resource": "arn:aws:kms:SOURCE_REGION:SOURCE_ACCOUNT_ID:key/SOURCE_KMS_KEY_ID"
        },
        {
            "Sid": "KMSDestinationKeyPermissions",
            "Effect": "Allow",
            "Action": [
                "kms:Encrypt",
                "kms:GenerateDataKey",
                "kms:ReEncrypt*"
            ],
            "Resource": "arn:aws:kms:DESTINATION_REGION:DESTINATION_ACCOUNT_ID:key/DESTINATION_KMS_KEY_ID"
        }
    ]
}
```

**Note**  
Les instructions KMS (KMSSourceKeyPermissions et KMSDestinationKeyPermissions) ne sont requises que lorsque les compartiments utilisent le chiffrement SSE-KMS.
L'CrossAccountPermissions instruction S3 n'est requise que pour la réplication de compartiments entre comptes.

Exemple de politique de ReplicationRole confiance S3 :

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "s3.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

 **Instructions** 

Pour configurer l'automatisation, procédez comme suit :

1. Accédez [https://console.aws.amazon.com/systems-manager/documents/AWSSupport-ConfigureS3ReplicationSameAndCrossAccount/description](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-ConfigureS3ReplicationSameAndCrossAccount/description)à Systems Manager sous Documents.

1. Sélectionnez **Execute automation** (Exécuter l'automatisation).

1. Pour les paramètres d'entrée, entrez ce qui suit :
   + **AutomationAssumeRole (Obligatoire) :**
     + Description : (Obligatoire) Le nom de ressource Amazon (ARN) du rôle Gestion des identités et des accès AWS (IAM) qui permet à Systems Manager Automation d'effectuer les actions en votre nom. Si aucun rôle n'est spécifié, Systems Manager Automation utilise les autorisations de l'utilisateur qui lance ce runbook.
     + Type : `AWS::IAM::Role::Arn`
   + **SourceBucket (Obligatoire) :**
     + Description : (Obligatoire) Nom du compartiment Amazon S3 source dans lequel les règles de réplication seront créées ou mises à jour.
     + Type : `AWS::S3::Bucket::Name`
   + **DestinationBucket (Obligatoire) :**
     + Description : (Obligatoire) Nom du compartiment Amazon S3 de destination vers lequel les objets seront répliqués.
     + Type : `String`
     + Modèle autorisé : `^[0-9a-z][a-z0-9\\-\\.]{3,63}$`
   + **SourceAccountId (Obligatoire) :**
     + Description : (Obligatoire) L'ID du AWS compte sur lequel se trouve le compartiment source.
     + Type : `String`
     + Modèle autorisé : `^[0-9]{12,13}$`
   + **DestinationAccountId (Obligatoire) :**
     + Description : (Obligatoire) L'ID du AWS compte sur lequel se trouve le compartiment de destination.
     + Type : `String`
     + Modèle autorisé : `^[0-9]{12,13}$`
   + **SnsNotificationArn (Obligatoire) :**
     + Description : (Obligatoire) L'ARN d'une rubrique Amazon Simple Notification Service (Amazon SNS) pour les approbations d'automatisation.
     + Type : `String`
     + Modèle autorisé : `^arn:(aws|aws-cn|aws-us-gov|aws-iso(-[a-z])?):sns:[a-z]{2}(-gov)?(-iso[a-z]?)?-[a-z]{2,10}-[0-9]{1,2}:\\d{12}:[0-9a-zA-Z-_]{1,256}(.fifo)?$`
   + **Approbateurs (obligatoire) :**
     + Description : (Obligatoire) Liste des IAM user/role ARNs autorisés à approuver l'exécution de l'automatisation.
     + Type : `StringList`
     + Modèle autorisé : `^arn:(aws|aws-cn|aws-us-gov|aws-iso(-[a-z])?):iam::\\d{12}:(user|role)/[\\w+=,.@\\-/]+$`
   + **S3 ReplicationRole (facultatif) :**
     + Description : (Facultatif) L'ARN d'un rôle IAM existant à utiliser pour les opérations de réplication Amazon S3. Ce rôle doit être autorisé à lire dans le compartiment source et à écrire dans le compartiment de destination, y compris les autorisations KMS si les compartiments utilisent le chiffrement SSE-KMS. Si ce n'est pas le cas, l'automatisation créera un nouveau rôle avec les autorisations appropriées.
     + Type : `String`
     + Modèle autorisé : `^$|^arn:(aws|aws-cn|aws-us-gov|aws-iso(-[a-z])?):iam::\\d{12}:role/[\\w+=,.@\\-/]+$`
     + Valeur par défaut : `""`
   + **CrossAccountReplicationRole (Facultatif) :**
     + Description : (Facultatif) L'ARN d'un rôle IAM dans le compte de destination que l'automatisation peut assumer. Cela est nécessaire pour la réplication entre comptes. Pour la réplication sur le même compte, laissez ce champ vide.
     + Type : `String`
     + Modèle autorisé : `^$|^arn:(aws|aws-cn|aws-us-gov|aws-iso(-[a-z])?):iam::\\d{12}:role/[\\w+=,.@\\-/]+$`
     + Valeur par défaut : `""`
   + **ReplicateEntireBucket (Facultatif) :**
     + Description : (Facultatif) Si ce paramètre est défini sur`true`, l'ensemble du compartiment sera répliqué et le préfixe et les balises doivent être vides. Si la valeur est fausse, la réplication sera basée sur le préfixe ou les balises spécifiés.
     + Type : `Boolean`
     + Valeurs autorisées : `[true, false]`
     + Valeur par défaut : `true`
   + **ReplicationRuleStatus (Facultatif) :**
     + Description : (Facultatif) Si ce paramètre est défini sur`true`, les règles de réplication créées seront activées. Si ce paramètre est défini sur`false`, les règles de réplication créées seront définies sur **Désactivé**.
     + Type : `Boolean`
     + Valeurs autorisées : `[true, false]`
     + Valeur par défaut : `true`
   + **DeleteMarkerReplicationStatus (Facultatif) :**
     + Description : (Facultatif) Si ce paramètre est défini sur`true`, l'automatisation permet la réplication des marqueurs de suppression.
     + Type : `Boolean`
     + Valeurs autorisées : `[true, false]`
     + Valeur par défaut : `false`
   + **ReplicationTimeControl (Facultatif) :**
     + Description : (Facultatif) Si ce paramètre est défini sur`true`, il active le contrôle du temps de réplication d'Amazon S3 (Amazon S3 RTC) avec un SLA de 15 minutes pour des temps de réplication prévisibles.
     + Type : `Boolean`
     + Valeurs autorisées : `[true, false]`
     + Valeur par défaut : `false`
   + **ReplicaModifications (Facultatif) :**
     + Description : (Facultatif) Si ce paramètre est défini sur`true`, il permet de répliquer les modifications de métadonnées apportées aux objets répliqués, ce qui permet de synchroniser les modifications apportées aux objets répliqués avec la source.
     + Type : `Boolean`
     + Valeurs autorisées : `[true, false]`
     + Valeur par défaut : `false`
   + **Préfixe (facultatif) :**
     + Description : (Facultatif) Filtre de préfixes pour la réplication sélective d'objets dotés de préfixes clés spécifiques. Le préfixe doit se terminer par une barre oblique (/) pour un filtrage correct des préfixes Amazon S3.
     + Type : `String`
     + Modèle autorisé : `^$|^[a-zA-Z0-9!_'()\\-]*/+$`
     + Valeur par défaut : `""`
   + **Balises (facultatives) :**
     + Description : tableau JSON de balises (facultatif) pour filtrer les objets à répliquer. Format pour une seule balise : [\$1"Key » : » TagKey «, "Value » : » TagValue «\$1] et pour plusieurs balises : [\$1" Key » : » TagKey 1", "Value » : » TagValue 1"\$1, \$1"Key » : » TagKey 2", "Value » : » TagValue 2"\$1].
     + Type : `String`
     + Modèle autorisé : `^\\[((\\{\"Key\":\"[a-zA-Z0-9+\\-=.:/ @\\s]{1,128}\",\"Value\":\"[a-zA-Z0-9+\\-=.:/@\\s]{0,256}\"\\})(,\\{\"Key\":\"[a-zA-Z0-9+\\-=.:/ @\\s]{1,128}\",\"Value\":\"[a-zA-Z0-9+\\-=.:/@\\s]{0,256}\"\\})*)?\\]$`
     + Valeur par défaut : `[]`

1. Sélectionnez **Exécuter**.

1. L'automatisation démarre.

1. Le document exécute les étapes suivantes :
   + **ValidateInputParameters**:

     Valide l'exactitude et la compatibilité de tous les paramètres d'entrée afin de garantir une configuration de réplication appropriée.
   + **PrepareApprovalMessage**:

     Prépare le message d'approbation avec tous les paramètres de configuration de réplication pour examen par l'utilisateur.
   + **RequestApproval**:

     Demande l'approbation des utilisateurs autorisés avant de procéder aux modifications de configuration de réplication Amazon S3.
   + **CheckBucketEncryption**:

     Vérifie la configuration de chiffrement pour les compartiments Amazon S3 source et de destination afin de déterminer les paramètres de réplication compatibles.
   + **BranchOnEncryptionType**:

     Exécution de branches basée sur le type de chiffrement des compartiments Amazon S3 afin d'appliquer une configuration de réplication appropriée aux compartiments chiffrés SSE-S3 ou SSE-KMS.
   + **Configurer SSES3 la réplication** :

     Configure la réplication Amazon S3 pour les compartiments chiffrés avec le chiffrement côté serveur avec des clés gérées par Amazon S3 (SSE-S3), y compris les rôles IAM et les règles de réplication.
   + **Configurez SSEKMSReplication** :

     Configure la réplication Amazon S3 pour les compartiments chiffrés avec le chiffrement côté serveur AWS KMS (SSE-KMS), y compris les rôles IAM, les autorisations clés KMS et les règles de réplication.
   + **CleanupResources**:

     Nettoie les rôles IAM créés lors de l'échec de la configuration de réplication lorsque S3 n'ReplicationRole a pas été fourni par le client.

1. Une fois l'opération terminée, passez en revue les résultats de l'étape **Configurer la SSES3 réplication** (pour les compartiments chiffrés SSE-S3) ou de l'SSEKMSReplicationétape **Configurer** (pour les compartiments chiffrés SSE-KMS) pour connaître les résultats de l'exécution, notamment l'état de la configuration de la réplication ainsi que le rôle IAM utilisé pour la réplication.

**Références**

Systems Manager Automation
+ [Exécuter cette automatisation (console)](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-ConfigureS3ReplicationSameAndCrossAccount/description)
+ [Exécuter une automatisation](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-working-executing.html)
+ [Configuration d'une automatisation](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-setup.html)
+ [Support des flux de travail automatisés](https://aws.amazon.com/premiumsupport/technology/saw/)

# `AWSSupport-EmptyS3Bucket`
<a name="automation-aws-empty-s3-bucket"></a>

 **Description** 

 Le runbook `AWSSupport-EmptyS3Bucket` d'automatisation vide un compartiment Amazon Simple Storage Service (Amazon S3) existant en utilisant une règle de configuration d'expiration du cycle de vie. 

**Important**  
Les compartiments Amazon S3 avec authentification multifactorielle (MFA) activée ne sont pas pris en charge.
 Les règles de cycle de vie modifiées par ce runbook suppriment définitivement tous les objets et leurs versions dans le compartiment Amazon S3 spécifié. Vous ne pouvez pas récupérer des objets définitivement supprimés. Pour plus d'informations, consultez [Expiring Objects](https://docs.aws.amazon.com//AmazonS3/latest/userguide/lifecycle-expire-general-considerations.html). 

 **Fonctionnement** 

 Le runbook `AWSSupport-EmptyS3Bucket` exécute les étapes de haut niveau suivantes : 
+ Suspend le versionnement des compartiments, s'il est activé.
+ Met à jour la politique du compartiment afin de refuser tout appel d'`s3:PutObject`API (pour empêcher de nouveaux téléchargements pendant le vidage).
+ Met à jour les règles du cycle de vie pour supprimer tous les objets en fonction des jours d'expiration spécifiés dans les paramètres d'entrée.

**Note**  
Les versions d'objets protégées par Amazon S3 Object Lock ne sont ni supprimées ni remplacées par les configurations du cycle de vie.
Le processus de suppression est asynchrone et peut prendre du temps une fois l'exécution du runbook terminée.

 [Exécuter cette automatisation (console)](https://console.aws.amazon.com/systems-manager/automation/execute/AWSSupport-EmptyS3Bucket) 

**Type de document**

 Automatisation

**Propriétaire**

Amazon

**Plateformes**

/

**Autorisations IAM requises**

Le `AutomationAssumeRole` paramètre nécessite les actions suivantes pour utiliser correctement le runbook.

 Le AutomationAssumeRole paramètre nécessite les actions suivantes pour utiliser correctement le runbook : 
+ SMS : DescribeAutomationExecutions
+ SMS : GetAutomationExecution
+ s3 : GetBucketVersioning
+ s3 : PutBucketVersioning
+ s3 : GetBucketPolicy
+ s3 : GetBucketLifecycleConfiguration
+ s3 : GetLifecycleConfiguration
+ s3 : PutBucketPolicy
+ s3 : PutBucketLifecycleConfiguration
+ s3 : PutLifecycleConfiguration
+ s3 : DeleteBucketPolicy
+ s3 : DeleteBucketLifecycle

 **Instructions** 

Pour configurer l'automatisation, procédez comme suit :

1. Accédez [https://console.aws.amazon.com/systems-manager/documents/AWSSupport-EmptyS3Bucket/description](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-EmptyS3Bucket/description)à Systems Manager sous Documents.

1. Sélectionnez Execute automation (Exécuter l'automatisation).

1. Pour les paramètres d'entrée, entrez ce qui suit :
   + **AutomationAssumeRole (Facultatif) :**

     Amazon Resource Name (ARN) du rôle AWS Gestion des identités et des accès AWS (IAM) qui permet à Systems Manager Automation d'effectuer les actions en votre nom. Si aucun rôle n'est spécifié, Systems Manager Automation utilise les autorisations de l'utilisateur qui lance ce runbook.
   + **S3 BucketName :**

     Le nom du compartiment Amazon S3 que vous souhaitez vider.
   + **SNSTopicArne :**

     Fournissez l'ARN de la rubrique Amazon SNS pour la notification d'approbation. Cette rubrique Amazon SNS est utilisée pour envoyer des notifications d'approbation lorsque cela est nécessaire lors de l'exécution de l'automatisation.
   + **Approbation IAM :**

     Fournissez une liste des principaux AWS authentifiés qui sont en mesure d'approuver ou de rejeter l'action. Le nombre maximum d'approbateurs est `10` de. Vous pouvez spécifier des principes en utilisant l'un de ces formats, un nom d'utilisateur Gestion des identités et des accès AWS (IAM), un ARN d'utilisateur IAM, un ARN de rôle IAM ou un ARN d'utilisateur de rôle IAM assume.
   + **MinimumRequiredApprovals(Facultatif) :**

     Le nombre minimum d'approbations requises pour que l'automatisation reprenne. Si vous ne spécifiez aucune valeur, le système prend par défaut la valeur. `1` La valeur de ce paramètre doit être un nombre positif. La valeur de ce paramètre ne peut pas dépasser le nombre d'approbateurs défini par le paramètre ApproverIam.
   + **NoncurrentVersionExpirationDays(Facultatif) :**

     Spécifiez le nombre de jours pendant lesquels les versions d'objet non actuelles expirent. Lorsqu'elles expirent, Amazon S3 supprime définitivement les versions d'objet anciennes.
     + Valeur par défaut : `1`
     + Valeur maximale : `365`
   + **ExpirationDays (Facultatif) :**

     Spécifiez l'expiration du cycle de vie de l'objet sous forme de jours.
     + Valeur par défaut : `1`
     + Valeur maximale : `365`
   + **AbortIncompleteMultipartUpload(Facultatif) :**

     Spécifiez les jours écoulés depuis le lancement d'un chargement partitionné incomplet pendant lesquels Amazon S3 attendra avant de supprimer définitivement toutes les parties du téléchargement.
     + Valeur par défaut : `1`
     + Valeur maximale : `365`
   + **Remerciement :**

     Veuillez lire les détails complets des actions effectuées par ce manuel d'automatisation et donnez votre consentement `Yes, I understand and acknowledge` si vous reconnaissez les étapes.  
![\[Image contenant des exemples de paramètres d'entrée pour le document AWSSupport-EmptyS 3Bucket.\]](http://docs.aws.amazon.com/fr_fr/systems-manager-automation-runbooks/latest/userguide/images/awssupport-empty-s3-bucket_input_parameters.png)

1. Sélectionnez Exécuter.

1. L'automatisation démarre.

1. Le document exécute les étapes suivantes :
   + **`checkConcurrency`**:

     Garantit qu'il n'y a qu'une seule exécution de ce runbook ciblant le compartiment Amazon S3 spécifié. Si le runbook trouve une autre exécution en cours ciblant le même nom de bucket, il renvoie une erreur et se termine.
   + **`getBucketVersioningConfiguration`**:

     Récupère le statut de version du compartiment Amazon S3 spécifié.
   + **`branchOnStoppingIfMFADeleteEnabled`**(conditionnel) :

     Arrête l'automatisation si l'authentification multifactorielle (MFA) est activée sur le compartiment Amazon S3 spécifié.
   + **`approvalToMakeChangesToTheProvidedS3Bucket`**:

     Attend l'approbation des responsables désignés pour désactiver le versionnement des compartiments et mettre à jour la configuration de la politique des compartiments et des règles de cycle de vie pour le compartiment Amazon S3 spécifié.
   + **`branchOnBucketVersioningStatus`**(conditionnel) :

     Si le versionnement est activé sur le compartiment Amazon S3 spécifié, désactivez-le, sinon continuez à mettre à jour la politique du compartiment et la configuration du cycle de vie.
   + **`suspendBucketVersioning`**:

     Suspend l'état de versionnement du compartiment Amazon S3 spécifié.
   + **`updateBucketPolicyAndLifeCycleConfiguration`**:

     Ajoute ou met à jour la politique de compartiment pour refuser toutes les `s3:PutObject` demandes et met à jour la configuration du cycle de vie pour faire expirer les objets en fonction des paramètres d'entrée fournis par l'utilisateur.
   + **`branchOnFailingIfBucketPropertiesNotUpdated`**(conditionnel) :

     Vérifie le statut de l'`updateBucketPolicyAndLifeCycleConfiguration`étape et essaie de rétablir l'état de versionnement du bucket d'origine s'il est modifié par automatisation.
   + **`branchOnFailureOriginalVersioningStatus`**(conditionnel) :

     En cas d'échec, branches pour déterminer le statut de version d'origine. S'il a été activé et suspendu par cette automatisation, essaie de l'activer à nouveau.
   + **`onFailureRestoreBucketVersioning`**

     Restaure l'état de versionnement activé du compartiment Amazon S3 spécifié.

1. Une fois terminé, consultez la section Sorties pour obtenir les résultats détaillés de l'exécution :  
![\[Image contenant le résultat de l'exécution du document AWSSupport-EmptyS 3Bucket montrant une exécution réussie et une politique de cycle de vie configurée.\]](http://docs.aws.amazon.com/fr_fr/systems-manager-automation-runbooks/latest/userguide/images/awssupport-empty-s3-bucket_outputs.png)
   + **Exécution réussie**

     Ce flux de travail met à jour la règle du cycle de vie du bucket. Les objets seront supprimés conformément à la politique de `Delete-All-AWSSupport-EmptyS3-Bucket` cycle de vie.  
![\[Image contenant la politique de cycle de vie Delete-All-AWSSupport-EmptyS à 3 compartiments configurée.\]](http://docs.aws.amazon.com/fr_fr/systems-manager-automation-runbooks/latest/userguide/images/awssupport-empty-s3-bucket_outputs_lifecycle_policy.png)
   + **Échec de l'exécution**

     Aucune suppression partielle ne sera effectuée. Si l'exécution échoue, le cycle de vie et les autres paramètres du compartiment sont annulés.

**Références**

Systems Manager Automation
+ [Exécuter cette automatisation (console)](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-EmptyS3Bucket/description)
+ [Exécuter une automatisation](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-working-executing.html)
+ [Configuration d'une automatisation](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-setup.html)
+ [Support des flux de travail automatisés](https://aws.amazon.com/premiumsupport/technology/saw/)

Pour plus d'informations sur la gestion des compartiments et des objets Amazon S3, consultez la section [Vidage d'un](https://docs.aws.amazon.com//AmazonS3/latest/userguide/empty-bucket.html) compartiment.

# `AWSSupport-TroubleshootS3EventNotifications`
<a name="awssupport-troubleshoot-s3-event-notifications"></a>

 **Description** 

 Le manuel `AWSSupport-TroubleshootS3EventNotifications` AWS Systems Manager d'automatisation permet de résoudre les problèmes liés aux notifications d'événements de compartiment Amazon Simple Storage Service (Amazon S3) configurées avec des fonctions AWS Lambda , des rubriques Amazon Simple Notification Service (Amazon SNS) ou des files d'attente Amazon Simple Queue Service (Amazon SQS). Il fournit un rapport sur les paramètres de configuration des différentes ressources configurées avec le compartiment Amazon S3 en tant que notification d'événement de destination. 

 **Fonctionnement** 

 Le runbook exécute les étapes suivantes : 
+ Vérifie si le compartiment Amazon S3 existe dans le même compte que celui où `AWSSupport-TroubleshootS3EventNotifications` il est exécuté.
+ Récupère les ressources de destination (AWS Lambda Function, rubrique Amazon SNS ou file d'attente Amazon SQS) configurées en tant que notifications d'événements pour le compartiment Amazon S3 à l'aide de l'API. [GetBucketNotificationConfiguration](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotificationConfiguration.html)
+ Valide l'existence de la ressource de destination, puis passe en revue la politique basée sur les ressources des ressources de destination afin de déterminer si Amazon S3 est autorisé à publier sur la destination.
+ Si vous avez chiffré la destination avec une clé AWS Key Management Service (AWS KMS), la politique des clés est vérifiée pour déterminer si l'accès à Amazon S3 est autorisé.
+ Génère un rapport de toutes les vérifications des ressources de destination.

**Important**  
Ce runbook ne peut évaluer les configurations de notification d'événements que si le propriétaire du compartiment Amazon S3 est le même que celui où le runbook d'automatisation est exécuté. Compte AWS 
En outre, ce runbook ne peut pas évaluer les politiques relatives aux ressources de destination hébergées dans un autre Compte AWS.

 [Exécuter cette automatisation (console)](https://console.aws.amazon.com/systems-manager/automation/execute/AWSSupport-TroubleshootS3EventNotifications) 

**Type de document**

 Automatisation

**Propriétaire**

Amazon

**Plateformes**

LinuxmacOS, Windows

**Paramètres**
+ AutomationAssumeRole

  Type : Chaîne

  Description : (Facultatif) Le nom de ressource Amazon (ARN) du rôle Gestion des identités et des accès AWS (IAM) qui permet à Systems Manager Automation d'effectuer les actions en votre nom. Si aucun rôle n'est spécifié, Systems Manager Automation utilise les autorisations de l'utilisateur qui lance ce runbook.
+ S3 BucketName

  Type : `AWS::S3::Bucket::Name`

  Description : (Obligatoire) Le nom du compartiment Amazon S3 configuré avec des notifications d'événements.

**Autorisations IAM requises**

Le `AutomationAssumeRole` paramètre nécessite les actions suivantes pour utiliser correctement le runbook.
+ `s3:GetBucketLocation`
+ `s3:ListAllMyBuckets`
+ `s3:GetBucketNotification`
+ `sqs:GetQueueAttributes`
+ `sqs:GetQueueUrl`
+ `sns:GetTopicAttributes `
+ `kms:GetKeyPolicy`
+ `kms:DescribeKey`
+ `kms:ListAliases`
+ `lambda:GetPolicy`
+ `lambda:GetFunction`
+ `iam:GetContextKeysForCustomPolicy`
+ `iam:SimulateCustomPolicy`
+ `iam:ListRoles`
+ `ssm:DescribeAutomationStepExecutions`

 **Exemple de politique IAM pour le rôle Automation Assume** 

------
#### [ JSON ]

****  

```
                    {
                        "Version":"2012-10-17",		 	 	 
                        "Statement": [
                            {   
                                "Sid": "S3Permission",
                                "Effect": "Allow",
                                "Action": [
                                    "s3:GetBucketLocation",
                                    "s3:ListAllMyBuckets"
                                ],
                                "Resource": "*"
                            },
                            {   
                                "Sid": "S3PermissionGetBucketNotification",
                                "Effect": "Allow",
                                "Action": [
                                    "s3:GetBucketNotification"
                                ],
                                "Resource": "arn:aws:s3:::amzn-s3-demo-bucket"
                            },
                            {
                                "Sid": "SQSPermission",
                                "Effect": "Allow",
                                "Action": [
                                    "sqs:GetQueueAttributes",
                                    "sqs:GetQueueUrl"
                                ],
                                "Resource": "arn:aws:sqs:us-east-1:111122223333:*"
                            },
                            {
                                "Sid": "SNSPermission",
                                "Effect": "Allow",
                                "Action": [
                                    "sns:GetTopicAttributes"
                                ],
                                "Resource": "arn:aws:sns:us-east-1:111122223333:*"
                            },
                            {   
                            "Sid": "KMSPermission",
                                "Effect": "Allow",
                                "Action": [
                                    "kms:GetKeyPolicy",
                                    "kms:DescribeKey",
                                    "kms:ListAliases"
                                ],
                                "Resource": "arn:aws:kms:us-east-1:111122223333:key/key-id"
                            },
                            {
                                "Sid": "LambdaPermission",
                                "Effect": "Allow",
                                "Action": [
                                    "lambda:GetPolicy",
                                    "lambda:GetFunction"
                                ],
                                "Resource": "arn:aws:lambda:us-east-1:111122223333:function:*"
                            },
                            {
                                "Sid": "IAMPermission",
                                "Effect": "Allow",
                                "Action": [
                                    "iam:GetContextKeysForCustomPolicy",
                                    "iam:SimulateCustomPolicy",
                                    "iam:ListRoles"
                                ],
                                "Resource": "*"
                            },
                            {
                                "Sid": "SSMPermission",
                                "Effect": "Allow",
                                "Action": [
                                    "ssm:DescribeAutomationStepExecutions"
                                ],
                                "Resource": "*"
                            }
                        ]
                    }
```

------

 **Instructions** 

Pour configurer l'automatisation, procédez comme suit :

1. Accédez [https://console.aws.amazon.com/systems-manager/documents/AWSSupport-TroubleshootS3EventNotifications/description](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-TroubleshootS3EventNotifications/description)à Systems Manager sous Documents.

1. Sélectionnez Execute automation (Exécuter l'automatisation).

1. Pour les paramètres d'entrée, entrez ce qui suit :
   + **AutomationAssumeRole (Facultatif) :**

     Amazon Resource Name (ARN) du rôle AWS Gestion des identités et des accès AWS (IAM) qui permet à Systems Manager Automation d'effectuer les actions en votre nom. Si aucun rôle n'est spécifié, Systems Manager Automation utilise les autorisations de l'utilisateur qui lance ce runbook.
   + **S3 BucketName (obligatoire) :**

     Nom du compartiment Amazon S3 configuré avec des notifications d'événements.  
![\[AWSSupport-TroubleshootS3 paramètres d'entrée pour l'exécution du EventNotification runbook.\]](http://docs.aws.amazon.com/fr_fr/systems-manager-automation-runbooks/latest/userguide/images/awssupport-troubleshoot-s3-event-notifications_input_parameters.png)

1. Sélectionnez Exécuter.

1. L'automatisation démarre.

1. Le document exécute les étapes suivantes :
   + **ValidateInputs**

     Valide que le compartiment Amazon S3 fourni appartient au même compte sur lequel l'automatisation est exécutée et récupère la région dans laquelle le compartiment est hébergé.
   + **GetBucketNotificationConfiguration**

     Appelle `GetBucketNotificationConfiguration` l'API pour examiner les notifications d'événements configurées avec le compartiment Amazon S3 et formater la sortie.
   + **BranchOnSQSResourceStratégie**

     Des branches sur la présence de ressources Amazon SQS dans les notifications d'événements.
   + **Valider SQSResource la politique**

     Valide la politique de ressources sur les attributs de la file d'attente Amazon SQS et `sqs:SendMessage` dispose d'une autorisation pour Amazon S3. Si la ressource Amazon SQS est chiffrée, vérifie que le chiffrement n'utilise pas la AWS KMS clé par défaut, c'est-à-dire que la politique en `aws/sqs` matière de AWS KMS clés prévoit des autorisations pour Amazon S3.
   + **BranchOnSNSResourceStratégie**

     Des branches sur la présence de ressources Amazon SNS dans les notifications d'événements.
   + **Valider SNSResource la politique**

     Valide la politique de ressources sur Amazon SNS. Les attributs de la rubrique sont `sns:Publish` autorisés pour Amazon S3. Si la ressource Amazon SNS est chiffrée, vérifie que le chiffrement n'utilise pas la AWS KMS clé par défaut, c'est-à-dire que la politique en `aws/sns` matière de AWS KMS clés prévoit des autorisations pour Amazon S3.
   + **BranchOnLambdaFunctionResourcePolicy**

     Indique s'il existe des AWS Lambda fonctions dans les notifications d'événements.
   + **ValidateLambdaFunctionResourcePolicy**

     Valide la politique de ressources si la AWS Lambda fonction est `lambda:InvokeFunction` autorisée à accéder à Amazon S3.
   + **GenerateReport**

     Renvoie les détails des étapes, des résultats du runbook et des recommandations pour résoudre tout problème lié aux notifications d'événements configurées avec le compartiment Amazon S3.

1. Une fois terminé, consultez la section Sorties pour obtenir les résultats détaillés de l'exécution :
   + **Notifications d'événements Amazon SQS**

     Si des notifications de destination Amazon SQS sont configurées avec le compartiment Amazon S3, une liste des files d'attente Amazon SQS s'affiche à côté des résultats des vérifications. Le rapport inclut la vérification des ressources Amazon SQS, la vérification de la politique d'accès Amazon SQS, la vérification des clés AWS KMS , la vérification de l'état des clés AWS KMS et la vérification de la politique des clés. AWS KMS 
   + **Notifications d'événements Amazon SNS**

     Si des notifications de destination Amazon SNS sont configurées avec le compartiment Amazon S3, une liste des rubriques Amazon SNS s'affiche à côté des résultats des vérifications. Le rapport inclut la vérification des ressources Amazon SNS, la vérification de la politique d'accès Amazon SNS, la vérification des clés AWS KMS , la vérification de l'état des clés AWS KMS et la vérification de la politique des clés. AWS KMS 
   + **AWS Lambda Notifications d'événements**

     Si des notifications de AWS Lambda destination sont configurées avec le compartiment Amazon S3, une liste des fonctions Lambda s'affiche à côté des résultats des vérifications. Le rapport inclut le contrôle des ressources Lambda et le contrôle de la politique d'accès Lambda.  
![\[AWSSupport-TroubleshootS3 exemples de sortie d'exécution d'un EventNotification runbook.\]](http://docs.aws.amazon.com/fr_fr/systems-manager-automation-runbooks/latest/userguide/images/awssupport-troubleshoot-s3-event-notifications_outputs.png)

 **Références** 

Systems Manager Automation
+ [Exécuter cette automatisation (console)](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-TroubleshootS3EventNotifications/description)
+ [Exécuter une automatisation](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-working-executing.html)
+ [Configuration d'une automatisation](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-setup.html)
+ [Page d'accueil de Support Automation Workflows](https://aws.amazon.com/premiumsupport/technology/saw/)

# `AWSSupport-ContainS3Resource`
<a name="automation-awssupport-contains3resource"></a>

 **Description** 

 Le `AWSSupport-ContainS3Resource` runbook fournit une solution automatisée pour la procédure décrite dans l'article [Support Automation Workflow (SAW) Runbook : Contain a compromise AWS Amazon](https://repost.aws/articles/ARhGc0hDqKRIKAVCbmF1GmuQ) S3 Bucket 

**Important**  
Ce runbook effectue diverses opérations qui nécessitent des privilèges élevés, telles que la modification des politiques relatives aux compartiments Amazon S3, des balises et des configurations d'accès public. Ces actions peuvent potentiellement entraîner une augmentation des privilèges ou avoir un impact sur d'autres charges de travail qui dépendent du compartiment Amazon S3 ciblé. Vous devez vérifier les autorisations accordées au rôle spécifié par le `AutomationAssumeRole` paramètre et vous assurer qu'elles sont adaptées au cas d'utilisation prévu. Vous pouvez consulter la AWS documentation suivante pour plus d'informations sur les autorisations IAM : [https://docs.aws.amazon.com//IAM/latest/UserGuide/access_controlling.html](https://docs.aws.amazon.com//IAM/latest/UserGuide/access_controlling.html).
Ce runbook exécute des actions mutatives susceptibles d'entraîner une indisponibilité ou une interruption de vos charges de travail. Plus précisément, l'`Contain`action bloque tout accès au compartiment Amazon S3 spécifié, à l'exception des rôles spécifiés dans le `SecureRoles` paramètre. Cela peut avoir un impact sur les applications ou les services qui dépendent du compartiment Amazon S3 ciblé.
Au cours de l'`Contain`action, ce runbook peut créer un compartiment Amazon S3 supplémentaire (spécifié par le `BackupS3BucketName` paramètre) pour stocker la sauvegarde de la configuration du compartiment d'origine, si celui-ci n'existe pas déjà.
Si le `Action` paramètre est défini sur`Restore`, ce runbook tente de restaurer la configuration du compartiment Amazon S3 à son état d'origine en fonction de la sauvegarde stockée dans le `BackupS3BucketName` compartiment. Cependant, le processus de restauration risque d'échouer, laissant le compartiment Amazon S3 dans un état incohérent. Le manuel d'exécution fournit des instructions pour la restauration manuelle en cas de telles défaillances, mais vous devez être prêt à gérer les problèmes potentiels pendant le processus de restauration.
Il est recommandé de lire attentivement le runbook, de comprendre ses impacts potentiels et de le tester dans un environnement hors production avant de l'exécuter dans votre environnement de production.

 **Fonctionnement** 

Ce runbook fonctionne différemment en fonction du type de ressource et de l'action :
+ Pour le bucket Amazon S3 à usage général `Containment` : l'automatisation bloque l'accès public au bucket, désactive la configuration ACL, impose la propriété de l'objet au propriétaire du bucket et impose une politique restrictive interdisant toutes les actions Amazon S3 sur le bucket, à l'exception des rôles IAM autorisés listés.
+ Pour les objets à usage général Amazon S3 `Containment` : l'automatisation bloque l'accès public au bucket, désactive la configuration ACL, impose la propriété de l'objet au propriétaire du bucket et met en place une politique de bucket restrictive interdisant toutes les actions Amazon S3 sur l'objet, à l'exception des rôles IAM autorisés répertoriés.
+ Pour le compartiment d'annuaire Amazon S3 `Containment` : l'automatisation impose une politique de compartiment restrictive interdisant toutes les actions Amazon S3 sur le compartiment, à l'exception des rôles IAM autorisés répertoriés.
+ Pour le bucket à usage général Amazon S3 `Restore` : l'automatisation rétablit la configuration Block Public Access, la configuration Bucket ACL, la propriété de l'objet par le propriétaire du bucket et la politique du bucket dans leur configuration initiale avant le confinement.
+ Pour l'objet à usage général Amazon S3 `Restore` : l'automatisation rétablit la configuration Block Public Access, la configuration Bucket ACL, la configuration ACL Object, la propriété de l'objet Bucket Owner Object Object Object Object Object Object Object et la politique du bucket dans leur configuration initiale avant le confinement.
+ Pour le compartiment d'annuaire Amazon S3 `Restore` : l'automatisation rétablit la politique du compartiment dans sa configuration initiale avant le confinement.

 [Exécuter cette automatisation (console)](https://console.aws.amazon.com/systems-manager/automation/execute/AWSSupport-ContainS3Resource) 

 **Types de document** 

  Automatisation 

 **Propriétaire** 

 Amazon 

 **Plateforme** 

 / 

 **Autorisations IAM nécessaires** 

 Le `AutomationAssumeRole` paramètre nécessite les actions suivantes pour utiliser correctement le runbook. 
+ s3 : CreateBucket
+ s3 : DeleteBucketPolicy
+ s3 : DeleteObjectTagging
+ s3 : GetAccountPublicAccessBlock
+ s3 : GetBucketAcl
+ s3 : GetBucketLocation
+ s3 : GetBucketOwnershipControls
+ s3 : GetBucketPolicy
+ s3 : GetBucketPolicyStatus
+ s3 : GetBucketTagging
+ s3 : GetEncryptionConfiguration
+ s3 : GetObject
+ s3 : GetObjectAcl
+ s3 : GetObjectTagging
+ s3 : GetReplicationConfiguration
+ s3 : ListBucket
+ s3 : PutAccountPublicAccessBlock
+ s3 : PutBucket ACL
+ s3 : PutBucketOwnershipControls
+ s3 : PutBucketPolicy
+ s3 : PutBucketPublicAccessBlock
+ s3 : PutBucketTagging
+ s3 : PutBucketVersioning
+ s3 : PutObject
+ s3 : PutObjectAcl
+ S3 Express : CreateSession
+ S3 Express : DeleteBucketPolicy
+ S3 Express : GetBucketPolicy
+ S3 Express : PutBucketPolicy
+ SMS : DescribeAutomationExecutions

 Voici un exemple de politique IAM qui accorde les autorisations nécessaires pour : `AutomationAssumeRole` 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "S3Permissions",
            "Effect": "Allow",
            "Action": [
                "s3:CreateBucket",
                "s3:DeleteBucketPolicy",
                "s3:DeleteObjectTagging",
                "s3:GetAccountPublicAccessBlock",
                "s3:GetBucketAcl",
                "s3:GetBucketLocation",
                "s3:GetBucketOwnershipControls",
                "s3:GetBucketPolicy",
                "s3:GetBucketPolicyStatus",
                "s3:GetBucketTagging",
                "s3:GetEncryptionConfiguration",
                "s3:GetObject",
                "s3:GetObjectAcl",
                "s3:GetObjectTagging",
                "s3:GetReplicationConfiguration",
                "s3:ListBucket",
                "s3:PutAccountPublicAccessBlock",
                "s3:PutBucketACL",
                "s3:PutBucketOwnershipControls",
                "s3:PutBucketPolicy",
                "s3:PutBucketPublicAccessBlock",
                "s3:PutBucketTagging",
                "s3:PutBucketVersioning",
                "s3:PutObject",
                "s3:PutObjectAcl"
            ],
            "Resource": "*"
        },
        {
            "Sid": "S3ExpressPermissions",
            "Effect": "Allow",
            "Action": [
                "s3express:CreateSession",
                "s3express:DeleteBucketPolicy",
                "s3express:GetBucketPolicy",
                "s3express:PutBucketPolicy"
            ],
            "Resource": "*"
        },
        {
            "Sid": "SSMPermissions",
            "Effect": "Allow",
            "Action": [
                "ssm:DescribeAutomationExecutions"
            ],
            "Resource": "*"
        }
    ]
}
```

------

 **Instructions** 

Pour configurer l'automatisation, procédez comme suit :

1. Accédez [https://console.aws.amazon.com/systems-manager/documents/AWSSupport-ContainS3Resource/description](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-ContainS3Resource/description)à Systems Manager sous Documents.

1. Sélectionnez Execute automation (Exécuter l'automatisation).

1. Pour les paramètres d'entrée, entrez ce qui suit :
   + **BucketName (Obligatoire) :**
     + Description : (Obligatoire) Nom du compartiment Amazon S3.
     + Type : `AWS::S3::Bucket::Name`
   + **Action (obligatoire) :**
     + Description : (Obligatoire) Sélectionnez `Contain` cette option pour isoler la ressource Amazon S3 ou `Restore` pour essayer de restaurer la configuration de la ressource dans son état d'origine à partir d'une sauvegarde précédente.
     + Type : Chaîne
     + Valeurs autorisées : `Contain|Restore`
   + **DryRun (Facultatif) :**
     + Description : (Facultatif) Lorsqu'elle est définie sur true, l'automatisation n'apporte aucune modification à la ressource Amazon S3 cible, mais affiche ce qu'elle aurait tenté de modifier. Valeur par défaut : true.
     + Type : Boolean
     + Valeurs autorisées : `true|false`
   + **BucketKeyName (Facultatif) :**
     + Description : (Facultatif) La clé de l'objet Amazon S3 que vous souhaitez contenir ou restaurer. Utilisé lors du confinement au niveau de l'objet.
     + Type : Chaîne
     + Modèle autorisé : `^[a-zA-Z0-9\\.\\-_\\\\!*'()/]{0,1024}$`
   + **BucketRestrictAccess(Conditionnel) :**
     + Description : (Conditionnel) L'ARN des utilisateurs ou des rôles IAM qui seront autorisés à accéder à la ressource Amazon S3 cible après avoir exécuté les actions de confinement. Ce paramètre est obligatoire lorsqu'il `Action` est défini sur`Contain`.
     + Type : StringList
     + Modèle autorisé : `^$|^arn:(aws|aws-cn|aws-us-gov|aws-iso(-[a-z])?):iam::[0-9]{12}:(role|user)\\/[\\w+\\/=,.@-]+$`
   + **TagIdentifier (Facultatif) :**
     + Description : (Facultatif) Une balise au format Key=BatchId, Value=78925 qui sera ajoutée aux ressources créées ou modifiées par ce runbook pendant le flux de travail de confinement.
     + Type : Chaîne
     + Modèle autorisé : `^$|^[Kk][Ee][Yy]=[\\+\\-\\=\\.\\_\\:\\/@a-zA-Z0-9]{1,128},[Vv][Aa][Ll][Uu][Ee]=[\\+\\-\\=\\.\\_\\:\\/@a-zA-Z0-9]{0,128}$`
   + **BackupS3 BucketName (conditionnel) :**
     + Description : (Conditionnel) Le compartiment Amazon S3 permettant de sauvegarder la configuration des ressources cibles lorsqu'elle `Action` est définie sur `Contain` ou de restaurer la configuration à partir de laquelle elle `Action` est définie sur`Restore`.
     + Type : `AWS::S3::Bucket::Name`
   + **BackupS3 KeyName (conditionnel) :**
     + Description : (Conditionnel) Si ce paramètre `Action` est défini sur`Restore`, cela indique la clé Amazon S3 que l'automatisation utilisera pour tenter de restaurer la configuration des ressources cibles.
     + Type : Chaîne
     + Modèle autorisé : `^[a-zA-Z0-9\\.\\-_\\\\!*'()/]{0,1024}$`

     
   + **BackupS3 BucketAccess (conditionnel) :**
     + Description : (Conditionnel) L'ARN des utilisateurs ou des rôles IAM qui seront autorisés à accéder au compartiment Amazon S3 de sauvegarde après avoir exécuté les actions de confinement. Ce paramètre est obligatoire quand c'`Action`est le cas`Contain`.
     + Type : StringList
     + Modèle autorisé : `^$|^arn:(aws|aws-cn|aws-us-gov|aws-iso(-[a-z])?):iam::[0-9]{12}:(role|user)\\/[\\w+\\/=,.@-]+$`
   + **AutomationAssumeRole (Facultatif) :**
     + Description : (Facultatif) Le nom de ressource Amazon (ARN) du rôle IAM qui permet à Systems Manager Automation d'effectuer les actions en votre nom.
     + Type : `AWS::IAM::Role::Arn`

1. Sélectionnez Exécuter.

1. L'automatisation démarre.

1. Le document exécute les étapes suivantes :
   + **validateRequiredInputs**

     Valide les paramètres d'entrée d'automatisation requis en fonction de l'action spécifiée.
   + **assertBucketExists**

     Vérifie si le compartiment Amazon S3 cible existe et est accessible.
   + **backupBucketPreChèques**

     Vérifie si le compartiment Amazon S3 de sauvegarde accorde potentiellement un accès public en lecture ou en écriture à ses objets.
   + **backupTargetBucketMetadonnées**

     Décrit la configuration actuelle du compartiment Amazon S3 cible et télécharge la sauvegarde dans le compartiment Amazon S3 de sauvegarde spécifié.
   + **Contenir un seau**

     Effectue des opérations au niveau du compartiment pour contenir le compartiment Amazon S3 cible.
   + **BranchOnActionAndMode**

     Branche l'automatisation en fonction des paramètres d'entrée Action et DryRun.
   + **RestoreInstanceConfiguration**

     Restaure la configuration du compartiment Amazon S3 à partir de la sauvegarde.
   + **containFinalOutput**

     Consolide l'activité de confinement dans un format lisible.
   + **ReportContain**

     Affiche les détails du cycle à sec pour les actions de confinement.
   + **ReportRestore**

     Affiche les détails du fonctionnement à sec pour les actions de restauration.
   + **ReportRestoreFailure**

     Fournit des instructions pour restaurer la configuration d'origine du compartiment Amazon S3 lors d'un scénario d'échec du flux de restauration.
   + **ReportContainmentFailure**

     Fournit des instructions pour restaurer la configuration initiale du compartiment Amazon S3 lors d'un scénario d'échec du flux de travail de confinement.
   + **FinalOutput**

     Affiche les détails des actions de confinement.

1. Une fois l'exécution terminée, consultez la section Sorties pour obtenir les résultats détaillés de l'exécution :
   + **ContainFinalOutput.Sortie**

     Affiche les détails des actions de confinement effectuées par ce runbook lorsqu'il `DryRun` est défini sur False.
   + **RestoreFinalOutput.Sortie**

     Affiche les détails des actions de restauration effectuées par ce runbook lorsqu'il `DryRun` est défini sur False.
   + **Contient S3ResourceDryRun. Sortie**

     Affiche les détails des actions de confinement effectuées par ce runbook lorsqu'il `DryRun` est défini sur True.
   + **Restaure 3ResourceDryRun. Output**

     Affiche les détails des actions de restauration effectuées par ce runbook lorsqu'il `DryRun` est défini sur True.
   + **ReportContainmentFailure.Sortie**

     Fournit des instructions pour restaurer la configuration initiale de la ressource Amazon S3 cible lors d'un scénario d'échec du flux de travail de confinement.
   + **ReportRestoreFailure.Sortie**

     Fournit des instructions pour restaurer la configuration initiale de la ressource Amazon S3 cible lors d'un scénario d'échec du flux de restauration.

**Références**

Systems Manager Automation
+ [Exécuter cette automatisation (console)](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-ContainS3Resource/description)
+ [Exécuter une automatisation](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-working-executing.html)
+ [Configuration d'une automatisation](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-setup.html)
+ [Support des flux de travail automatisés](https://aws.amazon.com/premiumsupport/technology/saw/)