

This is the new *CloudFormation Template Reference Guide*. Please update your bookmarks and links. For help getting started with CloudFormation, see the [AWS CloudFormation User Guide](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html).

# AWS Backup
<a name="AWS_Backup"></a>

**Resource types**
+ [AWS::Backup::BackupPlan](aws-resource-backup-backupplan.md)
+ [AWS::Backup::BackupSelection](aws-resource-backup-backupselection.md)
+ [AWS::Backup::BackupVault](aws-resource-backup-backupvault.md)
+ [AWS::Backup::Framework](aws-resource-backup-framework.md)
+ [AWS::Backup::LogicallyAirGappedBackupVault](aws-resource-backup-logicallyairgappedbackupvault.md)
+ [AWS::Backup::ReportPlan](aws-resource-backup-reportplan.md)
+ [AWS::Backup::RestoreTestingPlan](aws-resource-backup-restoretestingplan.md)
+ [AWS::Backup::RestoreTestingSelection](aws-resource-backup-restoretestingselection.md)
+ [AWS::Backup::TieringConfiguration](aws-resource-backup-tieringconfiguration.md)

# AWS::Backup::BackupPlan
<a name="aws-resource-backup-backupplan"></a>

Contains an optional backup plan display name and an array of `BackupRule` objects, each of which specifies a backup rule. Each rule in a backup plan is a separate scheduled task and can back up a different selection of AWS resources.

