

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

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

 **Descrizione** 

 Il `AWSSupport-ContainS3Resource` runbook fornisce una soluzione automatizzata per la procedura descritta nell'articolo [Support Automation Workflow (SAW) Runbook: Contain a Amazon AWS S3 Bucket](https://repost.aws/articles/ARhGc0hDqKRIKAVCbmF1GmuQ) compromesso 

**Importante**  
Questo runbook esegue diverse operazioni che richiedono privilegi elevati, come la modifica delle policy, dei tag e delle configurazioni dei bucket di Amazon S3. Queste azioni potrebbero potenzialmente portare a un aumento dei privilegi o influire su altri carichi di lavoro che dipendono dal bucket Amazon S3 di destinazione. È necessario esaminare le autorizzazioni concesse al ruolo specificato dal `AutomationAssumeRole` parametro e assicurarsi che siano appropriate per il caso d'uso previsto. Puoi fare riferimento alla seguente AWS documentazione per ulteriori informazioni sulle autorizzazioni IAM:. [https://docs.aws.amazon.com//IAM/latest/UserGuide/access_controlling.html](https://docs.aws.amazon.com//IAM/latest/UserGuide/access_controlling.html)
Questo runbook esegue azioni mutative che potrebbero potenzialmente causare indisponibilità o interruzione dei carichi di lavoro. In particolare, l'`Contain`azione blocca tutti gli accessi al bucket Amazon S3 specificato, ad eccezione dei ruoli specificati nel parametro. `SecureRoles` Ciò potrebbe influire su tutte le applicazioni o i servizi che si basano sul bucket Amazon S3 di destinazione.
Durante l'`Contain`azione, questo runbook può creare un bucket Amazon S3 aggiuntivo (specificato dal `BackupS3BucketName` parametro) per archiviare il backup della configurazione del bucket originale, se non esiste già.
Se il `Action` parametro è impostato su`Restore`, questo runbook tenta di ripristinare la configurazione del bucket Amazon S3 allo stato originale in base al backup archiviato nel bucket. `BackupS3BucketName` Tuttavia, esiste il rischio che il processo di ripristino non riesca, lasciando il bucket Amazon S3 in uno stato incoerente. Il runbook fornisce istruzioni per il ripristino manuale in caso di tali errori, ma è necessario essere preparati a gestire potenziali problemi durante il processo di ripristino.
Si consiglia di esaminare attentamente il runbook, comprenderne i potenziali impatti e testarlo in un ambiente non di produzione prima di eseguirlo nell'ambiente di produzione.

 **Come funziona?** 

