

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à.

# Sintassi ed esempi delle policy di backup
<a name="orgs_manage_policies_backup_syntax"></a>

In questa pagina viene descritta la sintassi delle policy di backup e vengono forniti esempi.

## Sintassi per le policy di backup
<a name="backup-policy-syntax-reference"></a>

Una policy di backup è un file di testo normale strutturato in base alle regole di [JSON](http://json.org). La sintassi per le policy di backup segue la sintassi per tutti i tipi di policy di gestione. Per ulteriori informazioni, vedere [Sintassi ed ereditarietà delle policy per i tipi di policy di gestione](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_inheritance_mgmt.html). Questo argomento è incentrato sull'applicazione della sintassi generale ai requisiti specifici del tipo di policy di backup.

*Per ulteriori informazioni sui AWS Backup piani, consulta la Guida per [CreateBackupPlan](https://docs.aws.amazon.com/aws-backup/latest/devguide/API_CreateBackupPlan.html)gli AWS Backup sviluppatori.*

## Considerazioni
<a name="backup-policy-syntax-considerations"></a>

**Sintassi delle politiche**

I nomi di chiavi duplicati verranno rifiutati in JSON.

Le politiche devono specificare le risorse Regioni AWS e le risorse di cui eseguire il backup.

Le policy devono specificare il ruolo IAM che AWS Backup assume.

L'utilizzo `@@assign` dell'operatore allo stesso livello può sovrascrivere le impostazioni esistenti. Per ulteriori informazioni, consulta [Una politica secondaria sostituisce le impostazioni in una](#backup-policy-example-5) politica principale.

Gli operatori di ereditarietà controllano il modo in cui le policy ereditate e le policy dell'account si uniscono nella policy operativa dell'account. Tali operatori comprendono gli operatori di impostazione del valore e gli operatori del controllo degli elementi figlio.

Per ulteriori informazioni, consulta [Operatori di ereditarietà](policy-operators.md) ed esempi di [policy di Backup](#backup-policy-examples).

**Ruoli IAM**

Il ruolo IAM deve esistere quando si crea un piano di backup per la prima volta.

Il ruolo IAM deve avere l'autorizzazione ad accedere alle risorse identificate tramite tag query.

Il ruolo IAM deve disporre dell'autorizzazione per eseguire il backup.

**Casseforti di Backup**

I vault devono esistere in ogni area specificata Regioni AWS prima che un piano di backup possa essere eseguito.

I vault devono esistere per ogni AWS account che riceve la policy valida. Per ulteriori informazioni, consulta la sezione [Creazione ed eliminazione di Backup vault](https://docs.aws.amazon.com/aws-backup/latest/devguide/create-a-vault.html) nella *AWS Backup Developer Guide*.

Ti consigliamo di utilizzare i set di AWS CloudFormation stack e la relativa integrazione con Organizations per creare e configurare automaticamente gli archivi di backup e i ruoli IAM per ogni account membro dell'organizzazione. Per ulteriori informazioni, consulta [Creazione di uno stack set con autorizzazioni gestite dal cliente](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-getting-started-create.html#create-stack-set-service-managed-permissions) nella *Guida per l'utente di AWS CloudFormation *.

**Quote**

*Per un elenco delle [AWS Backup quote, consulta la sezione Quotas](https://docs.aws.amazon.com/aws-backup/latest/devguide/aws-backup-limits.html#aws-backup-policies-quotas-table) nella Developer Guide.AWS Backup *

## Sintassi di backup: panoramica
<a name="backup-policy-syntax-components"></a>

La sintassi della policy di backup include i seguenti componenti: 

```
{
    "plans": {
        "PlanName": {
            "rules": { ... },
            "regions": { ... },
            "selections": { ... },
            "advanced_backup_settings": { ... },
            "backup_plan_tags": { ... },
            "scan_settings": { ... }
        }
    }
}
```


**Elementi della policy di Backup**  

| Elemento | Description | Richiesto | 
| --- | --- | --- | 
| [regole](#backup-policy-rules) | Elenco delle regole di backup. Ogni regola definisce quando vengono avviati i backup e la finestra di esecuzione per le risorse specificate negli selections elementi regions and. | Sì | 
| [regioni](#backup-plan-regions) | Elenco delle aree Regioni AWS in cui una politica di backup può proteggere le risorse. | Sì | 
| [selezioni](#backup-plan-selections) | Uno o più tipi di risorse entro i limiti specificati regions che il backup rules protegge. | Sì | 
| [impostazioni di backup\$1avanzate](#advanced-backup-settings) | Opzioni di configurazione per scenari di backup specifici. Attualmente, l'unica impostazione di backup avanzata supportata è l'abilitazione dei backup Microsoft Volume Shadow Copy Service (VSS) per Windows o SQL Server in esecuzione su un'istanza Amazon EC2. | No | 
| [backup\$1plan\$1tags](#backup-plan-tags) | Tag che desideri associare a un piano di backup. Ogni tag è un'etichetta composta da una chiave e un valore definiti dall'utente. I tag possono aiutarti a gestire, identificare, organizzare, cercare e filtrare i tuoi piani di backup. | No | 
| [scan\$1settings](#scan-settings) | Opzioni di configurazione per le impostazioni di scansione. Attualmente l'unica impostazione di scansione supportata è abilitare Amazon GuardDuty Malware Protection for AWS Backup. | No | 

## Sintassi di backup: regole
<a name="backup-policy-rules"></a>

La chiave `rules` politica specifica le attività di backup pianificate AWS Backup eseguite sulle risorse selezionate.


**Elementi delle regole di Backup**  

| Elemento | Description | Richiesto | 
| --- | --- | --- | 
| schedule\$1expression | Espressione Cron in UTC che specifica quando AWS Backup avvia un processo di backup. Per informazioni sull'espressione cron, consulta [Using cron and rate expression to scheduling rules](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-scheduled-rule-pattern.html) nella *Amazon EventBridge User* Guide. | Sì | 
| target\$1backup\$1vault\$1name | Archivio di backup in cui sono archiviati i backup. Gli archivi di Backup sono identificati da nomi univoci relativi all'account utilizzato per crearli e al Regione AWS luogo in cui sono stati creati. | Sì | 
| target\$1logically\$1air\$1gapped\$1backup\$1vault\$1arn | ARN del vault con intercapedine logiche in cui vengono archiviati i backup. Se fornite, le risorse completamente gestite supportate vengono salvate direttamente nel vault logicamente airgapped, mentre altre risorse supportate creano un'istantanea temporanea (fatturabile) nel vault di backup, quindi la copiano in un archivio con sistema logico airgapped. Le risorse non supportate eseguono il backup solo nell'archivio di backup specificato. L'ARN deve utilizzare i segnaposto `$region` speciali e. `$account` Ad esempio, per un archivio denominato `AirGappedVault` il valore corretto è. `arn:aws:backup:$region:$account:backup-vault:AirGappedVault` | No | 
| start\$1backup\$1window\$1minutes | Il numero di minuti di attesa prima di annullare un processo di backup verrà annullato se non viene avviato correttamente. Se questo valore è incluso, devono essere necessari almeno 60 minuti per evitare errori. | No | 
| complete\$1backup\$1window\$1minutes | Numero di minuti dopo l'avvio corretto di un processo di backup prima che debba essere completato o verrà annullato entro. AWS Backup | No | 
| enable\$1continuous\$1backup | Specifica se crea backup continui AWS Backup . `True`causa AWS Backup la creazione di backup continui in grado di point-in-time ripristinare (PITR). `False`(o non specificate) sono le cause della creazione AWS Backup di copie di backup istantanee. *Per ulteriori informazioni sui backup continui, consulta [P oint-in-time recovery](https://docs.aws.amazon.com/aws-backup/latest/devguide/point-in-time-recovery.html) nella Developer Guide.AWS Backup * **Nota:** i backup compatibili con PITR hanno una conservazione massima di 35 giorni. | No | 
| lifecycle | Speciifica quando AWS Backup trasferisce un backup alla conservazione a freddo e quando scade. *I tipi di risorse che possono passare alla conservazione a freddo sono elencati nella tabella Disponibilità delle funzionalità per risorse La disponibilità delle [funzionalità per risorse nella Guida per](https://docs.aws.amazon.com/aws-backup/latest/devguide/backup-feature-availability.html#features-by-resource) gli AWS Backup sviluppatori.* Ogni ciclo di vita contiene i seguenti elementi: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/organizations/latest/userguide/orgs_manage_policies_backup_syntax.html) **Nota**: i backup passati alla conservazione a freddo devono essere conservati in celle frigorifere per un minimo di 90 giorni. Ciò significa che `delete_after_days` deve essere superiore di 90 giorni a. `move_to_cold_storage_after_days`  | No | 
| copy\$1actions | Speciifica se AWS Backup copia un backup in una o più posizioni aggiuntive. Ogni azione di copia contiene i seguenti elementi: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/organizations/latest/userguide/orgs_manage_policies_backup_syntax.html) **Nota**: i backup passati alla conservazione a freddo devono essere conservati in celle frigorifere per un minimo di 90 giorni. Ciò significa che `delete_after_days` deve essere superiore di 90 giorni a. `move_to_cold_storage_after_days`  | No | 
| recovery\$1point\$1tags | Tag da assegnare alle risorse ripristinate dal backup. Ogni tag contiene i seguenti elementi: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/organizations/latest/userguide/orgs_manage_policies_backup_syntax.html) | No | 
| index\$1actions | Speciifica se AWS Backup crea un indice di backup degli snapshot di Amazon EBS, dei backup di Amazon S3 and/or . Gli indici di backup vengono creati per cercare i metadati dei backup. Per ulteriori informazioni sulla creazione dell'indice di backup e sulla ricerca di backup, vedere [Ricerca di backup](https://docs.aws.amazon.com//aws-backup/latest/devguide/backup-search.html#backup-search-overview). **Nota:** sono necessarie [autorizzazioni aggiuntive per i ruoli IAM](https://docs.aws.amazon.com//aws-backup/latest/devguide/backup-search.html#backup-search-access) per la creazione dell'indice di backup degli snapshot di Amazon EBS. Ogni azione di indicizzazione contiene il seguente elemento: `resource_types` dove i tipi di risorse supportati per l'indicizzazione sono Amazon EBS e Amazon S3. Questo parametro specifica quale tipo di risorsa verrà attivato per l'indicizzazione.  | No | 
| scan\$1actions | Speciifica se un'azione di scansione è abilitata per una determinata regola. È necessario specificare un`ScanMode`. È necessario utilizzare `scan_settings` nella policy di backup gli elementi della policy di backup insieme `scan_actions` a per avviare correttamente i processi di scansione. Assicurati inoltre di disporre delle [autorizzazioni corrette per i ruoli IAM](https://docs.aws.amazon.com//aws-backup/latest/devguide/malware-protection.html#malware-access). [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/organizations/latest/userguide/orgs_manage_policies_backup_syntax.html) | No | 

## Sintassi di backup: regioni
<a name="backup-plan-regions"></a>

La chiave `regions` politica specifica quali risorse vengono Regioni AWS AWS Backup cercate per trovare le risorse che soddisfano le condizioni della chiave. `selections`


**Elementi delle regioni di Backup**  

| Elemento | Description | Richiesto | 
| --- | --- | --- | 
| regions | Specifica i Regione AWS codici. Ad esempio: `["us-east-1", "eu-north-1"]`. | Sì | 

## Sintassi di backup: selezioni
<a name="backup-plan-selections"></a>

La chiave di `selections` policy specifica le risorse di cui è eseguito il backup in base alle regole di una policy di backup.

Esistono due elementi che si escludono a vicenda: e. `tags` `resources` Per essere valida, una politica efficace **deve** includere `resources` i tag `have` o la selezione.

Se desideri una selezione con condizioni sia per i tag che per le risorse, usa i `resources` tasti.


**Elementi di selezione di backup: Tag**  

| Elemento | Description | Richiesto | 
| --- | --- | --- | 
| iam\$1role\$1arn | Ruolo IAM che AWS Backup presuppone l'interrogazione, l'individuazione e il backup delle risorse nelle regioni specificate. Il ruolo deve disporre di autorizzazioni sufficienti per interrogare le risorse in base alle condizioni dei tag ed eseguire operazioni di backup sulle risorse corrispondenti.  | Sì | 
| tag\$1key | Nome chiave del tag da cercare. | Sì | 
| tag\$1value | Valore che deve essere associato alla tag\$1key corrispondente. AWS Backup include la risorsa solo se tag\$1key e tag\$1value corrispondono (distinzione tra maiuscole e minuscole). | Sì | 
| conditions | Tagga le chiavi e i valori che desideri includere o escludere Usa string\$1equals o string\$1not\$1equals per includere o escludere tag con una corrispondenza esatta. Usa string\$1like e string\$1not\$1like per includere o escludere tag che contengono o non contengono caratteri specifici **Nota:** limitato a 30 condizioni per ogni selezione. | No | 


**Elementi di selezione del backup: Risorse**  

| Elemento | Description | Richiesto | 
| --- | --- | --- | 
| iam\$1role\$1arn | Ruolo IAM che AWS Backup presuppone l'interrogazione, l'individuazione e il backup delle risorse nelle regioni specificate. Il ruolo deve disporre di autorizzazioni sufficienti per interrogare le risorse in base alle condizioni dei tag ed eseguire operazioni di backup sulle risorse corrispondenti. **Nota:** In AWS GovCloud (US) Regions, è necessario aggiungere il nome della partizione all'ARN. Ad esempio, "`arn:aws:ec2:*:*:volume/*`" deve essere "»`arn:aws-us-gov:ec2:*:*:volume/*`. | Sì | 
| resource\$1types | Tipi di risorse da includere in un piano di backup. | Sì | 
| not\$1resource\$1types | Tipi di risorse da escludere da un piano di backup. | No | 
| conditions | Etichetta le chiavi e i valori che desideri includere o escludere Usa string\$1equals o string\$1not\$1equals per includere o escludere tag con una corrispondenza esatta. Usa string\$1like e string\$1not\$1like per includere o escludere tag che contengono o non contengono caratteri specifici **Nota:** limitato a 30 condizioni per ogni selezione. | No | 

**Tipi di risorse supportati**

Organizations supporta i seguenti tipi di risorse per gli `not_resource_types` elementi `resource_types` and:
+ AWS Backup gateway macchine virtuali: `"arn:aws:backup-gateway:*:*:vm/*"` 
+ AWS CloudFormation pile: `"arn:aws:cloudformation:*:*:stack/*"` 
+ Tabelle Amazon DynamoDB: `"arn:aws:dynamodb:*:*:table/*"` 
+ Istanze Amazon EC2: `"arn:aws:ec2:*:*:instance/*"` 
+ Volumi Amazon EBS: `"arn:aws:ec2:*:*:volume/*"` 
+ File system Amazon EFS: `"arn:aws:elasticfilesystem:*:*:file-system/*"` 
+ Cluster Amazon Aurora/Amazon DocumentDB/Amazon Neptune: `"arn:aws:rds:*:*:cluster:*"` 
+ Database Amazon RDS: `"arn:aws:rds:*:*:db:*"` 
+ Cluster Amazon Redshift: `"arn:aws:redshift:*:*:cluster:*"` 
+ Amazon S3: `"arn:aws:s3:::*"` 
+ AWS Systems Manager per SAP Database HANA: `"arn:aws:ssm-sap:*:*:HANA/*"` 
+ Gateway di archiviazione AWS gateway: `"arn:aws:storagegateway:*:*:gateway/*"` 
+ Database Amazon Timestream: `"arn:aws:timestream:*:*:database/*"` 
+  FSx File system Amazon: `"arn:aws:fsx:*:*:file-system/*"` 
+  FSx Volumi Amazon: `"arn:aws:fsx:*:*:volume/*"` 
+ Volumi Amazon Elastic Kubernetes Service: `"arn:aws:eks:*:*:cluster/*"` 

**Esempi di codice**

Per ulteriori informazioni, consulta [Specificare le risorse con il blocco tags e Specificare le risorse con il blocco](#backup-policy-example-6) [resources](#backup-policy-example-7).

## Sintassi di backup: impostazioni di backup avanzate
<a name="advanced-backup-settings"></a>

La `advanced_backup_settings` chiave specifica le opzioni di configurazione per scenari di backup specifici. Ogni impostazione contiene i seguenti elementi:


**Elementi delle impostazioni di backup avanzate**  

| Elemento | Description | Richiesto | 
| --- | --- | --- | 
| advanced\$1backup\$1settings | Specificate le impostazioni per scenari di backup specifici. Questa chiave contiene una o più impostazioni. Ogni impostazione è una stringa di oggetto JSON con i seguenti elementi: Attualmente l'unica impostazione di backup avanzata supportata è l'abilitazione dei backup Microsoft Volume Shadow Copy Service (VSS) per Windows o SQL Server in esecuzione su un'istanza Amazon EC2. Ogni backup avanzato imposta i seguenti elementi: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/organizations/latest/userguide/orgs_manage_policies_backup_syntax.html)  | No | 

**Esempio**:

```
"advanced_backup_settings": {
    "ec2": { 
        "windows_vss": {
            "@@assign": "enabled" 
        }
    }
},
```

## Sintassi di backup: tag del piano di backup
<a name="backup-plan-tags"></a>

La chiave `backup_plan_tags` politica specifica i tag allegati a un piano di backup stesso. Ciò non influisce sui tag specificati per `rules` o`selections`.


**Elementi del tag del piano di backup**  

| Elemento | Description | Richiesto | 
| --- | --- | --- | 
| backup\$1plan\$1tags | Ogni tag è un'etichetta composta da una chiave e un valore definiti dall'utente: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/organizations/latest/userguide/orgs_manage_policies_backup_syntax.html) | No | 

## Sintassi di backup: impostazioni di scansione
<a name="scan-settings"></a>

La chiave della `scan_settings` policy specifica la configurazione per la scansione del malware utilizzando Amazon GuardDuty Malware Protection for AWS Backup. È necessario utilizzare `scan_settings` in combinazione con `scan_actions` le regole di backup per avviare correttamente i processi di scansione.


**Elementi delle impostazioni di scansione**  

| Elemento | Description | Richiesto | 
| --- | --- | --- | 
| scan\$1settings | Opzioni di configurazione per le impostazioni di scansione. Attualmente l'unica impostazione di scansione supportata è l'abilitazione di Amazon GuardDuty Malware Protection for AWS Backup. È necessario specificare `ResourceTypes` e`ScannerRoleArn`.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/organizations/latest/userguide/orgs_manage_policies_backup_syntax.html) | No | 

**Esempio**:

Di seguito viene illustrato come configurare `scan_actions` in una regola di backup e `scan_settings` a livello di piano per abilitare la scansione di Amazon GuardDuty Malware Protection.

`scan_actions`in una regola:

```
"scan_actions": {
    "GUARDDUTY": {
        "scan_mode": {
            "@@assign": "INCREMENTAL_SCAN"
        }
    }
}
```

`scan_settings`a livello di piano:

```
"scan_settings": {
    "GUARDDUTY": {
        "resource_types": {
            "@@assign": ["EBS"]
        },
        "scanner_role_arn": {
            "@@assign": "arn:aws:iam::$account:role/MyGuardDutyScannerRole"
        }
    }
}
```

## Esempi di policy di backup
<a name="backup-policy-examples"></a>

Le policy di backup di esempio che seguono sono solo a scopo informativo. In alcuni degli esempi seguenti, la formattazione degli spazi bianchi JSON potrebbe essere compressa per risparmiare spazio.
+ [Esempio 1: policy assegnata a un nodo principale](#backup-policy-example-1)
+ [Esempio 2: una politica principale viene unita a una politica secondaria](#backup-policy-example-2)
+ [Esempio 3: una politica principale impedisce qualsiasi modifica da parte di una politica relativa ai figli](#backup-policy-example-3)
+ [Esempio 4: una politica principale impedisce la modifica di un piano di backup da parte di una politica secondaria](#backup-policy-example-4)
+ [Esempio 5: una politica per i figli ha la precedenza sulle impostazioni di una politica principale](#backup-policy-example-5)
+ [Esempio 6: Specificazione delle risorse con il blocco tags](#backup-policy-example-6)
+ [Esempio 7: Specificazione delle risorse con il blocco resources](#backup-policy-example-7)
+ [Esempio 8: piano di backup con scansione di Amazon GuardDuty Malware Protection](#backup-policy-example-8)

### Esempio 1: policy assegnata a un nodo padre
<a name="backup-policy-example-1"></a>

Nell'esempio seguente viene illustrata una policy di backup assegnata a uno dei nodi padre di un account.

**Policy padre** - Questa policy può essere collegata al root dell'organizzazione o a qualsiasi unità organizzativa che è un padre di tutti gli account previsti.

```
{
    "plans": {
        "PII_Backup_Plan": {
            "regions": {
                "@@assign": [
                    "ap-northeast-2",
                    "us-east-1",
                    "eu-north-1"
                ]
            },
            "rules": {
                "Hourly": {
                    "schedule_expression": {
                        "@@assign": "cron(0 5/1 ? * * *)"
                    },
                    "start_backup_window_minutes": {
                        "@@assign": "480"
                    },
                    "complete_backup_window_minutes": {
                        "@@assign": "10080"
                    },
                    "lifecycle": {
                        "move_to_cold_storage_after_days": {
                            "@@assign": "180"
                        },
                        "delete_after_days": {
                            "@@assign": "270"
                        },
                        "opt_in_to_archive_for_supported_resources": {
                            "@@assign": "false"
                        }
                    },
                    "target_backup_vault_name": {
                        "@@assign": "FortKnox"
                    },
                    "target_logically_air_gapped_backup_vault_arn": {
                        "@@assign": "arn:aws:backup:$region:$account:backup-vault:AirGappedVault"
                    },
                    "index_actions": {
                        "resource_types": {
                            "@@assign": [
                                "EBS",
                                "S3"
                            ]
                        }
                     },
                    "copy_actions": {
                        "arn:aws:backup:us-east-1:$account:backup-vault:secondary_vault": {
                            "target_backup_vault_arn": {
                                "@@assign": "arn:aws:backup:us-east-1:$account:backup-vault:secondary_vault"
                            },
                            "lifecycle": {
                                "move_to_cold_storage_after_days": {
                                    "@@assign": "30"
                                },
                                "delete_after_days": {
                                    "@@assign": "120"
                                },
                                "opt_in_to_archive_for_supported_resources": {
                                    "@@assign": "false"
                                }
                            }
                        },
                        "arn:aws:backup:us-west-1:111111111111:backup-vault:tertiary_vault": {
                            "target_backup_vault_arn": {
                                "@@assign": "arn:aws:backup:us-west-1:111111111111:backup-vault:tertiary_vault"
                            },
                            "lifecycle": {
                                "move_to_cold_storage_after_days": {
                                    "@@assign": "30"
                                },
                                "delete_after_days": {
                                    "@@assign": "120"
                                },
                                "opt_in_to_archive_for_supported_resources": {
                                    "@@assign": "false"
                                }
                            }
                        } 
                    }
                }
            },
            "selections": {
                "tags": {
                    "datatype": {
                        "iam_role_arn": {
                            "@@assign": "arn:aws:iam::$account:role/MyIamRole"
                        },
                        "tag_key": {
                            "@@assign": "dataType"
                        },
                        "tag_value": {
                            "@@assign": [
                                "PII",
                                "RED"
                            ]
                        }
                    }
                }
            },
            "advanced_backup_settings": {
                "ec2": {
                    "windows_vss": {
                        "@@assign": "enabled"
                    }
                }
            }
        }
    }
}
```

Se nessun'altra politica viene ereditata o associata agli account, la politica effettiva resa per ciascuna di esse è Account AWS simile all'esempio seguente. L'espressione CRON implica che il backup venga eseguito una volta all'ora. L'ID account 123456789012 sarà l'ID account effettivo per ogni account.

```
{
    "plans": {
        "PII_Backup_Plan": {
            "regions": [
                "us-east-1",
                "ap-northeast-3",
                "eu-north-1"
            ],
            "rules": {
                "hourly": {
                    "schedule_expression": "cron(0 0/1 ? * * *)",
                    "start_backup_window_minutes": "60",
                    "target_backup_vault_name": "FortKnox",
                    "target_logically_air_gapped_backup_vault_arn": "arn:aws:backup:$region:$account:backup-vault:AirGappedVault",
                    "index_actions": {
                        "resource_types": {
                            "@@assign": [
                                "EBS",
                                "S3"
                            ]
                        }
                     },
                    "lifecycle": {
                        "delete_after_days": "2",
                        "move_to_cold_storage_after_days": "180",
                        "opt_in_to_archive_for_supported_resources": "false"
                    },
                    "copy_actions": {
                        "arn:aws:backup:us-east-1:$account:backup-vault:secondary_vault": {
                            "target_backup_vault_arn": {
                                "@@assign": "arn:aws:backup:us-east-1:$account:backup-vault:secondary_vault"
                            },
                            "lifecycle": {
                                "delete_after_days": "28",
                                "move_to_cold_storage_after_days": "180",
                                "opt_in_to_archive_for_supported_resources": "false"
                            }
                        },
                        "arn:aws:backup:us-west-1:111111111111:backup-vault:tertiary_vault": {
                            "target_backup_vault_arn": {
                                "@@assign": "arn:aws:backup:us-west-1:111111111111:backup-vault:tertiary_vault"
                            },
                            "lifecycle": {
                                "delete_after_days": "28",
                                "move_to_cold_storage_after_days": "180",
                                "opt_in_to_archive_for_supported_resources": "false"
                            }
                        }
                    }
                }
            },
            "selections": {
                "tags": {
                    "datatype": {
                        "iam_role_arn": "arn:aws:iam::123456789012:role/MyIamRole",
                        "tag_key": "dataType",
                        "tag_value": [
                            "PII",
                            "RED"
                        ]
                    }
                }
            },
            "advanced_backup_settings": {
                "ec2": {
                    "windows_vss": "enabled"
                }
            }
        }
    }
}
```

### Esempio 2: una policy padre viene unita a una policy figlio
<a name="backup-policy-example-2"></a>

Nell'esempio seguente, una politica ereditata per i genitori e una politica per i figli sono ereditate o direttamente collegate a un' Account AWS unione per formare la politica effettiva. 

**Policy padre** - Questa policy può essere collegata al root dell'organizzazione o a qualsiasi unità organizzativa padre.

```
{
    "plans": {
       "PII_Backup_Plan": {
            "regions": { "@@append":[ "us-east-1", "ap-northeast-3", "eu-north-1" ] },
            "rules": {
                "Hourly": {
                    "schedule_expression": { "@@assign": "cron(0 0/1 ? * * *)" },
                    "start_backup_window_minutes": { "@@assign": "60" },
                    "target_backup_vault_name": { "@@assign": "FortKnox" },
                    "index_actions": {
                        "resource_types": {
                            "@@assign": [
                                "EBS",
                                "S3"
                            ]
                        }
                     },
                    "lifecycle": {
                        "move_to_cold_storage_after_days": { "@@assign": "28" },
                        "delete_after_days": { "@@assign": "180" },
                        "opt_in_to_archive_for_supported_resources": { "@@assign": "false" }
                    },
                    "copy_actions": {
                        "arn:aws:backup:us-east-1:$account:backup-vault:secondary_vault" : {
                            "target_backup_vault_arn" : {
                                "@@assign" : "arn:aws:backup:us-east-1:$account:backup-vault:secondary_vault"
                            },
                            "lifecycle": {
                                "move_to_cold_storage_after_days": { "@@assign": "28" },
                                "delete_after_days": { "@@assign": "180" },
                                "opt_in_to_archive_for_supported_resources": { "@@assign": "false" }
                            }
                        }
                    }
                }
            },
            "selections": {
                "tags": {
                    "datatype": {
                        "iam_role_arn": { "@@assign": "arn:aws:iam::$account:role/MyIamRole" },
                        "tag_key": { "@@assign": "dataType" },
                        "tag_value": { "@@assign": [ "PII", "RED" ] }
                    }
                }
            }
        }
    }
}
```

**Policy figlia** - Questa policy può essere collegata direttamente all'account o a un'unità organizzativa che si trova a un livello inferiore qualsiasi a quello della policy padre cui è collegata.

```
{
    "plans": {
       "Monthly_Backup_Plan": {
            "regions": {
                "@@append":[ "us-east-1", "eu-central-1" ] },
            "rules": {
                "Monthly": {
                    "schedule_expression": { "@@assign": "cron(0 5 1 * ? *)" },
                    "start_backup_window_minutes": { "@@assign": "480" },
                    "target_backup_vault_name": { "@@assign": "Default" },
                    "lifecycle": {
                        "move_to_cold_storage_after_days": { "@@assign": "30" },
                        "delete_after_days": { "@@assign": "365" },
                        "opt_in_to_archive_for_supported_resources": { "@@assign": "false" }
                    },
                    "copy_actions": {
                        "arn:aws:backup:us-east-1:$account:backup-vault:Default" : {
                            "target_backup_vault_arn" : {
                                "@@assign" : "arn:aws:backup:us-east-1:$account:backup-vault:Default"
                            },
                            "lifecycle": { 
                                "move_to_cold_storage_after_days": { "@@assign": "30" },
                                "delete_after_days": { "@@assign": "365" },
                                "opt_in_to_archive_for_supported_resources": { "@@assign": "false" }
                            }
                        }
                    }
                }
            },
            "selections": {
                "tags": {
                    "MonthlyDatatype": {
                        "iam_role_arn": { "@@assign": "arn:aws:iam::$account:role/MyMonthlyBackupIamRole" },
                        "tag_key": { "@@assign": "BackupType" },
                        "tag_value": { "@@assign": [ "MONTHLY", "RED" ] }
                    }
                }
            }
        }
    }
}
```

**Policy effettiva risultante** - La policy effettiva applicata agli account contiene due piani, ciascuno con un proprio set di regole e un set di risorse a cui applicare le regole. 

```
{
    "plans": {
       "PII_Backup_Plan": {
            "regions": [ "us-east-1", "ap-northeast-3", "eu-north-1" ],
            "rules": {
                "hourly": {
                    "schedule_expression": "cron(0 0/1 ? * * *)",
                    "start_backup_window_minutes": "60",
                    "target_backup_vault_name": "FortKnox",
                    "index_actions": {
                        "resource_types": {
                            "@@assign": [
                                "EBS",
                                "S3"
                            ]
                        }
                     },
                    "lifecycle": {
                        "delete_after_days": "2",
                        "move_to_cold_storage_after_days": "180",
                        "opt_in_to_archive_for_supported_resources": { "@@assign": "false" }
                    },
                    "copy_actions": {
                        "arn:aws:backup:us-east-1:$account:backup-vault:secondary_vault" : {
                            "target_backup_vault_arn" : {
                                "@@assign" : "arn:aws:backup:us-east-1:$account:backup-vault:secondary_vault"
                            },
                            "lifecycle": {
                                "move_to_cold_storage_after_days": "28",
                                "delete_after_days": "180",
                                "opt_in_to_archive_for_supported_resources": { "@@assign": "false" }
                            }
                        }
                    }
                }
            },
            "selections": {
                "tags": {
                    "datatype": {
                        "iam_role_arn": "arn:aws:iam::$account:role/MyIamRole",
                        "tag_key": "dataType",
                        "tag_value": [ "PII", "RED" ]
                    }
                }
            }
        },
        "Monthly_Backup_Plan": {
            "regions": [ "us-east-1", "eu-central-1" ],
            "rules": {
                "monthly": {
                    "schedule_expression": "cron(0 5 1 * ? *)",
                    "start_backup_window_minutes": "480",
                    "target_backup_vault_name": "Default",
                    "lifecycle": {
                        "delete_after_days": "365",
                        "move_to_cold_storage_after_days": "30",
                        "opt_in_to_archive_for_supported_resources": { "@@assign": "false" }
                    },
                    "copy_actions": {
                        "arn:aws:backup:us-east-1:$account:backup-vault:Default" : {
                            "target_backup_vault_arn": {
                                "@@assign" : "arn:aws:backup:us-east-1:$account:backup-vault:Default"
                            },
                            "lifecycle": {
                                "move_to_cold_storage_after_days": "30",
                                "delete_after_days": "365",
                                "opt_in_to_archive_for_supported_resources": { "@@assign": "false" }
                            }
                        }
                    }
                }
            },
            "selections": {
                "tags": {
                    "monthlydatatype": {
                        "iam_role_arn": "arn:aws:iam::&ExampleAWSAccountNo3;:role/MyMonthlyBackupIamRole",
                        "tag_key": "BackupType",
                        "tag_value": [ "MONTHLY", "RED" ]
                    }
                }
            }
        }
    }
}
```

### Esempio 3: una policy padre impedisce qualsiasi modifica da parte di una policy figlio
<a name="backup-policy-example-3"></a>

Nell'esempio seguente, una policy padre ereditata utilizza gli [operatori di controllo figlio](policy-operators.md#child-control-operators) per imporre tutte le impostazioni e impedisce che vengano modificate o sostituite da una policy figlio. 

**Policy padre** - Questa policy può essere collegata al root dell'organizzazione o a qualsiasi unità organizzativa padre. La presenza di `"@@operators_allowed_for_child_policies": ["@@none"]` in ogni nodo della policy significa che una policy figlio non può apportare modifiche di alcun tipo al piano. Né una policy figlio può aggiungere altri piani alla policy effettiva. Questa policy diventa la policy effettiva per ogni unità organizzativa e account nell'unità organizzativa cui è collegata.

```
{
    "plans": {
        "@@operators_allowed_for_child_policies": ["@@none"],
        "PII_Backup_Plan": {
            "@@operators_allowed_for_child_policies": ["@@none"],
            "regions": {
                "@@operators_allowed_for_child_policies": ["@@none"],
                "@@append": [
                    "us-east-1",
                    "ap-northeast-3",
                    "eu-north-1"
                ]
            },
            "rules": {
                "@@operators_allowed_for_child_policies": ["@@none"],
                "Hourly": {
                    "@@operators_allowed_for_child_policies": ["@@none"],
                    "schedule_expression": {
                        "@@operators_allowed_for_child_policies": ["@@none"],
                        "@@assign": "cron(0 0/1 ? * * *)"
                    },
                    "start_backup_window_minutes": {
                        "@@operators_allowed_for_child_policies": ["@@none"],
                        "@@assign": "60"
                    },
                    "target_backup_vault_name": {
                        "@@operators_allowed_for_child_policies": ["@@none"],
                        "@@assign": "FortKnox"
                    },
                    "index_actions": {
                       "@@operators_allowed_for_child_policies": ["@@none"],
                        "resource_types": {
                            "@@assign": [
                                "EBS",
                                "S3"
                            ]
                        }
                     },
                    "lifecycle": {
                        "@@operators_allowed_for_child_policies": ["@@none"],
                        "move_to_cold_storage_after_days": {
                            "@@operators_allowed_for_child_policies": ["@@none"],
                            "@@assign": "28"
                        },
                        "delete_after_days": {
                            "@@operators_allowed_for_child_policies": ["@@none"],
                            "@@assign": "180"
                        },
                        "opt_in_to_archive_for_supported_resources": {
                            "@@operators_allowed_for_child_policies": ["@@none"],
                            "@@assign": "false"
                        }
                    },
                    "copy_actions": {
                        "@@operators_allowed_for_child_policies": ["@@none"],
                        "arn:aws:backup:us-east-1:$account:backup-vault:secondary_vault": {
                            "@@operators_allowed_for_child_policies": ["@@none"],
                            "target_backup_vault_arn": {
                                "@@assign": "arn:aws:backup:us-east-1:$account:backup-vault:secondary_vault",
                                "@@operators_allowed_for_child_policies": ["@@none"]
                            },
                            "lifecycle": {
                                "@@operators_allowed_for_child_policies": ["@@none"],
                                "delete_after_days": {
                                    "@@operators_allowed_for_child_policies": ["@@none"],
                                    "@@assign": "28"
                                },
                                "move_to_cold_storage_after_days": {
                                    "@@operators_allowed_for_child_policies": ["@@none"],
                                    "@@assign": "180"
                                },
                                 "opt_in_to_archive_for_supported_resources": {
                                    "@@operators_allowed_for_child_policies": ["@@none"],
                                    "@@assign": "false"
                                }
                            }
                        }
                    }
                }
            },
            "selections": {
                "@@operators_allowed_for_child_policies": ["@@none"],
                "tags": {
                    "@@operators_allowed_for_child_policies": ["@@none"],
                    "datatype": {
                        "@@operators_allowed_for_child_policies": ["@@none"],
                        "iam_role_arn": {
                            "@@operators_allowed_for_child_policies": ["@@none"],
                            "@@assign": "arn:aws:iam::$account:role/MyIamRole"
                        },
                        "tag_key": {
                            "@@operators_allowed_for_child_policies": ["@@none"],
                            "@@assign": "dataType"
                        },
                        "tag_value": {
                            "@@operators_allowed_for_child_policies": ["@@none"],
                            "@@assign": [
                                "PII",
                                "RED"
                            ]
                        }
                    }
                }
            },
            "advanced_backup_settings": {
                "@@operators_allowed_for_child_policies": ["@@none"],
                "ec2": {
                    "@@operators_allowed_for_child_policies": ["@@none"],
                    "windows_vss": {
                        "@@assign": "enabled",
                        "@@operators_allowed_for_child_policies": ["@@none"]
                    }
                }
            }
        }
    }
}
```

**Policy effettiva risultante** - Se esistono policy di backup figlio, queste vengono ignorate e la policy padre diventa la policy effettiva.

```
{
    "plans": {
        "PII_Backup_Plan": {
            "regions": [
                "us-east-1",
                "ap-northeast-3",
                "eu-north-1"
            ],
            "rules": {
                "hourly": {
                    "schedule_expression": "cron(0 0/1 ? * * *)",
                    "start_backup_window_minutes": "60",
                    "target_backup_vault_name": "FortKnox",
                    "index_actions": {
                        "resource_types": {
                            "@@assign": [
                                "EBS",
                                "S3"
                            ]
                        }
                     },
                    "lifecycle": {
                        "delete_after_days": "2",
                        "move_to_cold_storage_after_days": "180",
                        "opt_in_to_archive_for_supported_resources": "false"
                    },
                    "copy_actions": {
                        "target_backup_vault_arn": "arn:aws:backup:us-east-1:123456789012:backup-vault:secondary_vault",
                        "lifecycle": {
                            "move_to_cold_storage_after_days": "28",
                            "delete_after_days": "180",
                            "opt_in_to_archive_for_supported_resources": "false"
                        }
                    }
                }
            },
            "selections": {
                "tags": {
                    "datatype": {
                        "iam_role_arn": "arn:aws:iam::123456789012:role/MyIamRole",
                        "tag_key": "dataType",
                        "tag_value": [
                            "PII",
                            "RED"
                        ]
                    }
                }
            },
            "advanced_backup_settings": {
                "ec2": {"windows_vss": "enabled"}
            }
        }
    }
}
```

### Esempio 4: una policy padre impedisce modifiche a un piano di backup da parte di una policy figlio
<a name="backup-policy-example-4"></a>

Nell'esempio seguente, una policy padre ereditata utilizza gli [operatori di controllo figlio](policy-operators.md#child-control-operators) per imporre le impostazioni per un singolo piano e impedisce che vengano modificate o sostituite da una policy figlio. La policy figlio può comunque aggiungere altri piani.

**Policy padre** - Questa policy può essere collegata al root dell'organizzazione o a qualsiasi unità organizzativa padre. Questo esempio è simile all'esempio precedente con tutti gli operatori di ereditarietà figlio bloccati, ad eccezione del livello superiore `plans`. L'impostazione `@@append` a tale livello consente alle policy figlio di aggiungere altri piani alla raccolta nella policy effettiva. Le eventuali modifiche apportate al piano ereditato sono ancora bloccate.

Le sezioni del piano vengono troncate per chiarezza.

```
{
    "plans": {
        "@@operators_allowed_for_child_policies": ["@@append"],
        "PII_Backup_Plan": {
            "@@operators_allowed_for_child_policies": ["@@none"],
            "regions": { ... },
            "rules": { ... },
            "selections": { ... }
        }
    }
}
```

**Policy figlia** - Questa policy può essere collegata direttamente all'account o a un'unità organizzativa che si trova a un livello inferiore qualsiasi a quello della policy padre cui è collegata. Questa policy figlio definisce un nuovo piano.

Le sezioni del piano vengono troncate per chiarezza.

```
{
    "plans": {
        "MonthlyBackupPlan": {
            "regions": { ... },
            "rules": { ... },
            "selections": { … }
        }
    }
}
```

**Policy effettiva risultante** - La policy effettiva include entrambi i piani.

```
{
    "plans": {
        "PII_Backup_Plan": {
            "regions": { ... },
            "rules": { ... },
            "selections": { ... }
        },
        "MonthlyBackupPlan": {
            "regions": { ... },
            "rules": { ... },
            "selections": { … }
        }
    }
}
```

### Esempio 5: una policy figlio sostituisce le impostazioni in una policy padre
<a name="backup-policy-example-5"></a>

Nell'esempio seguente, una policy figlia utilizza [operatori di impostazione del valore](policy-operators.md#value-setting-operators) per sovrascrivere alcune delle impostazioni ereditate da una policy padre.

**Policy padre** - Questa policy può essere collegata al root dell'organizzazione o a qualsiasi unità organizzativa padre. Qualsiasi impostazione può essere sovrascritta da una policy figlio perché il comportamento predefinito, in assenza di un [operatore di controllo figlio](policy-operators.md#child-control-operators) che lo impedisce, è quello di consentire alla policy figlio di `@@assign`, `@@append` o `@@remove`. La policy padre contiene tutti gli elementi necessari per un piano di backup valido, quindi esegue correttamente il backup delle risorse se viene ereditata così com'è.

```
{
    "plans": {
        "PII_Backup_Plan": {
            "regions": {
                "@@append": [
                    "us-east-1",
                    "ap-northeast-3",
                    "eu-north-1"
                ]
            },
            "rules": {
                "Hourly": {
                    "schedule_expression": {"@@assign": "cron(0 0/1 ? * * *)"},
                    "start_backup_window_minutes": {"@@assign": "60"},
                    "target_backup_vault_name": {"@@assign": "FortKnox"},
                    "index_actions": {
                        "resource_types": {
                            "@@assign": [
                                "EBS",
                                "S3"
                            ]
                        }
                     },
                    "lifecycle": {
                        "delete_after_days": {"@@assign": "2"},
                        "move_to_cold_storage_after_days": {"@@assign": "180"},
                        "opt_in_to_archive_for_supported_resources": {"@@assign": false}
                    },
                    "copy_actions": {
                        "arn:aws:backup:us-east-1:$account:backup-vault:t2": {
                            "target_backup_vault_arn": {"@@assign": "arn:aws:backup:us-east-1:$account:backup-vault:t2"},
                            "lifecycle": {
                                "move_to_cold_storage_after_days": {"@@assign": "28"},
                                "delete_after_days": {"@@assign": "180"},
                                "opt_in_to_archive_for_supported_resources": {"@@assign": false}
                            }
                        }
                    }
                }
            },
            "selections": {
                "tags": {
                    "datatype": {
                        "iam_role_arn": {"@@assign": "arn:aws:iam::$account:role/MyIamRole"},
                        "tag_key": {"@@assign": "dataType"},
                        "tag_value": {
                            "@@assign": [
                                "PII",
                                "RED"
                            ]
                        }
                    }
                }
            }
        }
    }
}
```

**Policy figlia** - La policy figlia include solo le impostazioni che devono essere diverse dalla policy padre ereditata. È necessario disporre di una policy padre ereditata che fornisca le altre impostazioni necessarie quando viene unita in una policy effettiva. In caso contrario, la policy di backup effettiva contiene un piano di backup che non è valido e non esegue il backup delle risorse come previsto.

```
{
    "plans": {
        "PII_Backup_Plan": {
            "regions": {
                "@@assign": [
                    "us-west-2",
                    "eu-central-1"
                ]
            },
            "rules": {
                "Hourly": {
                    "schedule_expression": {"@@assign": "cron(0 0/2 ? * * *)"},
                    "start_backup_window_minutes": {"@@assign": "80"},
                    "target_backup_vault_name": {"@@assign": "Default"},
                    "lifecycle": {
                        "move_to_cold_storage_after_days": {"@@assign": "30"},
                        "delete_after_days": {"@@assign": "365"},
                        "opt_in_to_archive_for_supported_resources": {"@@assign": false}
                    }
                }
            }
        }
    }
}
```

**Policy effettiva risultante** - La policy effettiva include le impostazioni di entrambe le policy, con le impostazioni fornite dalla policy figlio che sovrascrivono le impostazioni ereditate dal padre. In questo esempio, si verificano le seguenti modifiche:
+ L'elenco delle regioni viene sostituito con un elenco completamente diverso. Se desideri aggiungere una Regione all'elenco ereditato, utilizza `@@append` anziché `@@assign` nella policy figlia.
+ AWS Backup viene eseguito ogni due ore anziché ogni ora.
+ AWS Backup consente l'avvio del backup per 80 minuti anziché 60 minuti. 
+ AWS Backup utilizza il `Default` vault invece di. `FortKnox`
+ Il ciclo di vita viene esteso sia per il trasferimento nello storage a freddo sia per l'eliminazione finale del backup.

```
{
    "plans": {
        "PII_Backup_Plan": {
            "regions": [
                "us-west-2",
                "eu-central-1"
            ],
            "rules": {
                "hourly": {
                    "schedule_expression": "cron(0 0/2 ? * * *)",
                    "start_backup_window_minutes": "80",
                    "target_backup_vault_name": "Default",
                     "index_actions": {
                        "resource_types": {
                            "@@assign": [
                                "EBS",
                                "S3"
                            ]
                        }
                     },
                    "lifecycle": {
                        "delete_after_days": "365",
                        "move_to_cold_storage_after_days": "30",
                        "opt_in_to_archive_for_supported_resources": "false"

                    },
                    "copy_actions": {
                        "arn:aws:backup:us-east-1:$account:backup-vault:secondary_vault": {
                            "target_backup_vault_arn": {"@@assign": "arn:aws:backup:us-east-1:$account:backup-vault:secondary_vault"},
                            "lifecycle": {
                                "move_to_cold_storage_after_days": "28",
                                "delete_after_days": "180",
                                "opt_in_to_archive_for_supported_resources": "false"
                            }
                        }
                    }
                }
            },
            "selections": {
                "tags": {
                    "datatype": {
                        "iam_role_arn": "arn:aws:iam::$account:role/MyIamRole",
                        "tag_key": "dataType",
                        "tag_value": [
                            "PII",
                            "RED"
                        ]
                    }
                }
            }
        }
    }
}
```

### Esempio 6: Specificazione delle risorse con il blocco `tags`
<a name="backup-policy-example-6"></a>

L'esempio seguente include tutte le risorse con `tag_key` = `“env”` e `tag_value` = `"prod"` o`"gamma"`. Questo esempio esclude le risorse con `tag_key` = `"backup"` e `tag_value` =`"false"`.

```
...
"selections":{
    "tags":{
        "selection_name":{
            "iam_role_arn": {"@@assign": "arn:aws:iam::$account:role/IAMRole"},
            "tag_key":{"@@assign": "env"},
            "tag_value":{"@@assign": ["prod", "gamma"]},
            "conditions":{                       
                "string_not_equals":{
                    "condition_name1":{
                        "condition_key": { "@@assign": "aws:ResourceTag/backup"  },
                        "condition_value": {  "@@assign": "false" }
                    }
                }
            }
        }  
    }
},
...
```

### Esempio 7: Specificazione delle risorse con il blocco `resources`
<a name="backup-policy-example-7"></a>

Di seguito sono riportati alcuni esempi di utilizzo del `resources` blocco per specificare le risorse.

------
#### [ Example: Select all resources in my account ]

La logica booleana è simile a quella che potresti usare nelle policy IAM. Il `"resource_types"` blocco utilizza un valore booleano `AND` per combinare i tipi di risorse.

```
...
"resources":{
    "resource_selection_name":{
        "iam_role_arn":{"@@assign": "arn:aws:iam::$account:role/IAMRole"},
        "resource_types":{
            "@@assign": [
                "*"
            ]
        }
    }
},
...
```

------
#### [ Example: Select all resources in my account, but exclude Amazon EBS volumes ]

La logica booleana è simile a quella che potresti usare nelle politiche IAM. I `"not_resource_types"` blocchi `"resource_types"` and utilizzano un valore booleano `AND` per combinare i tipi di risorse.

```
...
"resources":{
    "resource_selection_name":{
        "iam_role_arn":{"@@assign": "arn:aws:iam::$account:role/IAMRole"},
        "resource_types":{
            "@@assign": [
                "*"
            ]
        },
        "not_resource_types":{
            "@@assign": [
                "arn:aws:ec2:*:*:volume/*"
            ]
        }
    }
},
...
```

------
#### [ Example: Select all resources tagged with "backup" : "true", but exclude Amazon EBS volumes ]

La logica booleana è simile a quella che potresti usare nelle policy IAM. I `"not_resource_types"` blocchi `"resource_types"` and utilizzano un valore booleano `AND` per combinare i tipi di risorse. Il `"conditions"` blocco utilizza un valore booleano. `AND` 

```
...
"resources":{
    "resource_selection_name":{
        "iam_role_arn":{"@@assign": "arn:aws:iam::$account:role/IAMRole"},
        "resource_types":{
            "@@assign": [
                "*"
            ]
        },
        "not_resource_types":{
            "@@assign": [
                "arn:aws:ec2:*:*:volume/*"
            ]
        },
        "conditions":{                       
            "string_equals":{
                "condition_name1":{
                    "condition_key": { "@@assign":"aws:ResourceTag/backup"},
                    "condition_value": {  "@@assign":"true" }
                }
            }
        }
    }
},
...
```

------
#### [ Example: Select all Amazon EBS volumes and Amazon RDS DB instances tagged with both "backup" : "true" and "stage" : "prod" ]

La logica booleana è simile a quella che potresti usare nelle politiche IAM. Il `"resource_types"` blocco utilizza un valore booleano `AND` per combinare i tipi di risorse. Il `"conditions"` blocco utilizza un valore booleano `AND` per combinare i tipi di risorse e le condizioni dei tag.

```
...
"resources":{
    "resource_selection_name":{
        "iam_role_arn":{"@@assign": "arn:aws:iam::$account:role/IAMRole"},
        "resource_types":{
            "@@assign": [
                "arn:aws:ec2:*:*:volume/*",
                "arn:aws:rds:*:*:db:*"
            ]
        },
        "conditions":{
            "string_equals":{
                "condition_name1":{
                    "condition_key":{"@@assign":"aws:ResourceTag/backup"},
                    "condition_value":{"@@assign":"true"}
                },
                "condition_name2":{
                    "condition_key":{"@@assign":"aws:ResourceTag/stage"},
                    "condition_value":{"@@assign":"prod"}
                }     
            }
        }   
    }
},
...
```

------
#### [ Example: Select all Amazon EBS volumes and Amazon RDS instances tagged with "backup" : "true" but not "stage" : "test" ]

La logica booleana è simile a quella che potresti usare nelle politiche IAM. Il `"resource_types"` blocco utilizza un valore booleano `AND` per combinare i tipi di risorse. Il `"conditions"` blocco utilizza un valore booleano `AND` per combinare i tipi di risorse e le condizioni dei tag.

```
...
"resources":{
    "resource_selection_name":{
        "iam_role_arn":{"@@assign": "arn:aws:iam::$account:role/IAMRole"},
        "resource_types":{
            "@@assign": [
                "arn:aws:ec2:*:*:volume/*",
                "arn:aws:rds:*:*:db:*"
            ]
        },
        "conditions":{
            "string_equals":{
                "condition_name1":{
                    "condition_key":{"@@assign":"aws:ResourceTag/backup"},
                    "condition_value":{"@@assign":"true"}
                  }
            },
            "string_not_equals":{
                "condition_name2":{
                    "condition_key":{"@@assign":"aws:ResourceTag/stage"},
                    "condition_value":{"@@assign":"test"}
                }
            }
        }
    }
},
...
```

------
#### [ Example: Select all resources tagged with "key1" and a value which begins with "include" but not with "key2" and value that contains the word "exclude" ]

La logica booleana è simile a quella che potresti usare nelle politiche IAM. Il `"resource_types"` blocco utilizza un valore booleano `AND` per combinare i tipi di risorse. Il `"conditions"` blocco utilizza un valore booleano `AND` per combinare i tipi di risorse e le condizioni dei tag.

In questo esempio, nota l'uso del carattere jolly `(*)` in`include*`, `*exclude*` e. `arn:aws:rds:*:*:db:*` È possibile utilizzare il carattere jolly `(*)` all'inizio, alla fine e al centro di una stringa.

```
...
"resources":{
    "resource_selection_name":{
        "iam_role_arn":{"@@assign": "arn:aws:iam::$account:role/IAMRole"},
        "resource_types":{
            "@@assign": [
                "*"
            ]
        },              
        "conditions":{
            "string_like":{
                "condition_name1":{
                    "condition_key":{"@@assign":"aws:ResourceTag/key1"},
                    "condition_value":{"@@assign":"include*"}
                }
            },
            "string_not_like":{
                "condition_name2":{
                    "condition_key":{"@@assign":"aws:ResourceTag/key2"},
                    "condition_value":{"@@assign":"*exclude*"}
                }
            }
        }
    }
},
...
```

------
#### [ Example: Select all resources tagged with "backup" : "true" except Amazon FSx file systems and Amazon RDS resources ]

La logica booleana è simile a quella che potresti usare nelle policy IAM. I `"not_resource_types"` blocchi `"resource_types"` and utilizzano un valore booleano `AND` per combinare i tipi di risorse. Il `"conditions"` blocco utilizza un valore booleano `AND` per combinare i tipi di risorse e le condizioni dei tag.

```
...
"resources":{
    "resource_selection_name":{
        "iam_role_arn":{"@@assign": "arn:aws:iam::$account:role/IAMRole"},
            "resource_types":{
                "@@assign": [
                    "*"
               ]
            },
            "not_resource_types":{
                "@@assign":[
                    "arn:aws:fsx:*:*:file-system/*",
                    "arn:aws:rds:*:*:db:*"
                ]
            },
        "conditions":{
            "string_equals":{
                "condition_name1":{
                    "condition_key":{"@@assign":"aws:ResourceTag/backup"},
                    "condition_value":{"@@assign":"true"}
                }
            }
        }
    }
},
...
```

------

### Esempio 8: piano di backup con scansione di Amazon GuardDuty Malware Protection
<a name="backup-policy-example-8"></a>

L'esempio seguente mostra una policy di backup che abilita la scansione di Amazon GuardDuty Malware Protection sui punti di ripristino del backup. La policy utilizza `scan_actions` la regola per abilitare la scansione e, `scan_settings` a livello di piano, per configurare lo scanner.

Per utilizzare questa funzionalità, è necessario disporre delle autorizzazioni di ruolo IAM appropriate. Per ulteriori informazioni, consulta [Access](https://docs.aws.amazon.com//aws-backup/latest/devguide/malware-protection.html#malware-access) nella *AWS Backup Developer Guide*.

```
{
    "plans": {
        "Malware_Scan_Backup_Plan": {
            "regions": {
                "@@assign": [
                    "us-east-1",
                    "us-west-2"
                ]
            },
            "rules": {
                "Daily_With_Incremental_Scan": {
                    "schedule_expression": {
                        "@@assign": "cron(0 5 ? * * *)"
                    },
                    "start_backup_window_minutes": {
                        "@@assign": "60"
                    },
                    "target_backup_vault_name": {
                        "@@assign": "Default"
                    },
                    "lifecycle": {
                        "delete_after_days": {
                            "@@assign": "35"
                        }
                    },
                    "scan_actions": {
                        "GUARDDUTY": {
                            "scan_mode": {
                                "@@assign": "INCREMENTAL_SCAN"
                            }
                        }
                    }
                },
                "Monthly_With_Full_Scan": {
                    "schedule_expression": {
                        "@@assign": "cron(0 5 1 * ? *)"
                    },
                    "start_backup_window_minutes": {
                        "@@assign": "60"
                    },
                    "target_backup_vault_name": {
                        "@@assign": "Default"
                    },
                    "lifecycle": {
                        "delete_after_days": {
                            "@@assign": "365"
                        }
                    },
                    "scan_actions": {
                        "GUARDDUTY": {
                            "scan_mode": {
                                "@@assign": "FULL_SCAN"
                            }
                        }
                    }
                }
            },
            "selections": {
                "tags": {
                    "scan_selection": {
                        "iam_role_arn": {
                            "@@assign": "arn:aws:iam::$account:role/MyBackupRole"
                        },
                        "tag_key": {
                            "@@assign": "backup"
                        },
                        "tag_value": {
                            "@@assign": [
                                "true"
                            ]
                        }
                    }
                }
            },
            "scan_settings": {
                "GUARDDUTY": {
                    "resource_types": {
                        "@@assign": [
                            "EBS"
                        ]
                    },
                    "scanner_role_arn": {
                        "@@assign": "arn:aws:iam::$account:role/MyGuardDutyScannerRole"
                    }
                }
            }
        }
    }
}
```

I punti chiave di questo esempio sono:
+ `scan_actions`è specificato all'interno di ogni regola. Il nome dello scanner `GUARDDUTY` viene utilizzato come chiave. La regola giornaliera utilizza `INCREMENTAL_SCAN` e la regola mensile utilizza`FULL_SCAN`.
+ `scan_settings`è specificato a livello di piano (non all'interno di una regola). Configura il ruolo dello scanner e i tipi di risorse da scansionare.
+ `scanner_role_arn`Devono fare riferimento a un ruolo IAM con la policy `AWSBackupGuardDutyRolePolicyForScans` gestita allegata e una policy di fiducia che consenta al responsabile del `malware-protection.guardduty.amazonaws.com` servizio di assumere il ruolo.