For a sample CloudFormation template, see the [AWS Backup Developer Guide](https://docs.aws.amazon.com/aws-backup/latest/devguide/assigning-resources.html#assigning-resources-cfn).

## Syntax
<a name="aws-resource-backup-backupplan-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-backup-backupplan-syntax.json"></a>

```
{
  "Type" : "AWS::Backup::BackupPlan",
  "Properties" : {
      "[BackupPlan](#cfn-backup-backupplan-backupplan)" : BackupPlanResourceType,
      "[BackupPlanTags](#cfn-backup-backupplan-backupplantags)" : {Key: Value, ...}
    }
}
```

### YAML
<a name="aws-resource-backup-backupplan-syntax.yaml"></a>

```
Type: AWS::Backup::BackupPlan
Properties:
  [BackupPlan](#cfn-backup-backupplan-backupplan): 
    BackupPlanResourceType
  [BackupPlanTags](#cfn-backup-backupplan-backupplantags): 
    Key: Value
```

## Properties
<a name="aws-resource-backup-backupplan-properties"></a>

`BackupPlan`  <a name="cfn-backup-backupplan-backupplan"></a>
Uniquely identifies the backup plan to be associated with the selection of resources.  
*Required*: Yes  
*Type*: [BackupPlanResourceType](aws-properties-backup-backupplan-backupplanresourcetype.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`BackupPlanTags`  <a name="cfn-backup-backupplan-backupplantags"></a>
The tags to assign to the backup plan.  
*Required*: No  
*Type*: Object of String  
*Pattern*: `^.{1,128}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-backup-backupplan-return-values"></a>

### Ref
<a name="aws-resource-backup-backupplan-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns`BackupPlanId`.

For more information about using the `Ref` function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html).

### Fn::GetAtt
<a name="aws-resource-backup-backupplan-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-backup-backupplan-return-values-fn--getatt-fn--getatt"></a>

`BackupPlanArn`  <a name="BackupPlanArn-fn::getatt"></a>
An Amazon Resource Name (ARN) that uniquely identifies a backup plan; for example, `arn:aws:backup:us-east-1:123456789012:plan:8F81F553-3A74-4A3F-B93D-B3360DC80C50`.

`BackupPlanId`  <a name="BackupPlanId-fn::getatt"></a>
Uniquely identifies a backup plan.

`VersionId`  <a name="VersionId-fn::getatt"></a>
Unique, randomly generated, Unicode, UTF-8 encoded strings that are at most 1,024 bytes long. Version Ids cannot be edited.

# AWS::Backup::BackupPlan AdvancedBackupSettingResourceType
<a name="aws-properties-backup-backupplan-advancedbackupsettingresourcetype"></a>

Specifies an object containing resource type and backup options. This is only supported for Windows VSS backups.

## Syntax
<a name="aws-properties-backup-backupplan-advancedbackupsettingresourcetype-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-backupplan-advancedbackupsettingresourcetype-syntax.json"></a>

```
{
  "[BackupOptions](#cfn-backup-backupplan-advancedbackupsettingresourcetype-backupoptions)" : Json,
  "[ResourceType](#cfn-backup-backupplan-advancedbackupsettingresourcetype-resourcetype)" : String
}
```

### YAML
<a name="aws-properties-backup-backupplan-advancedbackupsettingresourcetype-syntax.yaml"></a>

```
  [BackupOptions](#cfn-backup-backupplan-advancedbackupsettingresourcetype-backupoptions): Json
  [ResourceType](#cfn-backup-backupplan-advancedbackupsettingresourcetype-resourcetype): String
```

## Properties
<a name="aws-properties-backup-backupplan-advancedbackupsettingresourcetype-properties"></a>

`BackupOptions`  <a name="cfn-backup-backupplan-advancedbackupsettingresourcetype-backupoptions"></a>
The backup option for the resource. Each option is a key-value pair. This option is only available for Windows VSS backup jobs.  
Valid values:   
Set to `"WindowsVSS":"enabled"` to enable the `WindowsVSS` backup option and create a Windows VSS backup.   
Set to `"WindowsVSS":"disabled"` to create a regular backup. The `WindowsVSS` option is not enabled by default.  
If you specify an invalid option, you get an `InvalidParameterValueException` exception.  
For more information about Windows VSS backups, see [Creating a VSS-Enabled Windows Backup](https://docs.aws.amazon.com/aws-backup/latest/devguide/windows-backups.html).  
*Required*: Yes  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ResourceType`  <a name="cfn-backup-backupplan-advancedbackupsettingresourcetype-resourcetype"></a>
The name of a resource type. The only supported resource type is EC2.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Backup::BackupPlan BackupPlanResourceType
<a name="aws-properties-backup-backupplan-backupplanresourcetype"></a>

Specifies an object containing properties used to create a backup plan.

## Syntax
<a name="aws-properties-backup-backupplan-backupplanresourcetype-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-backupplan-backupplanresourcetype-syntax.json"></a>

```
{
  "[AdvancedBackupSettings](#cfn-backup-backupplan-backupplanresourcetype-advancedbackupsettings)" : [ AdvancedBackupSettingResourceType, ... ],
  "[BackupPlanName](#cfn-backup-backupplan-backupplanresourcetype-backupplanname)" : String,
  "[BackupPlanRule](#cfn-backup-backupplan-backupplanresourcetype-backupplanrule)" : [ BackupRuleResourceType, ... ],
  "[ScanSettings](#cfn-backup-backupplan-backupplanresourcetype-scansettings)" : [ ScanSettingResourceType, ... ]
}
```

### YAML
<a name="aws-properties-backup-backupplan-backupplanresourcetype-syntax.yaml"></a>

```
  [AdvancedBackupSettings](#cfn-backup-backupplan-backupplanresourcetype-advancedbackupsettings): 
    - AdvancedBackupSettingResourceType
  [BackupPlanName](#cfn-backup-backupplan-backupplanresourcetype-backupplanname): String
  [BackupPlanRule](#cfn-backup-backupplan-backupplanresourcetype-backupplanrule): 
    - BackupRuleResourceType
  [ScanSettings](#cfn-backup-backupplan-backupplanresourcetype-scansettings): 
    - ScanSettingResourceType
```

## Properties
<a name="aws-properties-backup-backupplan-backupplanresourcetype-properties"></a>

`AdvancedBackupSettings`  <a name="cfn-backup-backupplan-backupplanresourcetype-advancedbackupsettings"></a>
A list of backup options for each resource type.  
*Required*: No  
*Type*: Array of [AdvancedBackupSettingResourceType](aws-properties-backup-backupplan-advancedbackupsettingresourcetype.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`BackupPlanName`  <a name="cfn-backup-backupplan-backupplanresourcetype-backupplanname"></a>
The display name of a backup plan.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`BackupPlanRule`  <a name="cfn-backup-backupplan-backupplanresourcetype-backupplanrule"></a>
An array of `BackupRule` objects, each of which specifies a scheduled task that is used to back up a selection of resources.  
*Required*: Yes  
*Type*: Array of [BackupRuleResourceType](aws-properties-backup-backupplan-backupruleresourcetype.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ScanSettings`  <a name="cfn-backup-backupplan-backupplanresourcetype-scansettings"></a>
Property description not available.  
*Required*: No  
*Type*: Array of [ScanSettingResourceType](aws-properties-backup-backupplan-scansettingresourcetype.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Backup::BackupPlan BackupRuleResourceType
<a name="aws-properties-backup-backupplan-backupruleresourcetype"></a>

Specifies an object containing properties used to schedule a task to back up a selection of resources.

## Syntax
<a name="aws-properties-backup-backupplan-backupruleresourcetype-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-backupplan-backupruleresourcetype-syntax.json"></a>

```
{
  "[CompletionWindowMinutes](#cfn-backup-backupplan-backupruleresourcetype-completionwindowminutes)" : Number,
  "[CopyActions](#cfn-backup-backupplan-backupruleresourcetype-copyactions)" : [ CopyActionResourceType, ... ],
  "[EnableContinuousBackup](#cfn-backup-backupplan-backupruleresourcetype-enablecontinuousbackup)" : Boolean,
  "[IndexActions](#cfn-backup-backupplan-backupruleresourcetype-indexactions)" : [ IndexActionsResourceType, ... ],
  "[Lifecycle](#cfn-backup-backupplan-backupruleresourcetype-lifecycle)" : LifecycleResourceType,
  "[RecoveryPointTags](#cfn-backup-backupplan-backupruleresourcetype-recoverypointtags)" : {Key: Value, ...},
  "[RuleName](#cfn-backup-backupplan-backupruleresourcetype-rulename)" : String,
  "[ScanActions](#cfn-backup-backupplan-backupruleresourcetype-scanactions)" : [ ScanActionResourceType, ... ],
  "[ScheduleExpression](#cfn-backup-backupplan-backupruleresourcetype-scheduleexpression)" : String,
  "[ScheduleExpressionTimezone](#cfn-backup-backupplan-backupruleresourcetype-scheduleexpressiontimezone)" : String,
  "[StartWindowMinutes](#cfn-backup-backupplan-backupruleresourcetype-startwindowminutes)" : Number,
  "[TargetBackupVault](#cfn-backup-backupplan-backupruleresourcetype-targetbackupvault)" : String,
  "[TargetLogicallyAirGappedBackupVaultArn](#cfn-backup-backupplan-backupruleresourcetype-targetlogicallyairgappedbackupvaultarn)" : String
}
```

### YAML
<a name="aws-properties-backup-backupplan-backupruleresourcetype-syntax.yaml"></a>

```
  [CompletionWindowMinutes](#cfn-backup-backupplan-backupruleresourcetype-completionwindowminutes): Number
  [CopyActions](#cfn-backup-backupplan-backupruleresourcetype-copyactions): 
    - CopyActionResourceType
  [EnableContinuousBackup](#cfn-backup-backupplan-backupruleresourcetype-enablecontinuousbackup): Boolean
  [IndexActions](#cfn-backup-backupplan-backupruleresourcetype-indexactions): 
    - IndexActionsResourceType
  [Lifecycle](#cfn-backup-backupplan-backupruleresourcetype-lifecycle): 
    LifecycleResourceType
  [RecoveryPointTags](#cfn-backup-backupplan-backupruleresourcetype-recoverypointtags): 
    Key: Value
  [RuleName](#cfn-backup-backupplan-backupruleresourcetype-rulename): String
  [ScanActions](#cfn-backup-backupplan-backupruleresourcetype-scanactions): 
    - ScanActionResourceType
  [ScheduleExpression](#cfn-backup-backupplan-backupruleresourcetype-scheduleexpression): String
  [ScheduleExpressionTimezone](#cfn-backup-backupplan-backupruleresourcetype-scheduleexpressiontimezone): String
  [StartWindowMinutes](#cfn-backup-backupplan-backupruleresourcetype-startwindowminutes): Number
  [TargetBackupVault](#cfn-backup-backupplan-backupruleresourcetype-targetbackupvault): String
  [TargetLogicallyAirGappedBackupVaultArn](#cfn-backup-backupplan-backupruleresourcetype-targetlogicallyairgappedbackupvaultarn): String
```

## Properties
<a name="aws-properties-backup-backupplan-backupruleresourcetype-properties"></a>

`CompletionWindowMinutes`  <a name="cfn-backup-backupplan-backupruleresourcetype-completionwindowminutes"></a>
A value in minutes after a backup job is successfully started before it must be completed or it is canceled by AWS Backup.  
*Required*: No  
*Type*: Number  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`CopyActions`  <a name="cfn-backup-backupplan-backupruleresourcetype-copyactions"></a>
An array of CopyAction objects, which contains the details of the copy operation.  
*Required*: No  
*Type*: Array of [CopyActionResourceType](aws-properties-backup-backupplan-copyactionresourcetype.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`EnableContinuousBackup`  <a name="cfn-backup-backupplan-backupruleresourcetype-enablecontinuousbackup"></a>
Enables continuous backup and point-in-time restores (PITR).  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IndexActions`  <a name="cfn-backup-backupplan-backupruleresourcetype-indexactions"></a>
There can up to one IndexAction in each BackupRule, as each backup can have 0 or 1 backup index associated with it.  
Within the array is ResourceTypes. Only 1 resource type will be accepted for each BackupRule. Valid values:  
+ `EBS` for Amazon Elastic Block Store
+ `S3` for Amazon Simple Storage Service (Amazon S3)
*Required*: No  
*Type*: Array of [IndexActionsResourceType](aws-properties-backup-backupplan-indexactionsresourcetype.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Lifecycle`  <a name="cfn-backup-backupplan-backupruleresourcetype-lifecycle"></a>
The lifecycle defines when a protected resource is transitioned to cold storage and when it expires. AWS Backup transitions and expires backups automatically according to the lifecycle that you define.  
*Required*: No  
*Type*: [LifecycleResourceType](aws-properties-backup-backupplan-lifecycleresourcetype.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RecoveryPointTags`  <a name="cfn-backup-backupplan-backupruleresourcetype-recoverypointtags"></a>
The tags to assign to the resources.  
*Required*: No  
*Type*: Object of String  
*Pattern*: `^.{1,128}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RuleName`  <a name="cfn-backup-backupplan-backupruleresourcetype-rulename"></a>
A display name for a backup rule.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ScanActions`  <a name="cfn-backup-backupplan-backupruleresourcetype-scanactions"></a>
Property description not available.  
*Required*: No  
*Type*: Array of [ScanActionResourceType](aws-properties-backup-backupplan-scanactionresourcetype.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ScheduleExpression`  <a name="cfn-backup-backupplan-backupruleresourcetype-scheduleexpression"></a>
A CRON expression specifying when AWS Backup initiates a backup job.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ScheduleExpressionTimezone`  <a name="cfn-backup-backupplan-backupruleresourcetype-scheduleexpressiontimezone"></a>
This is the timezone in which the schedule expression is set. By default, ScheduleExpressions are in UTC. You can modify this to a specified timezone.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StartWindowMinutes`  <a name="cfn-backup-backupplan-backupruleresourcetype-startwindowminutes"></a>
An optional value that specifies a period of time in minutes after a backup is scheduled before a job is canceled if it doesn't start successfully.  
If this value is included, it must be at least 60 minutes to avoid errors.  
*Required*: No  
*Type*: Number  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TargetBackupVault`  <a name="cfn-backup-backupplan-backupruleresourcetype-targetbackupvault"></a>
The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the AWS Region where they are created. They consist of letters, numbers, and hyphens.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TargetLogicallyAirGappedBackupVaultArn`  <a name="cfn-backup-backupplan-backupruleresourcetype-targetlogicallyairgappedbackupvaultarn"></a>
The ARN of a logically air-gapped vault. ARN must be in the same account and Region. If provided, supported fully managed resources back up directly to logically air-gapped vault, while other supported resources create a temporary (billable) snapshot in backup vault, then copy it to logically air-gapped vault. Unsupported resources only back up to the specified backup vault.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Backup::BackupPlan CopyActionResourceType
<a name="aws-properties-backup-backupplan-copyactionresourcetype"></a>

Copies backups created by a backup rule to another vault.

## Syntax
<a name="aws-properties-backup-backupplan-copyactionresourcetype-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-backupplan-copyactionresourcetype-syntax.json"></a>

```
{
  "[DestinationBackupVaultArn](#cfn-backup-backupplan-copyactionresourcetype-destinationbackupvaultarn)" : String,
  "[Lifecycle](#cfn-backup-backupplan-copyactionresourcetype-lifecycle)" : LifecycleResourceType
}
```

### YAML
<a name="aws-properties-backup-backupplan-copyactionresourcetype-syntax.yaml"></a>

```
  [DestinationBackupVaultArn](#cfn-backup-backupplan-copyactionresourcetype-destinationbackupvaultarn): String
  [Lifecycle](#cfn-backup-backupplan-copyactionresourcetype-lifecycle): 
    LifecycleResourceType
```

## Properties
<a name="aws-properties-backup-backupplan-copyactionresourcetype-properties"></a>

`DestinationBackupVaultArn`  <a name="cfn-backup-backupplan-copyactionresourcetype-destinationbackupvaultarn"></a>
An Amazon Resource Name (ARN) that uniquely identifies the destination backup vault for the copied backup. For example, `arn:aws:backup:us-east-1:123456789012:vault:aBackupVault.`  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Lifecycle`  <a name="cfn-backup-backupplan-copyactionresourcetype-lifecycle"></a>
Defines when a protected resource is transitioned to cold storage and when it expires. AWS Backup transitions and expires backups automatically according to the lifecycle that you define. If you do not specify a lifecycle, AWS Backup applies the lifecycle policy of the source backup to the destination backup.  
Backups transitioned to cold storage must be stored in cold storage for a minimum of 90 days.  
*Required*: No  
*Type*: [LifecycleResourceType](aws-properties-backup-backupplan-lifecycleresourcetype.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Backup::BackupPlan IndexActionsResourceType
<a name="aws-properties-backup-backupplan-indexactionsresourcetype"></a>

Specifies index actions.

## Syntax
<a name="aws-properties-backup-backupplan-indexactionsresourcetype-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-backupplan-indexactionsresourcetype-syntax.json"></a>

```
{
  "[ResourceTypes](#cfn-backup-backupplan-indexactionsresourcetype-resourcetypes)" : [ String, ... ]
}
```

### YAML
<a name="aws-properties-backup-backupplan-indexactionsresourcetype-syntax.yaml"></a>

```
  [ResourceTypes](#cfn-backup-backupplan-indexactionsresourcetype-resourcetypes): 
    - String
```

## Properties
<a name="aws-properties-backup-backupplan-indexactionsresourcetype-properties"></a>

`ResourceTypes`  <a name="cfn-backup-backupplan-indexactionsresourcetype-resourcetypes"></a>
0 or 1 index action will be accepted for each BackupRule.  
Valid values:  
+ `EBS` for Amazon Elastic Block Store
+ `S3` for Amazon Simple Storage Service (Amazon S3)
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Backup::BackupPlan LifecycleResourceType
<a name="aws-properties-backup-backupplan-lifecycleresourcetype"></a>

Specifies an object containing an array of `Transition` objects that determine how long in days before a recovery point transitions to cold storage or is deleted. 

## Syntax
<a name="aws-properties-backup-backupplan-lifecycleresourcetype-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-backupplan-lifecycleresourcetype-syntax.json"></a>

```
{
  "[DeleteAfterDays](#cfn-backup-backupplan-lifecycleresourcetype-deleteafterdays)" : Number,
  "[MoveToColdStorageAfterDays](#cfn-backup-backupplan-lifecycleresourcetype-movetocoldstorageafterdays)" : Number,
  "[OptInToArchiveForSupportedResources](#cfn-backup-backupplan-lifecycleresourcetype-optintoarchiveforsupportedresources)" : Boolean
}
```

### YAML
<a name="aws-properties-backup-backupplan-lifecycleresourcetype-syntax.yaml"></a>

```
  [DeleteAfterDays](#cfn-backup-backupplan-lifecycleresourcetype-deleteafterdays): Number
  [MoveToColdStorageAfterDays](#cfn-backup-backupplan-lifecycleresourcetype-movetocoldstorageafterdays): Number
  [OptInToArchiveForSupportedResources](#cfn-backup-backupplan-lifecycleresourcetype-optintoarchiveforsupportedresources): Boolean
```

## Properties
<a name="aws-properties-backup-backupplan-lifecycleresourcetype-properties"></a>

`DeleteAfterDays`  <a name="cfn-backup-backupplan-lifecycleresourcetype-deleteafterdays"></a>
The number of days after creation that a recovery point is deleted. This value must be at least 90 days after the number of days specified in `MoveToColdStorageAfterDays`.  
*Required*: No  
*Type*: Number  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`MoveToColdStorageAfterDays`  <a name="cfn-backup-backupplan-lifecycleresourcetype-movetocoldstorageafterdays"></a>
The number of days after creation that a recovery point is moved to cold storage.  
*Required*: No  
*Type*: Number  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OptInToArchiveForSupportedResources`  <a name="cfn-backup-backupplan-lifecycleresourcetype-optintoarchiveforsupportedresources"></a>
If the value is true, your backup plan transitions supported resources to archive (cold) storage tier in accordance with your lifecycle settings.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Backup::BackupPlan ScanActionResourceType
<a name="aws-properties-backup-backupplan-scanactionresourcetype"></a>

<a name="aws-properties-backup-backupplan-scanactionresourcetype-description"></a>The `ScanActionResourceType` property type specifies Property description not available. for an [AWS::Backup::BackupPlan](aws-resource-backup-backupplan.md).

## Syntax
<a name="aws-properties-backup-backupplan-scanactionresourcetype-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-backupplan-scanactionresourcetype-syntax.json"></a>

```
{
  "[MalwareScanner](#cfn-backup-backupplan-scanactionresourcetype-malwarescanner)" : String,
  "[ScanMode](#cfn-backup-backupplan-scanactionresourcetype-scanmode)" : String
}
```

### YAML
<a name="aws-properties-backup-backupplan-scanactionresourcetype-syntax.yaml"></a>

```
  [MalwareScanner](#cfn-backup-backupplan-scanactionresourcetype-malwarescanner): String
  [ScanMode](#cfn-backup-backupplan-scanactionresourcetype-scanmode): String
```

## Properties
<a name="aws-properties-backup-backupplan-scanactionresourcetype-properties"></a>

`MalwareScanner`  <a name="cfn-backup-backupplan-scanactionresourcetype-malwarescanner"></a>
Property description not available.  
*Required*: No  
*Type*: String  
*Allowed values*: `GUARDDUTY`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ScanMode`  <a name="cfn-backup-backupplan-scanactionresourcetype-scanmode"></a>
Property description not available.  
*Required*: No  
*Type*: String  
*Allowed values*: `FULL_SCAN | INCREMENTAL_SCAN`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Backup::BackupPlan ScanSettingResourceType
<a name="aws-properties-backup-backupplan-scansettingresourcetype"></a>

<a name="aws-properties-backup-backupplan-scansettingresourcetype-description"></a>The `ScanSettingResourceType` property type specifies Property description not available. for an [AWS::Backup::BackupPlan](aws-resource-backup-backupplan.md).

## Syntax
<a name="aws-properties-backup-backupplan-scansettingresourcetype-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-backupplan-scansettingresourcetype-syntax.json"></a>

```
{
  "[MalwareScanner](#cfn-backup-backupplan-scansettingresourcetype-malwarescanner)" : String,
  "[ResourceTypes](#cfn-backup-backupplan-scansettingresourcetype-resourcetypes)" : [ String, ... ],
  "[ScannerRoleArn](#cfn-backup-backupplan-scansettingresourcetype-scannerrolearn)" : String
}
```

### YAML
<a name="aws-properties-backup-backupplan-scansettingresourcetype-syntax.yaml"></a>

```
  [MalwareScanner](#cfn-backup-backupplan-scansettingresourcetype-malwarescanner): String
  [ResourceTypes](#cfn-backup-backupplan-scansettingresourcetype-resourcetypes): 
    - String
  [ScannerRoleArn](#cfn-backup-backupplan-scansettingresourcetype-scannerrolearn): String
```

## Properties
<a name="aws-properties-backup-backupplan-scansettingresourcetype-properties"></a>

`MalwareScanner`  <a name="cfn-backup-backupplan-scansettingresourcetype-malwarescanner"></a>
Property description not available.  
*Required*: No  
*Type*: String  
*Allowed values*: `GUARDDUTY`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ResourceTypes`  <a name="cfn-backup-backupplan-scansettingresourcetype-resourcetypes"></a>
Property description not available.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ScannerRoleArn`  <a name="cfn-backup-backupplan-scansettingresourcetype-scannerrolearn"></a>
Property description not available.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Backup::BackupSelection
<a name="aws-resource-backup-backupselection"></a>

Specifies a set of resources to assign to a backup plan.

For a sample CloudFormation template, see the [AWS Backup Developer Guide](https://docs.aws.amazon.com/aws-backup/latest/devguide/assigning-resources.html#assigning-resources-cfn).

## Syntax
<a name="aws-resource-backup-backupselection-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-backup-backupselection-syntax.json"></a>

```
{
  "Type" : "AWS::Backup::BackupSelection",
  "Properties" : {
      "[BackupPlanId](#cfn-backup-backupselection-backupplanid)" : String,
      "[BackupSelection](#cfn-backup-backupselection-backupselection)" : BackupSelectionResourceType
    }
}
```

### YAML
<a name="aws-resource-backup-backupselection-syntax.yaml"></a>

```
Type: AWS::Backup::BackupSelection
Properties:
  [BackupPlanId](#cfn-backup-backupselection-backupplanid): String
  [BackupSelection](#cfn-backup-backupselection-backupselection): 
    BackupSelectionResourceType
```

## Properties
<a name="aws-resource-backup-backupselection-properties"></a>

`BackupPlanId`  <a name="cfn-backup-backupselection-backupplanid"></a>
Uniquely identifies a backup plan.  
*Required*: Yes  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`BackupSelection`  <a name="cfn-backup-backupselection-backupselection"></a>
Specifies the body of a request to assign a set of resources to a backup plan.  
It includes an array of resources, an optional array of patterns to exclude resources, an optional role to provide access to the AWS service the resource belongs to, and an optional array of tags used to identify a set of resources.  
*Required*: Yes  
*Type*: [BackupSelectionResourceType](aws-properties-backup-backupselection-backupselectionresourcetype.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

## Return values
<a name="aws-resource-backup-backupselection-return-values"></a>

### Ref
<a name="aws-resource-backup-backupselection-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns`BackupSelectionId`.

### Fn::GetAtt
<a name="aws-resource-backup-backupselection-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-backup-backupselection-return-values-fn--getatt-fn--getatt"></a>

`BackupPlanId`  <a name="BackupPlanId-fn::getatt"></a>
Uniquely identifies a backup plan.

`Id`  <a name="Id-fn::getatt"></a>
Uniquely identifies the backup selection.

`SelectionId`  <a name="SelectionId-fn::getatt"></a>
Uniquely identifies a request to assign a set of resources to a backup plan.

# AWS::Backup::BackupSelection BackupSelectionResourceType
<a name="aws-properties-backup-backupselection-backupselectionresourcetype"></a>

Specifies an object containing properties used to assign a set of resources to a backup plan.

## Syntax
<a name="aws-properties-backup-backupselection-backupselectionresourcetype-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-backupselection-backupselectionresourcetype-syntax.json"></a>

```
{
  "[Conditions](#cfn-backup-backupselection-backupselectionresourcetype-conditions)" : Conditions,
  "[IamRoleArn](#cfn-backup-backupselection-backupselectionresourcetype-iamrolearn)" : String,
  "[ListOfTags](#cfn-backup-backupselection-backupselectionresourcetype-listoftags)" : [ ConditionResourceType, ... ],
  "[NotResources](#cfn-backup-backupselection-backupselectionresourcetype-notresources)" : [ String, ... ],
  "[Resources](#cfn-backup-backupselection-backupselectionresourcetype-resources)" : [ String, ... ],
  "[SelectionName](#cfn-backup-backupselection-backupselectionresourcetype-selectionname)" : String
}
```

### YAML
<a name="aws-properties-backup-backupselection-backupselectionresourcetype-syntax.yaml"></a>

```
  [Conditions](#cfn-backup-backupselection-backupselectionresourcetype-conditions): 
    Conditions
  [IamRoleArn](#cfn-backup-backupselection-backupselectionresourcetype-iamrolearn): String
  [ListOfTags](#cfn-backup-backupselection-backupselectionresourcetype-listoftags): 
    - ConditionResourceType
  [NotResources](#cfn-backup-backupselection-backupselectionresourcetype-notresources): 
    - String
  [Resources](#cfn-backup-backupselection-backupselectionresourcetype-resources): 
    - String
  [SelectionName](#cfn-backup-backupselection-backupselectionresourcetype-selectionname): String
```

## Properties
<a name="aws-properties-backup-backupselection-backupselectionresourcetype-properties"></a>

`Conditions`  <a name="cfn-backup-backupselection-backupselectionresourcetype-conditions"></a>
A list of conditions that you define to assign resources to your backup plans using tags. For example, `"StringEquals": { "ConditionKey": "aws:ResourceTag/CreatedByCryo", "ConditionValue": "true" },`. Condition operators are case sensitive.  
`Conditions` differs from `ListOfTags` as follows:  
+ When you specify more than one condition, you only assign the resources that match ALL conditions (using AND logic).
+ `Conditions` supports `StringEquals`, `StringLike`, `StringNotEquals`, and `StringNotLike`. `ListOfTags` only supports `StringEquals`.
*Required*: No  
*Type*: [Conditions](aws-properties-backup-backupselection-conditions.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`IamRoleArn`  <a name="cfn-backup-backupselection-backupselectionresourcetype-iamrolearn"></a>
The ARN of the IAM role that AWS Backup uses to authenticate when backing up the target resource; for example, `arn:aws:iam::123456789012:role/S3Access`.  
*Required*: Yes  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ListOfTags`  <a name="cfn-backup-backupselection-backupselectionresourcetype-listoftags"></a>
A list of conditions that you define to assign resources to your backup plans using tags. For example, `"StringEquals": { "ConditionKey": "aws:ResourceTag/CreatedByCryo", "ConditionValue": "true" },`. Condition operators are case sensitive.  
`ListOfTags` differs from `Conditions` as follows:  
+ When you specify more than one condition, you assign all resources that match AT LEAST ONE condition (using OR logic).
+ `ListOfTags` only supports `StringEquals`. `Conditions` supports `StringEquals`, `StringLike`, `StringNotEquals`, and `StringNotLike`. 
*Required*: No  
*Type*: Array of [ConditionResourceType](aws-properties-backup-backupselection-conditionresourcetype.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`NotResources`  <a name="cfn-backup-backupselection-backupselectionresourcetype-notresources"></a>
A list of Amazon Resource Names (ARNs) to exclude from a backup plan. The maximum number of ARNs is 500 without wildcards, or 30 ARNs with wildcards.  
If you need to exclude many resources from a backup plan, consider a different resource selection strategy, such as assigning only one or a few resource types or refining your resource selection using tags.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Resources`  <a name="cfn-backup-backupselection-backupselectionresourcetype-resources"></a>
An array of strings that contain Amazon Resource Names (ARNs) of resources to assign to a backup plan.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`SelectionName`  <a name="cfn-backup-backupselection-backupselectionresourcetype-selectionname"></a>
The display name of a resource selection document.  
*Required*: Yes  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Backup::BackupSelection ConditionParameter
<a name="aws-properties-backup-backupselection-conditionparameter"></a>

Includes information about tags you define to assign tagged resources to a backup plan.

Include the prefix `aws:ResourceTag` in your tags. For example, `"aws:ResourceTag/TagKey1": "Value1"`.

## Syntax
<a name="aws-properties-backup-backupselection-conditionparameter-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-backupselection-conditionparameter-syntax.json"></a>

```
{
  "[ConditionKey](#cfn-backup-backupselection-conditionparameter-conditionkey)" : String,
  "[ConditionValue](#cfn-backup-backupselection-conditionparameter-conditionvalue)" : String
}
```

### YAML
<a name="aws-properties-backup-backupselection-conditionparameter-syntax.yaml"></a>

```
  [ConditionKey](#cfn-backup-backupselection-conditionparameter-conditionkey): String
  [ConditionValue](#cfn-backup-backupselection-conditionparameter-conditionvalue): String
```

## Properties
<a name="aws-properties-backup-backupselection-conditionparameter-properties"></a>

`ConditionKey`  <a name="cfn-backup-backupselection-conditionparameter-conditionkey"></a>
The key in a key-value pair. For example, in the tag `Department: Accounting`, `Department` is the key.  
*Required*: No  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ConditionValue`  <a name="cfn-backup-backupselection-conditionparameter-conditionvalue"></a>
The value in a key-value pair. For example, in the tag `Department: Accounting`, `Accounting` is the value.  
*Required*: No  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Backup::BackupSelection ConditionResourceType
<a name="aws-properties-backup-backupselection-conditionresourcetype"></a>

Specifies an object that contains an array of triplets made up of a condition type (such as `STRINGEQUALS`), a key, and a value. Conditions are used to filter resources in a selection that is assigned to a backup plan.

## Syntax
<a name="aws-properties-backup-backupselection-conditionresourcetype-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-backupselection-conditionresourcetype-syntax.json"></a>

```
{
  "[ConditionKey](#cfn-backup-backupselection-conditionresourcetype-conditionkey)" : String,
  "[ConditionType](#cfn-backup-backupselection-conditionresourcetype-conditiontype)" : String,
  "[ConditionValue](#cfn-backup-backupselection-conditionresourcetype-conditionvalue)" : String
}
```

### YAML
<a name="aws-properties-backup-backupselection-conditionresourcetype-syntax.yaml"></a>

```
  [ConditionKey](#cfn-backup-backupselection-conditionresourcetype-conditionkey): String
  [ConditionType](#cfn-backup-backupselection-conditionresourcetype-conditiontype): String
  [ConditionValue](#cfn-backup-backupselection-conditionresourcetype-conditionvalue): String
```

## Properties
<a name="aws-properties-backup-backupselection-conditionresourcetype-properties"></a>

`ConditionKey`  <a name="cfn-backup-backupselection-conditionresourcetype-conditionkey"></a>
The key in a key-value pair. For example, in `"Department": "accounting"`, `"Department"` is the key.  
*Required*: Yes  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ConditionType`  <a name="cfn-backup-backupselection-conditionresourcetype-conditiontype"></a>
An operation, such as `STRINGEQUALS`, that is applied to a key-value pair used to filter resources in a selection.  
*Required*: Yes  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ConditionValue`  <a name="cfn-backup-backupselection-conditionresourcetype-conditionvalue"></a>
The value in a key-value pair. For example, in `"Department": "accounting"`, `"accounting"` is the value.  
*Required*: Yes  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Backup::BackupSelection Conditions
<a name="aws-properties-backup-backupselection-conditions"></a>

Contains information about which resources to include or exclude from a backup plan using their tags. Conditions are case sensitive.

## Syntax
<a name="aws-properties-backup-backupselection-conditions-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-backupselection-conditions-syntax.json"></a>

```
{
  "[StringEquals](#cfn-backup-backupselection-conditions-stringequals)" : [ ConditionParameter, ... ],
  "[StringLike](#cfn-backup-backupselection-conditions-stringlike)" : [ ConditionParameter, ... ],
  "[StringNotEquals](#cfn-backup-backupselection-conditions-stringnotequals)" : [ ConditionParameter, ... ],
  "[StringNotLike](#cfn-backup-backupselection-conditions-stringnotlike)" : [ ConditionParameter, ... ]
}
```

### YAML
<a name="aws-properties-backup-backupselection-conditions-syntax.yaml"></a>

```
  [StringEquals](#cfn-backup-backupselection-conditions-stringequals): 
    - ConditionParameter
  [StringLike](#cfn-backup-backupselection-conditions-stringlike): 
    - ConditionParameter
  [StringNotEquals](#cfn-backup-backupselection-conditions-stringnotequals): 
    - ConditionParameter
  [StringNotLike](#cfn-backup-backupselection-conditions-stringnotlike): 
    - ConditionParameter
```

## Properties
<a name="aws-properties-backup-backupselection-conditions-properties"></a>

`StringEquals`  <a name="cfn-backup-backupselection-conditions-stringequals"></a>
Filters the values of your tagged resources for only those resources that you tagged with the same value. Also called "exact matching."  
*Required*: No  
*Type*: Array of [ConditionParameter](aws-properties-backup-backupselection-conditionparameter.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`StringLike`  <a name="cfn-backup-backupselection-conditions-stringlike"></a>
Filters the values of your tagged resources for matching tag values with the use of a wildcard character (\$1) anywhere in the string. For example, "prod\$1" or "\$1rod\$1" matches the tag value "production".  
*Required*: No  
*Type*: Array of [ConditionParameter](aws-properties-backup-backupselection-conditionparameter.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`StringNotEquals`  <a name="cfn-backup-backupselection-conditions-stringnotequals"></a>
Filters the values of your tagged resources for only those resources that you tagged that do not have the same value. Also called "negated matching."  
*Required*: No  
*Type*: Array of [ConditionParameter](aws-properties-backup-backupselection-conditionparameter.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`StringNotLike`  <a name="cfn-backup-backupselection-conditions-stringnotlike"></a>
Filters the values of your tagged resources for non-matching tag values with the use of a wildcard character (\$1) anywhere in the string.  
*Required*: No  
*Type*: Array of [ConditionParameter](aws-properties-backup-backupselection-conditionparameter.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Backup::BackupVault
<a name="aws-resource-backup-backupvault"></a>

Creates a logical container where backups are stored. A `CreateBackupVault` request includes a name, optionally one or more resource tags, an encryption key, and a request ID.

Do not include sensitive data, such as passport numbers, in the name of a backup vault.

For a sample CloudFormation template, see the [AWS Backup Developer Guide](https://docs.aws.amazon.com/aws-backup/latest/devguide/assigning-resources.html#assigning-resources-cfn).

## Syntax
<a name="aws-resource-backup-backupvault-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-backup-backupvault-syntax.json"></a>

```
{
  "Type" : "AWS::Backup::BackupVault",
  "Properties" : {
      "[AccessPolicy](#cfn-backup-backupvault-accesspolicy)" : Json,
      "[BackupVaultName](#cfn-backup-backupvault-backupvaultname)" : String,
      "[BackupVaultTags](#cfn-backup-backupvault-backupvaulttags)" : {Key: Value, ...},
      "[EncryptionKeyArn](#cfn-backup-backupvault-encryptionkeyarn)" : String,
      "[LockConfiguration](#cfn-backup-backupvault-lockconfiguration)" : LockConfigurationType,
      "[Notifications](#cfn-backup-backupvault-notifications)" : NotificationObjectType
    }
}
```

### YAML
<a name="aws-resource-backup-backupvault-syntax.yaml"></a>

```
Type: AWS::Backup::BackupVault
Properties:
  [AccessPolicy](#cfn-backup-backupvault-accesspolicy): Json
  [BackupVaultName](#cfn-backup-backupvault-backupvaultname): String
  [BackupVaultTags](#cfn-backup-backupvault-backupvaulttags): 
    Key: Value
  [EncryptionKeyArn](#cfn-backup-backupvault-encryptionkeyarn): String
  [LockConfiguration](#cfn-backup-backupvault-lockconfiguration): 
    LockConfigurationType
  [Notifications](#cfn-backup-backupvault-notifications): 
    NotificationObjectType
```

## Properties
<a name="aws-resource-backup-backupvault-properties"></a>

`AccessPolicy`  <a name="cfn-backup-backupvault-accesspolicy"></a>
A resource-based policy that is used to manage access permissions on the target backup vault.  
*Required*: No  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`BackupVaultName`  <a name="cfn-backup-backupvault-backupvaultname"></a>
The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the AWS Region where they are created.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9\-\_]{2,50}$`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`BackupVaultTags`  <a name="cfn-backup-backupvault-backupvaulttags"></a>
The tags to assign to the backup vault.  
*Required*: No  
*Type*: Object of String  
*Pattern*: `^.{1,128}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`EncryptionKeyArn`  <a name="cfn-backup-backupvault-encryptionkeyarn"></a>
A server-side encryption key you can specify to encrypt your backups from services that support full AWS Backup management; for example, `arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`. If you specify a key, you must specify its ARN, not its alias. If you do not specify a key, AWS Backup creates a KMS key for you by default.  
To learn which AWS Backup services support full AWS Backup management and how AWS Backup handles encryption for backups from services that do not yet support full AWS Backup, see [ Encryption for backups in AWS Backup](https://docs.aws.amazon.com/aws-backup/latest/devguide/encryption.html)  
*Required*: No  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`LockConfiguration`  <a name="cfn-backup-backupvault-lockconfiguration"></a>
Configuration for [AWS Backup Vault Lock](https://docs.aws.amazon.com/aws-backup/latest/devguide/vault-lock.html).  
*Required*: No  
*Type*: [LockConfigurationType](aws-properties-backup-backupvault-lockconfigurationtype.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Notifications`  <a name="cfn-backup-backupvault-notifications"></a>
The SNS event notifications for the specified backup vault.  
*Required*: No  
*Type*: [NotificationObjectType](aws-properties-backup-backupvault-notificationobjecttype.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-backup-backupvault-return-values"></a>

### Ref
<a name="aws-resource-backup-backupvault-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns`BackupVaultName`.

### Fn::GetAtt
<a name="aws-resource-backup-backupvault-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-backup-backupvault-return-values-fn--getatt-fn--getatt"></a>

`BackupVaultArn`  <a name="BackupVaultArn-fn::getatt"></a>
An Amazon Resource Name (ARN) that uniquely identifies a backup vault; for example, `arn:aws:backup:us-east-1:123456789012:backup-vault:aBackupVault`.

`BackupVaultName`  <a name="BackupVaultName-fn::getatt"></a>
The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the Region where they are created. They consist of lowercase and uppercase letters, numbers, and hyphens.

# AWS::Backup::BackupVault LockConfigurationType
<a name="aws-properties-backup-backupvault-lockconfigurationtype"></a>

The `LockConfigurationType` property type specifies configuration for [AWS Backup Vault Lock](https://docs.aws.amazon.com/aws-backup/latest/devguide/vault-lock.html).

## Syntax
<a name="aws-properties-backup-backupvault-lockconfigurationtype-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-backupvault-lockconfigurationtype-syntax.json"></a>

```
{
  "[ChangeableForDays](#cfn-backup-backupvault-lockconfigurationtype-changeablefordays)" : Integer,
  "[MaxRetentionDays](#cfn-backup-backupvault-lockconfigurationtype-maxretentiondays)" : Integer,
  "[MinRetentionDays](#cfn-backup-backupvault-lockconfigurationtype-minretentiondays)" : Integer
}
```

### YAML
<a name="aws-properties-backup-backupvault-lockconfigurationtype-syntax.yaml"></a>

```
  [ChangeableForDays](#cfn-backup-backupvault-lockconfigurationtype-changeablefordays): Integer
  [MaxRetentionDays](#cfn-backup-backupvault-lockconfigurationtype-maxretentiondays): Integer
  [MinRetentionDays](#cfn-backup-backupvault-lockconfigurationtype-minretentiondays): Integer
```

## Properties
<a name="aws-properties-backup-backupvault-lockconfigurationtype-properties"></a>

`ChangeableForDays`  <a name="cfn-backup-backupvault-lockconfigurationtype-changeablefordays"></a>
To create a vault lock in governance mode, do not include `ChangeableForDays`. If this parameter is included, the vault lock is created in compliance mode.  
The AWS Backup Vault Lock configuration that specifies the number of days before the lock date. For example, setting `ChangeableForDays` to 30 on Jan. 1, 2022 at 8pm UTC will set the lock date to Jan. 31, 2022 at 8pm UTC.  
AWS Backup enforces a 72-hour cooling-off period before Vault Lock takes effect and becomes immutable. Therefore, you must set `ChangeableForDays` to 3 or greater.  
Before the lock date, you can delete Vault Lock from the vault using `DeleteBackupVaultLockConfiguration` or change the Vault Lock configuration using `PutBackupVaultLockConfiguration`. On and after the lock date, the Vault Lock becomes immutable and cannot be changed or deleted.  
If this parameter is not specified, you can delete Vault Lock from the vault using `DeleteBackupVaultLockConfiguration` or change the Vault Lock configuration using `PutBackupVaultLockConfiguration` at any time.  
*Required*: No  
*Type*: Integer  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`MaxRetentionDays`  <a name="cfn-backup-backupvault-lockconfigurationtype-maxretentiondays"></a>
The AWS Backup Vault Lock configuration that specifies the maximum retention period that the vault retains its recovery points. This setting can be useful if, for example, your organization's policies require you to destroy certain data after retaining it for four years (1460 days).  
If this parameter is not included, Vault Lock does not enforce a maximum retention period on the recovery points in the vault. If this parameter is included without a value, Vault Lock will not enforce a maximum retention period.  
If this parameter is specified, any backup or copy job to the vault must have a lifecycle policy with a retention period equal to or shorter than the maximum retention period. If the job's retention period is longer than that maximum retention period, then the vault fails the backup or copy job, and you should either modify your lifecycle settings or use a different vault. Recovery points already saved in the vault prior to Vault Lock are not affected.  
*Required*: No  
*Type*: Integer  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`MinRetentionDays`  <a name="cfn-backup-backupvault-lockconfigurationtype-minretentiondays"></a>
The AWS Backup Vault Lock configuration that specifies the minimum retention period that the vault retains its recovery points. This setting can be useful if, for example, your organization's policies require you to retain certain data for at least seven years (2555 days).  
If this parameter is not specified, Vault Lock will not enforce a minimum retention period.  
If this parameter is specified, any backup or copy job to the vault must have a lifecycle policy with a retention period equal to or longer than the minimum retention period. If the job's retention period is shorter than that minimum retention period, then the vault fails that backup or copy job, and you should either modify your lifecycle settings or use a different vault. Recovery points already saved in the vault prior to Vault Lock are not affected.  
*Required*: Yes  
*Type*: Integer  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Backup::BackupVault NotificationObjectType
<a name="aws-properties-backup-backupvault-notificationobjecttype"></a>

Specifies an object containing SNS event notification properties for the target backup vault.

## Syntax
<a name="aws-properties-backup-backupvault-notificationobjecttype-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-backupvault-notificationobjecttype-syntax.json"></a>

```
{
  "[BackupVaultEvents](#cfn-backup-backupvault-notificationobjecttype-backupvaultevents)" : [ String, ... ],
  "[SNSTopicArn](#cfn-backup-backupvault-notificationobjecttype-snstopicarn)" : String
}
```

### YAML
<a name="aws-properties-backup-backupvault-notificationobjecttype-syntax.yaml"></a>

```
  [BackupVaultEvents](#cfn-backup-backupvault-notificationobjecttype-backupvaultevents): 
    - String
  [SNSTopicArn](#cfn-backup-backupvault-notificationobjecttype-snstopicarn): String
```

## Properties
<a name="aws-properties-backup-backupvault-notificationobjecttype-properties"></a>

`BackupVaultEvents`  <a name="cfn-backup-backupvault-notificationobjecttype-backupvaultevents"></a>
An array of events that indicate the status of jobs to back up resources to the backup vault. For valid events, see [ BackupVaultEvents](https://docs.aws.amazon.com/aws-backup/latest/devguide/API_PutBackupVaultNotifications.html#API_PutBackupVaultNotifications_RequestSyntax) in the *AWS Backup API Guide*.  
*Required*: Yes  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SNSTopicArn`  <a name="cfn-backup-backupvault-notificationobjecttype-snstopicarn"></a>
An ARN that uniquely identifies an Amazon Simple Notification Service (Amazon SNS) topic; for example, `arn:aws:sns:us-west-2:111122223333:MyTopic`.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Backup::Framework
<a name="aws-resource-backup-framework"></a>

Creates a framework with one or more controls. A framework is a collection of controls that you can use to evaluate your backup practices. By using pre-built customizable controls to define your policies, you can evaluate whether your backup practices comply with your policies and which resources are not yet in compliance.

For a sample CloudFormation template, see the [AWS Backup Developer Guide](https://docs.aws.amazon.com/aws-backup/latest/devguide/bam-cfn-integration.html#bam-cfn-frameworks-template).

## Syntax
<a name="aws-resource-backup-framework-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-backup-framework-syntax.json"></a>

```
{
  "Type" : "AWS::Backup::Framework",
  "Properties" : {
      "[FrameworkControls](#cfn-backup-framework-frameworkcontrols)" : [ FrameworkControl, ... ],
      "[FrameworkDescription](#cfn-backup-framework-frameworkdescription)" : String,
      "[FrameworkName](#cfn-backup-framework-frameworkname)" : String,
      "[FrameworkTags](#cfn-backup-framework-frameworktags)" : [ Tag, ... ]
    }
}
```

### YAML
<a name="aws-resource-backup-framework-syntax.yaml"></a>

```
Type: AWS::Backup::Framework
Properties:
  [FrameworkControls](#cfn-backup-framework-frameworkcontrols): 
    - FrameworkControl
  [FrameworkDescription](#cfn-backup-framework-frameworkdescription): String
  [FrameworkName](#cfn-backup-framework-frameworkname): String
  [FrameworkTags](#cfn-backup-framework-frameworktags): 
    - Tag
```

## Properties
<a name="aws-resource-backup-framework-properties"></a>

`FrameworkControls`  <a name="cfn-backup-framework-frameworkcontrols"></a>
Contains detailed information about all of the controls of a framework. Each framework must contain at least one control.  
*Required*: Yes  
*Type*: Array of [FrameworkControl](aws-properties-backup-framework-frameworkcontrol.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`FrameworkDescription`  <a name="cfn-backup-framework-frameworkdescription"></a>
An optional description of the framework with a maximum 1,024 characters.  
*Required*: No  
*Type*: String  
*Minimum*: `0`  
*Maximum*: `1024`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`FrameworkName`  <a name="cfn-backup-framework-frameworkname"></a>
The unique name of a framework. This name is between 1 and 256 characters, starting with a letter, and consisting of letters (a-z, A-Z), numbers (0-9), and underscores (\$1).  
*Required*: No  
*Type*: String  
*Pattern*: `[a-zA-Z][_a-zA-Z0-9]*`  
*Minimum*: `1`  
*Maximum*: `256`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`FrameworkTags`  <a name="cfn-backup-framework-frameworktags"></a>
The tags to assign to your framework.  
*Required*: No  
*Type*: Array of [Tag](aws-properties-backup-framework-tag.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-backup-framework-return-values"></a>

### Ref
<a name="aws-resource-backup-framework-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the framework ARN.

### Fn::GetAtt
<a name="aws-resource-backup-framework-return-values-fn--getatt"></a>

#### 
<a name="aws-resource-backup-framework-return-values-fn--getatt-fn--getatt"></a>

`CreationTime`  <a name="CreationTime-fn::getatt"></a>
The UTC time when you created your framework.

`DeploymentStatus`  <a name="DeploymentStatus-fn::getatt"></a>
Depolyment status refers to whether your framework has completed deployment. This status is usually `Completed`, but might also be `Create in progress` or another status. For a list of statuses, see [Framework compliance status](https://docs.aws.amazon.com/aws-backup/latest/devguide/viewing-frameworks.html) in the *AWS Backup; Developer Guide*.

`FrameworkArn`  <a name="FrameworkArn-fn::getatt"></a>
The Amazon Resource Name (ARN) of your framework.

`FrameworkStatus`  <a name="FrameworkStatus-fn::getatt"></a>
Framework status refers to whether you have turned on resource tracking for all of your resources. This status is `Active` when you turn on all resources the framework evaluates. For other statuses and steps to correct them, see [Framework compliance status](https://docs.aws.amazon.com/aws-backup/latest/devguide/viewing-frameworks.html) in the *AWS Backup; Developer Guide*.

# AWS::Backup::Framework ControlInputParameter
<a name="aws-properties-backup-framework-controlinputparameter"></a>

The parameters for a control. A control can have zero, one, or more than one parameter. An example of a control with two parameters is: "backup plan frequency is at least `daily` and the retention period is at least `1 year`". The first parameter is `daily`. The second parameter is `1 year`.

## Syntax
<a name="aws-properties-backup-framework-controlinputparameter-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-framework-controlinputparameter-syntax.json"></a>

```
{
  "[ParameterName](#cfn-backup-framework-controlinputparameter-parametername)" : String,
  "[ParameterValue](#cfn-backup-framework-controlinputparameter-parametervalue)" : String
}
```

### YAML
<a name="aws-properties-backup-framework-controlinputparameter-syntax.yaml"></a>

```
  [ParameterName](#cfn-backup-framework-controlinputparameter-parametername): String
  [ParameterValue](#cfn-backup-framework-controlinputparameter-parametervalue): String
```

## Properties
<a name="aws-properties-backup-framework-controlinputparameter-properties"></a>

`ParameterName`  <a name="cfn-backup-framework-controlinputparameter-parametername"></a>
The name of a parameter, for example, `BackupPlanFrequency`.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ParameterValue`  <a name="cfn-backup-framework-controlinputparameter-parametervalue"></a>
The value of parameter, for example, `hourly`.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Backup::Framework ControlScope
<a name="aws-properties-backup-framework-controlscope"></a>

A framework consists of one or more controls. Each control has its own control scope. The control scope can include one or more resource types, a combination of a tag key and value, or a combination of one resource type and one resource ID. If no scope is specified, evaluations for the rule are triggered when any resource in your recording group changes in configuration.

**Note**  
To set a control scope that includes all of a particular resource, leave the `ControlScope` empty or do not pass it when calling `CreateFramework`.

## Syntax
<a name="aws-properties-backup-framework-controlscope-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-framework-controlscope-syntax.json"></a>

```
{
  "[ComplianceResourceIds](#cfn-backup-framework-controlscope-complianceresourceids)" : [ String, ... ],
  "[ComplianceResourceTypes](#cfn-backup-framework-controlscope-complianceresourcetypes)" : [ String, ... ],
  "[Tags](#cfn-backup-framework-controlscope-tags)" : [ Tag, ... ]
}
```

### YAML
<a name="aws-properties-backup-framework-controlscope-syntax.yaml"></a>

```
  [ComplianceResourceIds](#cfn-backup-framework-controlscope-complianceresourceids): 
    - String
  [ComplianceResourceTypes](#cfn-backup-framework-controlscope-complianceresourcetypes): 
    - String
  [Tags](#cfn-backup-framework-controlscope-tags): 
    - Tag
```

## Properties
<a name="aws-properties-backup-framework-controlscope-properties"></a>

`ComplianceResourceIds`  <a name="cfn-backup-framework-controlscope-complianceresourceids"></a>
The ID of the only AWS resource that you want your control scope to contain.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ComplianceResourceTypes`  <a name="cfn-backup-framework-controlscope-complianceresourcetypes"></a>
Describes whether the control scope includes one or more types of resources, such as `EFS` or `RDS`.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Tags`  <a name="cfn-backup-framework-controlscope-tags"></a>
The tag key-value pair applied to those AWS resources that you want to trigger an evaluation for a rule. A maximum of one key-value pair can be provided. The tag value is optional, but it cannot be an empty string if you are creating or editing a framework from the console (though the value can be an empty string when included in a CloudFormation template).  
The structure to assign a tag is: `[{"Key":"string","Value":"string"}]`.  
*Required*: No  
*Type*: Array of [Tag](aws-properties-backup-framework-tag.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Backup::Framework FrameworkControl
<a name="aws-properties-backup-framework-frameworkcontrol"></a>

Contains detailed information about all of the controls of a framework. Each framework must contain at least one control.

## Syntax
<a name="aws-properties-backup-framework-frameworkcontrol-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-framework-frameworkcontrol-syntax.json"></a>

```
{
  "[ControlInputParameters](#cfn-backup-framework-frameworkcontrol-controlinputparameters)" : [ ControlInputParameter, ... ],
  "[ControlName](#cfn-backup-framework-frameworkcontrol-controlname)" : String,
  "[ControlScope](#cfn-backup-framework-frameworkcontrol-controlscope)" : ControlScope
}
```

### YAML
<a name="aws-properties-backup-framework-frameworkcontrol-syntax.yaml"></a>

```
  [ControlInputParameters](#cfn-backup-framework-frameworkcontrol-controlinputparameters): 
    - ControlInputParameter
  [ControlName](#cfn-backup-framework-frameworkcontrol-controlname): String
  [ControlScope](#cfn-backup-framework-frameworkcontrol-controlscope): 
    ControlScope
```

## Properties
<a name="aws-properties-backup-framework-frameworkcontrol-properties"></a>

`ControlInputParameters`  <a name="cfn-backup-framework-frameworkcontrol-controlinputparameters"></a>
The name/value pairs.  
*Required*: No  
*Type*: Array of [ControlInputParameter](aws-properties-backup-framework-controlinputparameter.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ControlName`  <a name="cfn-backup-framework-frameworkcontrol-controlname"></a>
The name of a control. This name is between 1 and 256 characters.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ControlScope`  <a name="cfn-backup-framework-frameworkcontrol-controlscope"></a>
The scope of a control. The control scope defines what the control will evaluate. Three examples of control scopes are: a specific backup plan, all backup plans with a specific tag, or all backup plans.  
For more information, see [`ControlScope`.](https://docs.aws.amazon.com/aws-backup/latest/devguide/API_ControlScope.html)  
*Required*: No  
*Type*: [ControlScope](aws-properties-backup-framework-controlscope.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Backup::Framework Tag
<a name="aws-properties-backup-framework-tag"></a>

The tags to assign to the framework.

## Syntax
<a name="aws-properties-backup-framework-tag-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-framework-tag-syntax.json"></a>

```
{
  "[Key](#cfn-backup-framework-tag-key)" : String,
  "[Value](#cfn-backup-framework-tag-value)" : String
}
```

### YAML
<a name="aws-properties-backup-framework-tag-syntax.yaml"></a>

```
  [Key](#cfn-backup-framework-tag-key): String
  [Value](#cfn-backup-framework-tag-value): String
```

## Properties
<a name="aws-properties-backup-framework-tag-properties"></a>

`Key`  <a name="cfn-backup-framework-tag-key"></a>
The tag key.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-backup-framework-tag-value"></a>
The tag value.  
*Required*: No  
*Type*: String  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Backup::LogicallyAirGappedBackupVault
<a name="aws-resource-backup-logicallyairgappedbackupvault"></a>

Creates a logical container to where backups may be copied.

This request includes a name, the Region, the maximum number of retention days, the minimum number of retention days, and optionally can include tags and a creator request ID.

**Note**  
Do not include sensitive data, such as passport numbers, in the name of a backup vault.

## Syntax
<a name="aws-resource-backup-logicallyairgappedbackupvault-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-backup-logicallyairgappedbackupvault-syntax.json"></a>

```
{
  "Type" : "AWS::Backup::LogicallyAirGappedBackupVault",
  "Properties" : {
      "[AccessPolicy](#cfn-backup-logicallyairgappedbackupvault-accesspolicy)" : Json,
      "[BackupVaultName](#cfn-backup-logicallyairgappedbackupvault-backupvaultname)" : String,
      "[BackupVaultTags](#cfn-backup-logicallyairgappedbackupvault-backupvaulttags)" : {Key: Value, ...},
      "[EncryptionKeyArn](#cfn-backup-logicallyairgappedbackupvault-encryptionkeyarn)" : String,
      "[MaxRetentionDays](#cfn-backup-logicallyairgappedbackupvault-maxretentiondays)" : Integer,
      "[MinRetentionDays](#cfn-backup-logicallyairgappedbackupvault-minretentiondays)" : Integer,
      "[MpaApprovalTeamArn](#cfn-backup-logicallyairgappedbackupvault-mpaapprovalteamarn)" : String,
      "[Notifications](#cfn-backup-logicallyairgappedbackupvault-notifications)" : NotificationObjectType
    }
}
```

### YAML
<a name="aws-resource-backup-logicallyairgappedbackupvault-syntax.yaml"></a>

```
Type: AWS::Backup::LogicallyAirGappedBackupVault
Properties:
  [AccessPolicy](#cfn-backup-logicallyairgappedbackupvault-accesspolicy): Json
  [BackupVaultName](#cfn-backup-logicallyairgappedbackupvault-backupvaultname): String
  [BackupVaultTags](#cfn-backup-logicallyairgappedbackupvault-backupvaulttags): 
    Key: Value
  [EncryptionKeyArn](#cfn-backup-logicallyairgappedbackupvault-encryptionkeyarn): String
  [MaxRetentionDays](#cfn-backup-logicallyairgappedbackupvault-maxretentiondays): Integer
  [MinRetentionDays](#cfn-backup-logicallyairgappedbackupvault-minretentiondays): Integer
  [MpaApprovalTeamArn](#cfn-backup-logicallyairgappedbackupvault-mpaapprovalteamarn): String
  [Notifications](#cfn-backup-logicallyairgappedbackupvault-notifications): 
    NotificationObjectType
```

## Properties
<a name="aws-resource-backup-logicallyairgappedbackupvault-properties"></a>

`AccessPolicy`  <a name="cfn-backup-logicallyairgappedbackupvault-accesspolicy"></a>
The backup vault access policy document in JSON format.  
*Required*: No  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`BackupVaultName`  <a name="cfn-backup-logicallyairgappedbackupvault-backupvaultname"></a>
The name of a logical container where backups are stored. Logically air-gapped backup vaults are identified by names that are unique to the account used to create them and the Region where they are created.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9\-\_]{2,50}$`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`BackupVaultTags`  <a name="cfn-backup-logicallyairgappedbackupvault-backupvaulttags"></a>
The tags to assign to the vault.  
*Required*: No  
*Type*: Object of String  
*Pattern*: `^.{1,128}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`EncryptionKeyArn`  <a name="cfn-backup-logicallyairgappedbackupvault-encryptionkeyarn"></a>
The server-side encryption key that is used to protect your backups; for example, `arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`.   
If this field is left blank, AWS Backup will create an AWS owned key to be used to encrypt the content of the logically air-gapped vault. The ARN of this created key will be available as `Fn::GetAtt` output.  
*Required*: No  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`MaxRetentionDays`  <a name="cfn-backup-logicallyairgappedbackupvault-maxretentiondays"></a>
The maximum retention period that the vault retains its recovery points.  
*Required*: Yes  
*Type*: Integer  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`MinRetentionDays`  <a name="cfn-backup-logicallyairgappedbackupvault-minretentiondays"></a>
This setting specifies the minimum retention period that the vault retains its recovery points.  
The minimum value accepted is 7 days.  
*Required*: Yes  
*Type*: Integer  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`MpaApprovalTeamArn`  <a name="cfn-backup-logicallyairgappedbackupvault-mpaapprovalteamarn"></a>
The Amazon Resource Name (ARN) of the MPA approval team to associate with the backup vault. This cannot be changed after it is set from the CloudFormation template.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Notifications`  <a name="cfn-backup-logicallyairgappedbackupvault-notifications"></a>
Returns event notifications for the specified backup vault.  
*Required*: No  
*Type*: [NotificationObjectType](aws-properties-backup-logicallyairgappedbackupvault-notificationobjecttype.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-backup-logicallyairgappedbackupvault-return-values"></a>

### Ref
<a name="aws-resource-backup-logicallyairgappedbackupvault-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the ARN of the backup vault.

For more information about using the `Ref` function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html).

### Fn::GetAtt
<a name="aws-resource-backup-logicallyairgappedbackupvault-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-backup-logicallyairgappedbackupvault-return-values-fn--getatt-fn--getatt"></a>

`BackupVaultArn`  <a name="BackupVaultArn-fn::getatt"></a>
The ARN of the backup vault.

`VaultState`  <a name="VaultState-fn::getatt"></a>
The vault state. The possible values are `CREATING`, `AVAILABLE`, and `FAILED`.

`VaultType`  <a name="VaultType-fn::getatt"></a>
The vault type. The possible values are `BACKUP_VAULT` and `LOGICALLY_AIR_GAPPED_BACKUP_VAULT`.

# AWS::Backup::LogicallyAirGappedBackupVault NotificationObjectType
<a name="aws-properties-backup-logicallyairgappedbackupvault-notificationobjecttype"></a>

<a name="aws-properties-backup-logicallyairgappedbackupvault-notificationobjecttype-description"></a>The `NotificationObjectType` property type specifies Property description not available. for an [AWS::Backup::LogicallyAirGappedBackupVault](aws-resource-backup-logicallyairgappedbackupvault.md).

## Syntax
<a name="aws-properties-backup-logicallyairgappedbackupvault-notificationobjecttype-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-logicallyairgappedbackupvault-notificationobjecttype-syntax.json"></a>

```
{
  "[BackupVaultEvents](#cfn-backup-logicallyairgappedbackupvault-notificationobjecttype-backupvaultevents)" : [ String, ... ],
  "[SNSTopicArn](#cfn-backup-logicallyairgappedbackupvault-notificationobjecttype-snstopicarn)" : String
}
```

### YAML
<a name="aws-properties-backup-logicallyairgappedbackupvault-notificationobjecttype-syntax.yaml"></a>

```
  [BackupVaultEvents](#cfn-backup-logicallyairgappedbackupvault-notificationobjecttype-backupvaultevents): 
    - String
  [SNSTopicArn](#cfn-backup-logicallyairgappedbackupvault-notificationobjecttype-snstopicarn): String
```

## Properties
<a name="aws-properties-backup-logicallyairgappedbackupvault-notificationobjecttype-properties"></a>

`BackupVaultEvents`  <a name="cfn-backup-logicallyairgappedbackupvault-notificationobjecttype-backupvaultevents"></a>
An array of events that indicate the status of jobs to back up resources to the backup vault.  
*Required*: Yes  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SNSTopicArn`  <a name="cfn-backup-logicallyairgappedbackupvault-notificationobjecttype-snstopicarn"></a>
The Amazon Resource Name (ARN) that specifies the topic for a backup vault’s events; for example, `arn:aws:sns:us-west-2:111122223333:MyVaultTopic`.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Backup::ReportPlan
<a name="aws-resource-backup-reportplan"></a>

Creates a report plan. A report plan is a document that contains information about the contents of the report and where AWS Backup will deliver it.

If you call `CreateReportPlan` with a plan that already exists, you receive an `AlreadyExistsException` exception.

For a sample CloudFormation template, see the [AWS Backup Developer Guide](https://docs.aws.amazon.com/aws-backup/latest/devguide/assigning-resources.html#assigning-resources-cfn).

## Syntax
<a name="aws-resource-backup-reportplan-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-backup-reportplan-syntax.json"></a>

```
{
  "Type" : "AWS::Backup::ReportPlan",
  "Properties" : {
      "[ReportDeliveryChannel](#cfn-backup-reportplan-reportdeliverychannel)" : ReportDeliveryChannel,
      "[ReportPlanDescription](#cfn-backup-reportplan-reportplandescription)" : String,
      "[ReportPlanName](#cfn-backup-reportplan-reportplanname)" : String,
      "[ReportPlanTags](#cfn-backup-reportplan-reportplantags)" : [ Tag, ... ],
      "[ReportSetting](#cfn-backup-reportplan-reportsetting)" : ReportSetting
    }
}
```

### YAML
<a name="aws-resource-backup-reportplan-syntax.yaml"></a>

```
Type: AWS::Backup::ReportPlan
Properties:
  [ReportDeliveryChannel](#cfn-backup-reportplan-reportdeliverychannel): 
    ReportDeliveryChannel
  [ReportPlanDescription](#cfn-backup-reportplan-reportplandescription): String
  [ReportPlanName](#cfn-backup-reportplan-reportplanname): String
  [ReportPlanTags](#cfn-backup-reportplan-reportplantags): 
    - Tag
  [ReportSetting](#cfn-backup-reportplan-reportsetting): 
    ReportSetting
```

## Properties
<a name="aws-resource-backup-reportplan-properties"></a>

`ReportDeliveryChannel`  <a name="cfn-backup-reportplan-reportdeliverychannel"></a>
Contains information about where and how to deliver your reports, specifically your Amazon S3 bucket name, S3 key prefix, and the formats of your reports.  
*Required*: Yes  
*Type*: [ReportDeliveryChannel](aws-properties-backup-reportplan-reportdeliverychannel.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ReportPlanDescription`  <a name="cfn-backup-reportplan-reportplandescription"></a>
An optional description of the report plan with a maximum 1,024 characters.  
*Required*: No  
*Type*: String  
*Pattern*: `.*\S.*`  
*Minimum*: `0`  
*Maximum*: `1024`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ReportPlanName`  <a name="cfn-backup-reportplan-reportplanname"></a>
The unique name of the report plan. This name is between 1 and 256 characters starting with a letter, and consisting of letters (a-z, A-Z), numbers (0-9), and underscores (\$1).  
*Required*: No  
*Type*: String  
*Pattern*: `[a-zA-Z][_a-zA-Z0-9]*`  
*Minimum*: `1`  
*Maximum*: `256`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ReportPlanTags`  <a name="cfn-backup-reportplan-reportplantags"></a>
The tags to assign to your report plan.  
*Required*: No  
*Type*: Array of [Tag](aws-properties-backup-reportplan-tag.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ReportSetting`  <a name="cfn-backup-reportplan-reportsetting"></a>
Identifies the report template for the report. Reports are built using a report template. The report templates are:  
 `RESOURCE_COMPLIANCE_REPORT | CONTROL_COMPLIANCE_REPORT | BACKUP_JOB_REPORT | COPY_JOB_REPORT | RESTORE_JOB_REPORT`   
If the report template is `RESOURCE_COMPLIANCE_REPORT` or `CONTROL_COMPLIANCE_REPORT`, this API resource also describes the report coverage by AWS Regions and frameworks.  
*Required*: Yes  
*Type*: [ReportSetting](aws-properties-backup-reportplan-reportsetting.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-backup-reportplan-return-values"></a>

### Ref
<a name="aws-resource-backup-reportplan-return-values-ref"></a>

### Fn::GetAtt
<a name="aws-resource-backup-reportplan-return-values-fn--getatt"></a>

#### 
<a name="aws-resource-backup-reportplan-return-values-fn--getatt-fn--getatt"></a>

`ReportPlanArn`  <a name="ReportPlanArn-fn::getatt"></a>
The Amazon Resource Name (ARN) of your report plan.

# AWS::Backup::ReportPlan ReportDeliveryChannel
<a name="aws-properties-backup-reportplan-reportdeliverychannel"></a>

Contains information from your report plan about where to deliver your reports, specifically your Amazon S3 bucket name, S3 key prefix, and the formats of your reports.

## Syntax
<a name="aws-properties-backup-reportplan-reportdeliverychannel-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-reportplan-reportdeliverychannel-syntax.json"></a>

```
{
  "[Formats](#cfn-backup-reportplan-reportdeliverychannel-formats)" : [ String, ... ],
  "[S3BucketName](#cfn-backup-reportplan-reportdeliverychannel-s3bucketname)" : String,
  "[S3KeyPrefix](#cfn-backup-reportplan-reportdeliverychannel-s3keyprefix)" : String
}
```

### YAML
<a name="aws-properties-backup-reportplan-reportdeliverychannel-syntax.yaml"></a>

```
  [Formats](#cfn-backup-reportplan-reportdeliverychannel-formats): 
    - String
  [S3BucketName](#cfn-backup-reportplan-reportdeliverychannel-s3bucketname): String
  [S3KeyPrefix](#cfn-backup-reportplan-reportdeliverychannel-s3keyprefix): String
```

## Properties
<a name="aws-properties-backup-reportplan-reportdeliverychannel-properties"></a>

`Formats`  <a name="cfn-backup-reportplan-reportdeliverychannel-formats"></a>
The format of your reports: `CSV`, `JSON`, or both. If not specified, the default format is `CSV`.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`S3BucketName`  <a name="cfn-backup-reportplan-reportdeliverychannel-s3bucketname"></a>
The unique name of the S3 bucket that receives your reports.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`S3KeyPrefix`  <a name="cfn-backup-reportplan-reportdeliverychannel-s3keyprefix"></a>
The prefix for where AWS Backup Audit Manager delivers your reports to Amazon S3. The prefix is this part of the following path: s3://your-bucket-name/`prefix`/Backup/us-west-2/year/month/day/report-name. If not specified, there is no prefix.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Backup::ReportPlan ReportSetting
<a name="aws-properties-backup-reportplan-reportsetting"></a>

Contains detailed information about a report setting.

## Syntax
<a name="aws-properties-backup-reportplan-reportsetting-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-reportplan-reportsetting-syntax.json"></a>

```
{
  "[Accounts](#cfn-backup-reportplan-reportsetting-accounts)" : [ String, ... ],
  "[FrameworkArns](#cfn-backup-reportplan-reportsetting-frameworkarns)" : [ String, ... ],
  "[OrganizationUnits](#cfn-backup-reportplan-reportsetting-organizationunits)" : [ String, ... ],
  "[Regions](#cfn-backup-reportplan-reportsetting-regions)" : [ String, ... ],
  "[ReportTemplate](#cfn-backup-reportplan-reportsetting-reporttemplate)" : String
}
```

### YAML
<a name="aws-properties-backup-reportplan-reportsetting-syntax.yaml"></a>

```
  [Accounts](#cfn-backup-reportplan-reportsetting-accounts): 
    - String
  [FrameworkArns](#cfn-backup-reportplan-reportsetting-frameworkarns): 
    - String
  [OrganizationUnits](#cfn-backup-reportplan-reportsetting-organizationunits): 
    - String
  [Regions](#cfn-backup-reportplan-reportsetting-regions): 
    - String
  [ReportTemplate](#cfn-backup-reportplan-reportsetting-reporttemplate): String
```

## Properties
<a name="aws-properties-backup-reportplan-reportsetting-properties"></a>

`Accounts`  <a name="cfn-backup-reportplan-reportsetting-accounts"></a>
These are the accounts to be included in the report.  
Use string value of `ROOT` to include all organizational units.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`FrameworkArns`  <a name="cfn-backup-reportplan-reportsetting-frameworkarns"></a>
The Amazon Resource Names (ARNs) of the frameworks a report covers.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OrganizationUnits`  <a name="cfn-backup-reportplan-reportsetting-organizationunits"></a>
These are the Organizational Units to be included in the report.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Regions`  <a name="cfn-backup-reportplan-reportsetting-regions"></a>
These are the Regions to be included in the report.  
Use the wildcard as the string value to include all Regions.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ReportTemplate`  <a name="cfn-backup-reportplan-reportsetting-reporttemplate"></a>
Identifies the report template for the report. Reports are built using a report template. The report templates are:  
 `RESOURCE_COMPLIANCE_REPORT | CONTROL_COMPLIANCE_REPORT | BACKUP_JOB_REPORT | COPY_JOB_REPORT | RESTORE_JOB_REPORT | SCAN_JOB_REPORT`   
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Backup::ReportPlan Tag
<a name="aws-properties-backup-reportplan-tag"></a>

Metadata that you can assign to help organize your report plans. Each tag is a key-value pair.

## Syntax
<a name="aws-properties-backup-reportplan-tag-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-reportplan-tag-syntax.json"></a>

```
{
  "[Key](#cfn-backup-reportplan-tag-key)" : String,
  "[Value](#cfn-backup-reportplan-tag-value)" : String
}
```

### YAML
<a name="aws-properties-backup-reportplan-tag-syntax.yaml"></a>

```
  [Key](#cfn-backup-reportplan-tag-key): String
  [Value](#cfn-backup-reportplan-tag-value): String
```

## Properties
<a name="aws-properties-backup-reportplan-tag-properties"></a>

`Key`  <a name="cfn-backup-reportplan-tag-key"></a>
The tag key.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-backup-reportplan-tag-value"></a>
The tag value.  
*Required*: No  
*Type*: String  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Backup::RestoreTestingPlan
<a name="aws-resource-backup-restoretestingplan"></a>

Creates a restore testing plan.

The first of two steps to create a restore testing plan. After this request is successful, finish the procedure using CreateRestoreTestingSelection.

## Syntax
<a name="aws-resource-backup-restoretestingplan-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-backup-restoretestingplan-syntax.json"></a>

```
{
  "Type" : "AWS::Backup::RestoreTestingPlan",
  "Properties" : {
      "[RecoveryPointSelection](#cfn-backup-restoretestingplan-recoverypointselection)" : RestoreTestingRecoveryPointSelection,
      "[RestoreTestingPlanName](#cfn-backup-restoretestingplan-restoretestingplanname)" : String,
      "[ScheduleExpression](#cfn-backup-restoretestingplan-scheduleexpression)" : String,
      "[ScheduleExpressionTimezone](#cfn-backup-restoretestingplan-scheduleexpressiontimezone)" : String,
      "[StartWindowHours](#cfn-backup-restoretestingplan-startwindowhours)" : Integer,
      "[Tags](#cfn-backup-restoretestingplan-tags)" : [ Tag, ... ]
    }
}
```

### YAML
<a name="aws-resource-backup-restoretestingplan-syntax.yaml"></a>

```
Type: AWS::Backup::RestoreTestingPlan
Properties:
  [RecoveryPointSelection](#cfn-backup-restoretestingplan-recoverypointselection): 
    RestoreTestingRecoveryPointSelection
  [RestoreTestingPlanName](#cfn-backup-restoretestingplan-restoretestingplanname): String
  [ScheduleExpression](#cfn-backup-restoretestingplan-scheduleexpression): String
  [ScheduleExpressionTimezone](#cfn-backup-restoretestingplan-scheduleexpressiontimezone): String
  [StartWindowHours](#cfn-backup-restoretestingplan-startwindowhours): Integer
  [Tags](#cfn-backup-restoretestingplan-tags): 
    - Tag
```

## Properties
<a name="aws-resource-backup-restoretestingplan-properties"></a>

`RecoveryPointSelection`  <a name="cfn-backup-restoretestingplan-recoverypointselection"></a>
The specified criteria to assign a set of resources, such as recovery point types or backup vaults.  
*Required*: Yes  
*Type*: [RestoreTestingRecoveryPointSelection](aws-properties-backup-restoretestingplan-restoretestingrecoverypointselection.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RestoreTestingPlanName`  <a name="cfn-backup-restoretestingplan-restoretestingplanname"></a>
The RestoreTestingPlanName is a unique string that is the name of the restore testing plan. This cannot be changed after creation, and it must consist of only alphanumeric characters and underscores.  
*Required*: Yes  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ScheduleExpression`  <a name="cfn-backup-restoretestingplan-scheduleexpression"></a>
A CRON expression in specified timezone when a restore testing plan is executed. When no CRON expression is provided, AWS Backup will use the default expression `cron(0 5 ? * * *)`.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ScheduleExpressionTimezone`  <a name="cfn-backup-restoretestingplan-scheduleexpressiontimezone"></a>
Optional. This is the timezone in which the schedule expression is set. By default, ScheduleExpressions are in UTC. You can modify this to a specified timezone.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StartWindowHours`  <a name="cfn-backup-restoretestingplan-startwindowhours"></a>
Defaults to 24 hours.  
A value in hours after a restore test is scheduled before a job will be canceled if it doesn't start successfully. This value is optional. If this value is included, this parameter has a maximum value of 168 hours (one week).  
*Required*: No  
*Type*: Integer  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Tags`  <a name="cfn-backup-restoretestingplan-tags"></a>
Optional tags to include. A tag is a key-value pair you can use to manage, filter, and search for your resources. Allowed characters include UTF-8 letters,numbers, spaces, and the following characters: `+ - = . _ : /.`  
*Required*: No  
*Type*: Array of [Tag](aws-properties-backup-restoretestingplan-tag.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-backup-restoretestingplan-return-values"></a>

### Ref
<a name="aws-resource-backup-restoretestingplan-return-values-ref"></a>

### Fn::GetAtt
<a name="aws-resource-backup-restoretestingplan-return-values-fn--getatt"></a>

#### 
<a name="aws-resource-backup-restoretestingplan-return-values-fn--getatt-fn--getatt"></a>

`RestoreTestingPlanArn`  <a name="RestoreTestingPlanArn-fn::getatt"></a>
An Amazon Resource Name (ARN) that uniquely identifies a restore testing plan.

# AWS::Backup::RestoreTestingPlan RestoreTestingRecoveryPointSelection
<a name="aws-properties-backup-restoretestingplan-restoretestingrecoverypointselection"></a>

`RecoveryPointSelection` has five parameters (three required and two optional). The values you specify determine which recovery point is included in the restore test. You must indicate with `Algorithm` if you want the latest recovery point within your `SelectionWindowDays` or if you want a random recovery point, and you must indicate through `IncludeVaults` from which vaults the recovery points can be chosen.

`Algorithm` (*required*) Valid values: "`LATEST_WITHIN_WINDOW`" or "`RANDOM_WITHIN_WINDOW`".

`Recovery point types` (*required*) Valid values: "`SNAPSHOT`" and/or "`CONTINUOUS`". Include `SNAPSHOT` to restore only snapshot recovery points; include `CONTINUOUS` to restore continuous recovery points (point in time restore / PITR); use both to restore either a snapshot or a continuous recovery point. The recovery point will be determined by the value for `Algorithm`.

`IncludeVaults` (*required*). You must include one or more backup vaults. Use the wildcard ["\$1"] or specific ARNs.

`SelectionWindowDays` (*optional*) Value must be an integer (in days) from 1 to 365. If not included, the value defaults to `30`.

`ExcludeVaults` (*optional*). You can choose to input one or more specific backup vault ARNs to exclude those vaults' contents from restore eligibility. Or, you can include a list of selectors. If this parameter and its value are not included, it defaults to empty list.

## Syntax
<a name="aws-properties-backup-restoretestingplan-restoretestingrecoverypointselection-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-restoretestingplan-restoretestingrecoverypointselection-syntax.json"></a>

```
{
  "[Algorithm](#cfn-backup-restoretestingplan-restoretestingrecoverypointselection-algorithm)" : String,
  "[ExcludeVaults](#cfn-backup-restoretestingplan-restoretestingrecoverypointselection-excludevaults)" : [ String, ... ],
  "[IncludeVaults](#cfn-backup-restoretestingplan-restoretestingrecoverypointselection-includevaults)" : [ String, ... ],
  "[RecoveryPointTypes](#cfn-backup-restoretestingplan-restoretestingrecoverypointselection-recoverypointtypes)" : [ String, ... ],
  "[SelectionWindowDays](#cfn-backup-restoretestingplan-restoretestingrecoverypointselection-selectionwindowdays)" : Integer
}
```

### YAML
<a name="aws-properties-backup-restoretestingplan-restoretestingrecoverypointselection-syntax.yaml"></a>

```
  [Algorithm](#cfn-backup-restoretestingplan-restoretestingrecoverypointselection-algorithm): String
  [ExcludeVaults](#cfn-backup-restoretestingplan-restoretestingrecoverypointselection-excludevaults): 
    - String
  [IncludeVaults](#cfn-backup-restoretestingplan-restoretestingrecoverypointselection-includevaults): 
    - String
  [RecoveryPointTypes](#cfn-backup-restoretestingplan-restoretestingrecoverypointselection-recoverypointtypes): 
    - String
  [SelectionWindowDays](#cfn-backup-restoretestingplan-restoretestingrecoverypointselection-selectionwindowdays): Integer
```

## Properties
<a name="aws-properties-backup-restoretestingplan-restoretestingrecoverypointselection-properties"></a>

`Algorithm`  <a name="cfn-backup-restoretestingplan-restoretestingrecoverypointselection-algorithm"></a>
Acceptable values include "LATEST\$1WITHIN\$1WINDOW" or "RANDOM\$1WITHIN\$1WINDOW"  
*Required*: Yes  
*Type*: String  
*Allowed values*: `LATEST_WITHIN_WINDOW | RANDOM_WITHIN_WINDOW`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ExcludeVaults`  <a name="cfn-backup-restoretestingplan-restoretestingrecoverypointselection-excludevaults"></a>
Accepted values include specific ARNs or list of selectors. Defaults to empty list if not listed.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IncludeVaults`  <a name="cfn-backup-restoretestingplan-restoretestingrecoverypointselection-includevaults"></a>
Accepted values include wildcard ["\$1"] or by specific ARNs or ARN wilcard replacement ["arn:aws:backup:us-west-2:123456789012:backup-vault:asdf", ...] ["arn:aws:backup:\$1:\$1:backup-vault:asdf-\$1", ...]  
*Required*: Yes  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RecoveryPointTypes`  <a name="cfn-backup-restoretestingplan-restoretestingrecoverypointselection-recoverypointtypes"></a>
These are the types of recovery points.  
Include `SNAPSHOT` to restore only snapshot recovery points; include `CONTINUOUS` to restore continuous recovery points (point in time restore / PITR); use both to restore either a snapshot or a continuous recovery point. The recovery point will be determined by the value for `Algorithm`.  
*Required*: Yes  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SelectionWindowDays`  <a name="cfn-backup-restoretestingplan-restoretestingrecoverypointselection-selectionwindowdays"></a>
Accepted values are integers from 1 to 365.  
*Required*: No  
*Type*: Integer  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Backup::RestoreTestingPlan Tag
<a name="aws-properties-backup-restoretestingplan-tag"></a>

The tags to assign to the restore testing plan.

## Syntax
<a name="aws-properties-backup-restoretestingplan-tag-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-restoretestingplan-tag-syntax.json"></a>

```
{
  "[Key](#cfn-backup-restoretestingplan-tag-key)" : String,
  "[Value](#cfn-backup-restoretestingplan-tag-value)" : String
}
```

### YAML
<a name="aws-properties-backup-restoretestingplan-tag-syntax.yaml"></a>

```
  [Key](#cfn-backup-restoretestingplan-tag-key): String
  [Value](#cfn-backup-restoretestingplan-tag-value): String
```

## Properties
<a name="aws-properties-backup-restoretestingplan-tag-properties"></a>

`Key`  <a name="cfn-backup-restoretestingplan-tag-key"></a>
The tag key.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-backup-restoretestingplan-tag-value"></a>
The tag value.  
*Required*: Yes  
*Type*: String  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Backup::RestoreTestingSelection
<a name="aws-resource-backup-restoretestingselection"></a>

This request can be sent after CreateRestoreTestingPlan request returns successfully. This is the second part of creating a resource testing plan, and it must be completed sequentially.

This consists of `RestoreTestingSelectionName`, `ProtectedResourceType`, and one of the following:
+  `ProtectedResourceArns` 
+  `ProtectedResourceConditions` 

Each protected resource type can have one single value.

A restore testing selection can include a wildcard value ("\$1") for `ProtectedResourceArns` along with `ProtectedResourceConditions`. Alternatively, you can include up to 30 specific protected resource ARNs in `ProtectedResourceArns`.

Cannot select by both protected resource types AND specific ARNs. Request will fail if both are included.

## Syntax
<a name="aws-resource-backup-restoretestingselection-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-backup-restoretestingselection-syntax.json"></a>

```
{
  "Type" : "AWS::Backup::RestoreTestingSelection",
  "Properties" : {
      "[IamRoleArn](#cfn-backup-restoretestingselection-iamrolearn)" : String,
      "[ProtectedResourceArns](#cfn-backup-restoretestingselection-protectedresourcearns)" : [ String, ... ],
      "[ProtectedResourceConditions](#cfn-backup-restoretestingselection-protectedresourceconditions)" : ProtectedResourceConditions,
      "[ProtectedResourceType](#cfn-backup-restoretestingselection-protectedresourcetype)" : String,
      "[RestoreMetadataOverrides](#cfn-backup-restoretestingselection-restoremetadataoverrides)" : {Key: Value, ...},
      "[RestoreTestingPlanName](#cfn-backup-restoretestingselection-restoretestingplanname)" : String,
      "[RestoreTestingSelectionName](#cfn-backup-restoretestingselection-restoretestingselectionname)" : String,
      "[ValidationWindowHours](#cfn-backup-restoretestingselection-validationwindowhours)" : Integer
    }
}
```

### YAML
<a name="aws-resource-backup-restoretestingselection-syntax.yaml"></a>

```
Type: AWS::Backup::RestoreTestingSelection
Properties:
  [IamRoleArn](#cfn-backup-restoretestingselection-iamrolearn): String
  [ProtectedResourceArns](#cfn-backup-restoretestingselection-protectedresourcearns): 
    - String
  [ProtectedResourceConditions](#cfn-backup-restoretestingselection-protectedresourceconditions): 
    ProtectedResourceConditions
  [ProtectedResourceType](#cfn-backup-restoretestingselection-protectedresourcetype): String
  [RestoreMetadataOverrides](#cfn-backup-restoretestingselection-restoremetadataoverrides): 
    Key: Value
  [RestoreTestingPlanName](#cfn-backup-restoretestingselection-restoretestingplanname): String
  [RestoreTestingSelectionName](#cfn-backup-restoretestingselection-restoretestingselectionname): String
  [ValidationWindowHours](#cfn-backup-restoretestingselection-validationwindowhours): Integer
```

## Properties
<a name="aws-resource-backup-restoretestingselection-properties"></a>

`IamRoleArn`  <a name="cfn-backup-restoretestingselection-iamrolearn"></a>
The Amazon Resource Name (ARN) of the IAM role that AWS Backup uses to create the target resource; for example:`arn:aws:iam::123456789012:role/S3Access`.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ProtectedResourceArns`  <a name="cfn-backup-restoretestingselection-protectedresourcearns"></a>
You can include specific ARNs, such as `ProtectedResourceArns: ["arn:aws:...", "arn:aws:..."]` or you can include a wildcard: `ProtectedResourceArns: ["*"]`, but not both.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ProtectedResourceConditions`  <a name="cfn-backup-restoretestingselection-protectedresourceconditions"></a>
In a resource testing selection, this parameter filters by specific conditions such as `StringEquals` or `StringNotEquals`.  
*Required*: No  
*Type*: [ProtectedResourceConditions](aws-properties-backup-restoretestingselection-protectedresourceconditions.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ProtectedResourceType`  <a name="cfn-backup-restoretestingselection-protectedresourcetype"></a>
The type of AWS resource included in a resource testing selection; for example, an Amazon EBS volume or an Amazon RDS database.  
*Required*: Yes  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`RestoreMetadataOverrides`  <a name="cfn-backup-restoretestingselection-restoremetadataoverrides"></a>
You can override certain restore metadata keys by including the parameter `RestoreMetadataOverrides` in the body of `RestoreTestingSelection`. Key values are not case sensitive.  
See the complete list of [restore testing inferred metadata](https://docs.aws.amazon.com/aws-backup/latest/devguide/restore-testing-inferred-metadata.html).  
*Required*: No  
*Type*: Object of String  
*Pattern*: `.+`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RestoreTestingPlanName`  <a name="cfn-backup-restoretestingselection-restoretestingplanname"></a>
Unique string that is the name of the restore testing plan.  
The name cannot be changed after creation. The name must consist of only alphanumeric characters and underscores. Maximum length is 50.  
*Required*: Yes  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`RestoreTestingSelectionName`  <a name="cfn-backup-restoretestingselection-restoretestingselectionname"></a>
The unique name of the restore testing selection that belongs to the related restore testing plan.  
The name consists of only alphanumeric characters and underscores. Maximum length is 50.  
*Required*: Yes  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ValidationWindowHours`  <a name="cfn-backup-restoretestingselection-validationwindowhours"></a>
This is amount of hours (1 to 168) available to run a validation script on the data. The data will be deleted upon the completion of the validation script or the end of the specified retention period, whichever comes first.  
*Required*: No  
*Type*: Integer  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-backup-restoretestingselection-return-values"></a>

### Ref
<a name="aws-resource-backup-restoretestingselection-return-values-ref"></a>

# AWS::Backup::RestoreTestingSelection KeyValue
<a name="aws-properties-backup-restoretestingselection-keyvalue"></a>

Pair of two related strings. Allowed characters are letters, white space, and numbers that can be represented in UTF-8 and the following characters: ` + - = . _ : /`

## Syntax
<a name="aws-properties-backup-restoretestingselection-keyvalue-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-restoretestingselection-keyvalue-syntax.json"></a>

```
{
  "[Key](#cfn-backup-restoretestingselection-keyvalue-key)" : String,
  "[Value](#cfn-backup-restoretestingselection-keyvalue-value)" : String
}
```

### YAML
<a name="aws-properties-backup-restoretestingselection-keyvalue-syntax.yaml"></a>

```
  [Key](#cfn-backup-restoretestingselection-keyvalue-key): String
  [Value](#cfn-backup-restoretestingselection-keyvalue-value): String
```

## Properties
<a name="aws-properties-backup-restoretestingselection-keyvalue-properties"></a>

`Key`  <a name="cfn-backup-restoretestingselection-keyvalue-key"></a>
The tag key.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-backup-restoretestingselection-keyvalue-value"></a>
The tag value.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Backup::RestoreTestingSelection ProtectedResourceConditions
<a name="aws-properties-backup-restoretestingselection-protectedresourceconditions"></a>

The conditions that you define for resources in your restore testing plan using tags.

## Syntax
<a name="aws-properties-backup-restoretestingselection-protectedresourceconditions-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-restoretestingselection-protectedresourceconditions-syntax.json"></a>

```
{
  "[StringEquals](#cfn-backup-restoretestingselection-protectedresourceconditions-stringequals)" : [ KeyValue, ... ],
  "[StringNotEquals](#cfn-backup-restoretestingselection-protectedresourceconditions-stringnotequals)" : [ KeyValue, ... ]
}
```

### YAML
<a name="aws-properties-backup-restoretestingselection-protectedresourceconditions-syntax.yaml"></a>

```
  [StringEquals](#cfn-backup-restoretestingselection-protectedresourceconditions-stringequals): 
    - KeyValue
  [StringNotEquals](#cfn-backup-restoretestingselection-protectedresourceconditions-stringnotequals): 
    - KeyValue
```

## Properties
<a name="aws-properties-backup-restoretestingselection-protectedresourceconditions-properties"></a>

`StringEquals`  <a name="cfn-backup-restoretestingselection-protectedresourceconditions-stringequals"></a>
Filters the values of your tagged resources for only those resources that you tagged with the same value. Also called "exact matching."  
*Required*: No  
*Type*: Array of [KeyValue](aws-properties-backup-restoretestingselection-keyvalue.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StringNotEquals`  <a name="cfn-backup-restoretestingselection-protectedresourceconditions-stringnotequals"></a>
Filters the values of your tagged resources for only those resources that you tagged that do not have the same value. Also called "negated matching."  
*Required*: No  
*Type*: Array of [KeyValue](aws-properties-backup-restoretestingselection-keyvalue.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Backup::TieringConfiguration
<a name="aws-resource-backup-tieringconfiguration"></a>

This contains metadata about a tiering configuration.

## Syntax
<a name="aws-resource-backup-tieringconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-backup-tieringconfiguration-syntax.json"></a>

```
{
  "Type" : "AWS::Backup::TieringConfiguration",
  "Properties" : {
      "[BackupVaultName](#cfn-backup-tieringconfiguration-backupvaultname)" : String,
      "[ResourceSelection](#cfn-backup-tieringconfiguration-resourceselection)" : [ ResourceSelection, ... ],
      "[TieringConfigurationName](#cfn-backup-tieringconfiguration-tieringconfigurationname)" : String,
      "[TieringConfigurationTags](#cfn-backup-tieringconfiguration-tieringconfigurationtags)" : {Key: Value, ...}
    }
}
```

### YAML
<a name="aws-resource-backup-tieringconfiguration-syntax.yaml"></a>

```
Type: AWS::Backup::TieringConfiguration
Properties:
  [BackupVaultName](#cfn-backup-tieringconfiguration-backupvaultname): String
  [ResourceSelection](#cfn-backup-tieringconfiguration-resourceselection): 
    - ResourceSelection
  [TieringConfigurationName](#cfn-backup-tieringconfiguration-tieringconfigurationname): String
  [TieringConfigurationTags](#cfn-backup-tieringconfiguration-tieringconfigurationtags): 
    Key: Value
```

## Properties
<a name="aws-resource-backup-tieringconfiguration-properties"></a>

`BackupVaultName`  <a name="cfn-backup-tieringconfiguration-backupvaultname"></a>
The name of the backup vault where the tiering configuration applies. Use `*` to apply to all backup vaults.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(\*|[a-zA-Z0-9\-\_]{2,50})$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ResourceSelection`  <a name="cfn-backup-tieringconfiguration-resourceselection"></a>
An array of resource selection objects that specify which resources are included in the tiering configuration and their tiering settings.  
*Required*: Yes  
*Type*: [Array](aws-properties-backup-tieringconfiguration-resourceselection.md) of [ResourceSelection](aws-properties-backup-tieringconfiguration-resourceselection.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TieringConfigurationName`  <a name="cfn-backup-tieringconfiguration-tieringconfigurationname"></a>
The unique name of the tiering configuration. This cannot be changed after creation, and it must consist of only alphanumeric characters and underscores.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9_]{1,200}$`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`TieringConfigurationTags`  <a name="cfn-backup-tieringconfiguration-tieringconfigurationtags"></a>
Property description not available.  
*Required*: No  
*Type*: Object of String  
*Pattern*: `^.{1,128}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-backup-tieringconfiguration-return-values"></a>

### Ref
<a name="aws-resource-backup-tieringconfiguration-return-values-ref"></a>

### Fn::GetAtt
<a name="aws-resource-backup-tieringconfiguration-return-values-fn--getatt"></a>

#### 
<a name="aws-resource-backup-tieringconfiguration-return-values-fn--getatt-fn--getatt"></a>

`CreationTime`  <a name="CreationTime-fn::getatt"></a>
The date and time a tiering configuration was created, in Unix format and Coordinated Universal Time (UTC). The value of `CreationTime` is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087AM.

`LastUpdatedTime`  <a name="LastUpdatedTime-fn::getatt"></a>
The date and time a tiering configuration was updated, in Unix format and Coordinated Universal Time (UTC). The value of `LastUpdatedTime` is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087AM.

`TieringConfigurationArn`  <a name="TieringConfigurationArn-fn::getatt"></a>
An Amazon Resource Name (ARN) that uniquely identifies the tiering configuration.

# AWS::Backup::TieringConfiguration ResourceSelection
<a name="aws-properties-backup-tieringconfiguration-resourceselection"></a>

This contains metadata about resource selection for tiering configurations.

You can specify up to 5 different resource selections per tiering configuration. Data moved to lower-cost tier remains there until deletion (one-way transition).

## Syntax
<a name="aws-properties-backup-tieringconfiguration-resourceselection-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-backup-tieringconfiguration-resourceselection-syntax.json"></a>

```
{
  "[Resources](#cfn-backup-tieringconfiguration-resourceselection-resources)" : [ String, ... ],
  "[ResourceType](#cfn-backup-tieringconfiguration-resourceselection-resourcetype)" : String,
  "[TieringDownSettingsInDays](#cfn-backup-tieringconfiguration-resourceselection-tieringdownsettingsindays)" : Integer
}
```

### YAML
<a name="aws-properties-backup-tieringconfiguration-resourceselection-syntax.yaml"></a>

```
  [Resources](#cfn-backup-tieringconfiguration-resourceselection-resources): 
    - String
  [ResourceType](#cfn-backup-tieringconfiguration-resourceselection-resourcetype): String
  [TieringDownSettingsInDays](#cfn-backup-tieringconfiguration-resourceselection-tieringdownsettingsindays): Integer
```

## Properties
<a name="aws-properties-backup-tieringconfiguration-resourceselection-properties"></a>

`Resources`  <a name="cfn-backup-tieringconfiguration-resourceselection-resources"></a>
An array of strings that either contains ARNs of the associated resources or contains a wildcard `*` to specify all resources. You can specify up to 100 specific resources per tiering configuration.  
*Required*: Yes  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ResourceType`  <a name="cfn-backup-tieringconfiguration-resourceselection-resourcetype"></a>
The type of AWS resource; for example, `S3` for Amazon S3. For tiering configurations, this is currently limited to `S3`.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9\-\_\.]{1,50}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TieringDownSettingsInDays`  <a name="cfn-backup-tieringconfiguration-resourceselection-tieringdownsettingsindays"></a>
The number of days after creation within a backup vault that an object can transition to the low cost warm storage tier. Must be a positive integer between 60 and 36500 days.  
*Required*: Yes  
*Type*: Integer  
*Minimum*: `60`  
*Maximum*: `36500`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)