Questo runbook funziona in modo diverso in base al tipo di risorsa e all'azione:
+ Per Amazon S3 General Purpose Bucket`Containment`: l'automazione blocca l'accesso pubblico al bucket, disabilita la configurazione ACL, impone la proprietà del Bucket Owner Object e impone una policy restrittiva che nega tutte le azioni di Amazon S3 al bucket ad eccezione dei ruoli IAM consentiti elencati.
+ Per Amazon S3 General Purpose Object`Containment`: l'automazione blocca l'accesso pubblico al bucket, disabilita la configurazione ACL, impone la proprietà del Bucket Owner Object e impone una policy restrittiva sui bucket che nega tutte le azioni di Amazon S3 sull'oggetto ad eccezione dei ruoli IAM consentiti elencati.
+ Per Amazon S3 Directory Bucket`Containment`: l'automazione applica una politica restrittiva sui bucket che nega tutte le azioni di Amazon S3 al bucket ad eccezione dei ruoli IAM consentiti elencati.
+ Per Amazon S3 General Purpose Bucket`Restore`: l'automazione ripristina la configurazione Block Public Access, la configurazione Bucket ACL, la proprietà dell'oggetto Bucket Owner e la Bucket Policy alla configurazione iniziale prima del contenimento.
+ Per Amazon S3 General Purpose Object`Restore`: l'automazione ripristina la configurazione Block Public Access, la configurazione Bucket ACL, la configurazione Object ACL, la proprietà dell'oggetto Bucket Owner e la Bucket Policy alla configurazione iniziale prima del contenimento.
+ Per Amazon S3 Directory Bucket`Restore`: l'automazione ripristina la policy del bucket alla configurazione iniziale prima del contenimento.

 [Esegui questa automazione (console)](https://console.aws.amazon.com/systems-manager/automation/execute/AWSSupport-ContainS3Resource) 

 **Tipo di documento** 

 Automazione 

 **Proprietario** 

 Amazon 

 **Platform (Piattaforma)** 

 / 

 **Autorizzazioni IAM richieste** 

 Il `AutomationAssumeRole` parametro richiede le seguenti azioni per utilizzare correttamente il 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: ACL PutBucket
+ 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
+ ssm: DescribeAutomationExecutions

 Ecco un esempio di policy IAM che concede le autorizzazioni necessarie per: `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": "*"
        }
    ]
}
```

------

 **Istruzioni** 

Segui questi passaggi per configurare l'automazione:

1. Accedere [https://console.aws.amazon.com/systems-manager/documents/AWSSupport-ContainS3Resource/description](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-ContainS3Resource/description)a Systems Manager nella sezione Documenti.

1. Seleziona Execute automation (Esegui automazione).

1. Per i parametri di input, immettete quanto segue:
   + **BucketName (Obbligatorio):**
     + Descrizione: (Obbligatorio) Il nome del bucket Amazon S3.
     + Tipo: `AWS::S3::Bucket::Name`
   + **Azione (richiesta):**
     + Descrizione: (Obbligatorio) Seleziona `Contain` per isolare la risorsa Amazon S3 `Restore` o provare a ripristinare la configurazione della risorsa allo stato originale da un backup precedente.
     + Tipo: stringa
     + Valori consentiti: `Contain|Restore`
   + **DryRun (Facoltativo):**
     + Descrizione: (Facoltativo) Se impostata su true, l'automazione non apporterà alcuna modifica alla risorsa Amazon S3 di destinazione, ma restituirà ciò che avrebbe tentato di modificare. Valore predefinito: true.
     + Tipo: Booleano
     + Valori consentiti: `true|false`
   + **BucketKeyName (Facoltativo):**
     + Descrizione: (Facoltativo) La chiave dell'oggetto Amazon S3 che desideri contenere o ripristinare. Utilizzato durante il contenimento a livello di oggetto.
     + Tipo: String
     + Pattern consentito: `^[a-zA-Z0-9\\.\\-_\\\\!*'()/]{0,1024}$`
   + **BucketRestrictAccess(Condizionale):**
     + Descrizione: (Condizionale) L'ARN degli utenti o dei ruoli IAM a cui sarà consentito l'accesso alla risorsa Amazon S3 di destinazione dopo l'esecuzione delle azioni di contenimento. Questo parametro è obbligatorio quando `Action` è impostato su. `Contain`
     + Tipo: StringList
     + Modello consentito: `^$|^arn:(aws|aws-cn|aws-us-gov|aws-iso(-[a-z])?):iam::[0-9]{12}:(role|user)\\/[\\w+\\/=,.@-]+$`
   + **TagIdentifier (Facoltativo):**
     + Descrizione: (Facoltativo) Un tag nel formato Key=BatchId, Value=78925 che verrà aggiunto alle risorse create o modificate da questo runbook durante il flusso di lavoro di contenimento.
     + Tipo: String
     + Modello consentito: `^$|^[Kk][Ee][Yy]=[\\+\\-\\=\\.\\_\\:\\/@a-zA-Z0-9]{1,128},[Vv][Aa][Ll][Uu][Ee]=[\\+\\-\\=\\.\\_\\:\\/@a-zA-Z0-9]{0,128}$`
   + **BackupS3 BucketName (condizionale):**
     + Descrizione: (Condizionale) Il bucket Amazon S3 per il backup della configurazione della risorsa di destinazione quando `Action` è impostato su o `Contain` per ripristinare la configurazione da quando `Action` è impostato su. `Restore`
     + Tipo: `AWS::S3::Bucket::Name`
   + **Backup S3 KeyName (condizionale):**
     + Descrizione: (Condizionale) Se `Action` impostato su`Restore`, specifica la chiave Amazon S3 che l'automazione utilizzerà per tentare di ripristinare la configurazione delle risorse di destinazione.
     + Tipo: String
     + Modello consentito: `^[a-zA-Z0-9\\.\\-_\\\\!*'()/]{0,1024}$`

     
   + **BackupS3 BucketAccess (condizionale):**
     + Descrizione: (Condizionale) L'ARN degli utenti o dei ruoli IAM a cui sarà consentito l'accesso al bucket Amazon S3 di backup dopo l'esecuzione delle azioni di contenimento. Questo parametro è obbligatorio quando è. `Action` `Contain`
     + Tipo: StringList
     + Modello consentito: `^$|^arn:(aws|aws-cn|aws-us-gov|aws-iso(-[a-z])?):iam::[0-9]{12}:(role|user)\\/[\\w+\\/=,.@-]+$`
   + **AutomationAssumeRole (Facoltativo):**
     + Descrizione: (Facoltativo) L'Amazon Resource Name (ARN) del ruolo IAM che consente a Systems Manager Automation di eseguire le azioni per tuo conto.
     + Tipo: `AWS::IAM::Role::Arn`

1. Seleziona Esegui.

1. L'automazione inizia.

1. Il documento esegue le seguenti operazioni:
   + **validateRequiredInputs**

     Convalida i parametri di input di automazione richiesti in base all'azione specificata.
   + **assertBucketExists**

     Verifica se il bucket Amazon S3 di destinazione esiste ed è accessibile.
   + **backupBucketPreControlli**

     Verifica se il bucket Amazon S3 di backup concede potenzialmente l'accesso pubblico in lettura o scrittura ai suoi oggetti.
   + **backupTargetBucketMetadati**

     Descrive la configurazione corrente del bucket Amazon S3 di destinazione e carica il backup nel bucket Amazon S3 di backup specificato.
   + **ContainBucket**

     Esegue operazioni a livello di bucket per contenere il bucket Amazon S3 di destinazione.
   + **BranchOnActionAndMode**

     Suddivide l'automazione in base ai parametri di input Action e. DryRun
   + **RestoreInstanceConfiguration**

     Ripristina la configurazione del bucket Amazon S3 dal backup.
   + **containFinalOutput**

     Consolida l'attività di contenimento in un formato leggibile.
   + **ReportContain**

     Fornisce i dettagli del funzionamento a secco per le azioni di contenimento.
   + **ReportRestore**

     Fornisce i dettagli del funzionamento a secco per le azioni di ripristino.
   + **ReportRestoreFailure**

     Fornisce istruzioni per ripristinare la configurazione originale del bucket Amazon S3 durante uno scenario di errore del flusso di lavoro di ripristino.
   + **ReportContainmentFailure**

     Fornisce istruzioni per ripristinare la configurazione originale del bucket Amazon S3 durante uno scenario di errore del flusso di lavoro di contenimento.
   + **FinalOutput**

     Fornisce i dettagli delle azioni di contenimento.

1. Una volta completata l'esecuzione, consulta la sezione Output per i risultati dettagliati dell'esecuzione:
   + **ContainFinalOutput.Output**

     Restituisce i dettagli delle azioni di contenimento eseguite da questo runbook quando `DryRun` è impostato su False.
   + **RestoreFinalOutput.Output**

     Restituisce i dettagli delle azioni di ripristino eseguite da questo runbook quando `DryRun` è impostato su False.
   + **Contiene 3. Output ResourceDryRun**

     Restituisce i dettagli delle azioni di contenimento eseguite da questo runbook quando è impostato su True. `DryRun`
   + **ResourceDryRunRipristina S3. Output**

     Restituisce i dettagli delle azioni di ripristino eseguite da questo runbook quando `DryRun` è impostato su True.
   + **ReportContainmentFailure.Output**

     Fornisce istruzioni per ripristinare la configurazione originale della risorsa Amazon S3 di destinazione durante uno scenario di errore del flusso di lavoro di contenimento.
   + **ReportRestoreFailure.Output**

     Fornisce istruzioni per ripristinare la configurazione originale della risorsa Amazon S3 di destinazione durante uno scenario di errore del flusso di lavoro di ripristino.

**Riferimenti**

Systems Manager Automation
+ [Esegui questa automazione (console)](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-ContainS3Resource/description)
+ [Esegui un'automazione](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-working-executing.html)
+ [Configurazione di un'automazione](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-setup.html)
+ [Flussi di lavoro di Support Automation](https://aws.amazon.com/premiumsupport/technology/saw/)