aws.backup.Framework
Explore with Pulumi AI
Provides an AWS Backup Framework resource.
Note: For the Deployment Status of the Framework to be successful, please turn on resource tracking to enable AWS Config recording to track configuration changes of your backup resources. This can be done from the AWS Console.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.backup.Framework("Example", {
name: "exampleFramework",
description: "this is an example framework",
controls: [
{
name: "BACKUP_RECOVERY_POINT_MINIMUM_RETENTION_CHECK",
inputParameters: [{
name: "requiredRetentionDays",
value: "35",
}],
},
{
name: "BACKUP_PLAN_MIN_FREQUENCY_AND_MIN_RETENTION_CHECK",
inputParameters: [
{
name: "requiredFrequencyUnit",
value: "hours",
},
{
name: "requiredRetentionDays",
value: "35",
},
{
name: "requiredFrequencyValue",
value: "1",
},
],
},
{
name: "BACKUP_RECOVERY_POINT_ENCRYPTED",
},
{
name: "BACKUP_RESOURCES_PROTECTED_BY_BACKUP_PLAN",
scope: {
complianceResourceTypes: ["EBS"],
},
},
{
name: "BACKUP_RECOVERY_POINT_MANUAL_DELETION_DISABLED",
},
{
name: "BACKUP_RESOURCES_PROTECTED_BY_BACKUP_VAULT_LOCK",
inputParameters: [
{
name: "maxRetentionDays",
value: "100",
},
{
name: "minRetentionDays",
value: "1",
},
],
scope: {
complianceResourceTypes: ["EBS"],
},
},
{
name: "BACKUP_LAST_RECOVERY_POINT_CREATED",
inputParameters: [
{
name: "recoveryPointAgeUnit",
value: "days",
},
{
name: "recoveryPointAgeValue",
value: "1",
},
],
scope: {
complianceResourceTypes: ["EBS"],
},
},
],
tags: {
Name: "Example Framework",
},
});
import pulumi
import pulumi_aws as aws
example = aws.backup.Framework("Example",
name="exampleFramework",
description="this is an example framework",
controls=[
{
"name": "BACKUP_RECOVERY_POINT_MINIMUM_RETENTION_CHECK",
"input_parameters": [{
"name": "requiredRetentionDays",
"value": "35",
}],
},
{
"name": "BACKUP_PLAN_MIN_FREQUENCY_AND_MIN_RETENTION_CHECK",
"input_parameters": [
{
"name": "requiredFrequencyUnit",
"value": "hours",
},
{
"name": "requiredRetentionDays",
"value": "35",
},
{
"name": "requiredFrequencyValue",
"value": "1",
},
],
},
{
"name": "BACKUP_RECOVERY_POINT_ENCRYPTED",
},
{
"name": "BACKUP_RESOURCES_PROTECTED_BY_BACKUP_PLAN",
"scope": {
"compliance_resource_types": ["EBS"],
},
},
{
"name": "BACKUP_RECOVERY_POINT_MANUAL_DELETION_DISABLED",
},
{
"name": "BACKUP_RESOURCES_PROTECTED_BY_BACKUP_VAULT_LOCK",
"input_parameters": [
{
"name": "maxRetentionDays",
"value": "100",
},
{
"name": "minRetentionDays",
"value": "1",
},
],
"scope": {
"compliance_resource_types": ["EBS"],
},
},
{
"name": "BACKUP_LAST_RECOVERY_POINT_CREATED",
"input_parameters": [
{
"name": "recoveryPointAgeUnit",
"value": "days",
},
{
"name": "recoveryPointAgeValue",
"value": "1",
},
],
"scope": {
"compliance_resource_types": ["EBS"],
},
},
],
tags={
"Name": "Example Framework",
})
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/backup"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := backup.NewFramework(ctx, "Example", &backup.FrameworkArgs{
Name: pulumi.String("exampleFramework"),
Description: pulumi.String("this is an example framework"),
Controls: backup.FrameworkControlArray{
&backup.FrameworkControlArgs{
Name: pulumi.String("BACKUP_RECOVERY_POINT_MINIMUM_RETENTION_CHECK"),
InputParameters: backup.FrameworkControlInputParameterArray{
&backup.FrameworkControlInputParameterArgs{
Name: pulumi.String("requiredRetentionDays"),
Value: pulumi.String("35"),
},
},
},
&backup.FrameworkControlArgs{
Name: pulumi.String("BACKUP_PLAN_MIN_FREQUENCY_AND_MIN_RETENTION_CHECK"),
InputParameters: backup.FrameworkControlInputParameterArray{
&backup.FrameworkControlInputParameterArgs{
Name: pulumi.String("requiredFrequencyUnit"),
Value: pulumi.String("hours"),
},
&backup.FrameworkControlInputParameterArgs{
Name: pulumi.String("requiredRetentionDays"),
Value: pulumi.String("35"),
},
&backup.FrameworkControlInputParameterArgs{
Name: pulumi.String("requiredFrequencyValue"),
Value: pulumi.String("1"),
},
},
},
&backup.FrameworkControlArgs{
Name: pulumi.String("BACKUP_RECOVERY_POINT_ENCRYPTED"),
},
&backup.FrameworkControlArgs{
Name: pulumi.String("BACKUP_RESOURCES_PROTECTED_BY_BACKUP_PLAN"),
Scope: &backup.FrameworkControlScopeArgs{
ComplianceResourceTypes: pulumi.StringArray{
pulumi.String("EBS"),
},
},
},
&backup.FrameworkControlArgs{
Name: pulumi.String("BACKUP_RECOVERY_POINT_MANUAL_DELETION_DISABLED"),
},
&backup.FrameworkControlArgs{
Name: pulumi.String("BACKUP_RESOURCES_PROTECTED_BY_BACKUP_VAULT_LOCK"),
InputParameters: backup.FrameworkControlInputParameterArray{
&backup.FrameworkControlInputParameterArgs{
Name: pulumi.String("maxRetentionDays"),
Value: pulumi.String("100"),
},
&backup.FrameworkControlInputParameterArgs{
Name: pulumi.String("minRetentionDays"),
Value: pulumi.String("1"),
},
},
Scope: &backup.FrameworkControlScopeArgs{
ComplianceResourceTypes: pulumi.StringArray{
pulumi.String("EBS"),
},
},
},
&backup.FrameworkControlArgs{
Name: pulumi.String("BACKUP_LAST_RECOVERY_POINT_CREATED"),
InputParameters: backup.FrameworkControlInputParameterArray{
&backup.FrameworkControlInputParameterArgs{
Name: pulumi.String("recoveryPointAgeUnit"),
Value: pulumi.String("days"),
},
&backup.FrameworkControlInputParameterArgs{
Name: pulumi.String("recoveryPointAgeValue"),
Value: pulumi.String("1"),
},
},
Scope: &backup.FrameworkControlScopeArgs{
ComplianceResourceTypes: pulumi.StringArray{
pulumi.String("EBS"),
},
},
},
},
Tags: pulumi.StringMap{
"Name": pulumi.String("Example Framework"),
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.Backup.Framework("Example", new()
{
Name = "exampleFramework",
Description = "this is an example framework",
Controls = new[]
{
new Aws.Backup.Inputs.FrameworkControlArgs
{
Name = "BACKUP_RECOVERY_POINT_MINIMUM_RETENTION_CHECK",
InputParameters = new[]
{
new Aws.Backup.Inputs.FrameworkControlInputParameterArgs
{
Name = "requiredRetentionDays",
Value = "35",
},
},
},
new Aws.Backup.Inputs.FrameworkControlArgs
{
Name = "BACKUP_PLAN_MIN_FREQUENCY_AND_MIN_RETENTION_CHECK",
InputParameters = new[]
{
new Aws.Backup.Inputs.FrameworkControlInputParameterArgs
{
Name = "requiredFrequencyUnit",
Value = "hours",
},
new Aws.Backup.Inputs.FrameworkControlInputParameterArgs
{
Name = "requiredRetentionDays",
Value = "35",
},
new Aws.Backup.Inputs.FrameworkControlInputParameterArgs
{
Name = "requiredFrequencyValue",
Value = "1",
},
},
},
new Aws.Backup.Inputs.FrameworkControlArgs
{
Name = "BACKUP_RECOVERY_POINT_ENCRYPTED",
},
new Aws.Backup.Inputs.FrameworkControlArgs
{
Name = "BACKUP_RESOURCES_PROTECTED_BY_BACKUP_PLAN",
Scope = new Aws.Backup.Inputs.FrameworkControlScopeArgs
{
ComplianceResourceTypes = new[]
{
"EBS",
},
},
},
new Aws.Backup.Inputs.FrameworkControlArgs
{
Name = "BACKUP_RECOVERY_POINT_MANUAL_DELETION_DISABLED",
},
new Aws.Backup.Inputs.FrameworkControlArgs
{
Name = "BACKUP_RESOURCES_PROTECTED_BY_BACKUP_VAULT_LOCK",
InputParameters = new[]
{
new Aws.Backup.Inputs.FrameworkControlInputParameterArgs
{
Name = "maxRetentionDays",
Value = "100",
},
new Aws.Backup.Inputs.FrameworkControlInputParameterArgs
{
Name = "minRetentionDays",
Value = "1",
},
},
Scope = new Aws.Backup.Inputs.FrameworkControlScopeArgs
{
ComplianceResourceTypes = new[]
{
"EBS",
},
},
},
new Aws.Backup.Inputs.FrameworkControlArgs
{
Name = "BACKUP_LAST_RECOVERY_POINT_CREATED",
InputParameters = new[]
{
new Aws.Backup.Inputs.FrameworkControlInputParameterArgs
{
Name = "recoveryPointAgeUnit",
Value = "days",
},
new Aws.Backup.Inputs.FrameworkControlInputParameterArgs
{
Name = "recoveryPointAgeValue",
Value = "1",
},
},
Scope = new Aws.Backup.Inputs.FrameworkControlScopeArgs
{
ComplianceResourceTypes = new[]
{
"EBS",
},
},
},
},
Tags =
{
{ "Name", "Example Framework" },
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.backup.Framework;
import com.pulumi.aws.backup.FrameworkArgs;
import com.pulumi.aws.backup.inputs.FrameworkControlArgs;
import com.pulumi.aws.backup.inputs.FrameworkControlScopeArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new Framework("example", FrameworkArgs.builder()
.name("exampleFramework")
.description("this is an example framework")
.controls(
FrameworkControlArgs.builder()
.name("BACKUP_RECOVERY_POINT_MINIMUM_RETENTION_CHECK")
.inputParameters(FrameworkControlInputParameterArgs.builder()
.name("requiredRetentionDays")
.value("35")
.build())
.build(),
FrameworkControlArgs.builder()
.name("BACKUP_PLAN_MIN_FREQUENCY_AND_MIN_RETENTION_CHECK")
.inputParameters(
FrameworkControlInputParameterArgs.builder()
.name("requiredFrequencyUnit")
.value("hours")
.build(),
FrameworkControlInputParameterArgs.builder()
.name("requiredRetentionDays")
.value("35")
.build(),
FrameworkControlInputParameterArgs.builder()
.name("requiredFrequencyValue")
.value("1")
.build())
.build(),
FrameworkControlArgs.builder()
.name("BACKUP_RECOVERY_POINT_ENCRYPTED")
.build(),
FrameworkControlArgs.builder()
.name("BACKUP_RESOURCES_PROTECTED_BY_BACKUP_PLAN")
.scope(FrameworkControlScopeArgs.builder()
.complianceResourceTypes("EBS")
.build())
.build(),
FrameworkControlArgs.builder()
.name("BACKUP_RECOVERY_POINT_MANUAL_DELETION_DISABLED")
.build(),
FrameworkControlArgs.builder()
.name("BACKUP_RESOURCES_PROTECTED_BY_BACKUP_VAULT_LOCK")
.inputParameters(
FrameworkControlInputParameterArgs.builder()
.name("maxRetentionDays")
.value("100")
.build(),
FrameworkControlInputParameterArgs.builder()
.name("minRetentionDays")
.value("1")
.build())
.scope(FrameworkControlScopeArgs.builder()
.complianceResourceTypes("EBS")
.build())
.build(),
FrameworkControlArgs.builder()
.name("BACKUP_LAST_RECOVERY_POINT_CREATED")
.inputParameters(
FrameworkControlInputParameterArgs.builder()
.name("recoveryPointAgeUnit")
.value("days")
.build(),
FrameworkControlInputParameterArgs.builder()
.name("recoveryPointAgeValue")
.value("1")
.build())
.scope(FrameworkControlScopeArgs.builder()
.complianceResourceTypes("EBS")
.build())
.build())
.tags(Map.of("Name", "Example Framework"))
.build());
}
}
resources:
example:
type: aws:backup:Framework
name: Example
properties:
name: exampleFramework
description: this is an example framework
controls:
- name: BACKUP_RECOVERY_POINT_MINIMUM_RETENTION_CHECK
inputParameters:
- name: requiredRetentionDays
value: '35'
- name: BACKUP_PLAN_MIN_FREQUENCY_AND_MIN_RETENTION_CHECK
inputParameters:
- name: requiredFrequencyUnit
value: hours
- name: requiredRetentionDays
value: '35'
- name: requiredFrequencyValue
value: '1'
- name: BACKUP_RECOVERY_POINT_ENCRYPTED
- name: BACKUP_RESOURCES_PROTECTED_BY_BACKUP_PLAN
scope:
complianceResourceTypes:
- EBS
- name: BACKUP_RECOVERY_POINT_MANUAL_DELETION_DISABLED
- name: BACKUP_RESOURCES_PROTECTED_BY_BACKUP_VAULT_LOCK
inputParameters:
- name: maxRetentionDays
value: '100'
- name: minRetentionDays
value: '1'
scope:
complianceResourceTypes:
- EBS
- name: BACKUP_LAST_RECOVERY_POINT_CREATED
inputParameters:
- name: recoveryPointAgeUnit
value: days
- name: recoveryPointAgeValue
value: '1'
scope:
complianceResourceTypes:
- EBS
tags:
Name: Example Framework
Create Framework Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Framework(name: string, args: FrameworkArgs, opts?: CustomResourceOptions);
@overload
def Framework(resource_name: str,
args: FrameworkArgs,
opts: Optional[ResourceOptions] = None)
@overload
def Framework(resource_name: str,
opts: Optional[ResourceOptions] = None,
controls: Optional[Sequence[FrameworkControlArgs]] = None,
description: Optional[str] = None,
name: Optional[str] = None,
tags: Optional[Mapping[str, str]] = None)
func NewFramework(ctx *Context, name string, args FrameworkArgs, opts ...ResourceOption) (*Framework, error)
public Framework(string name, FrameworkArgs args, CustomResourceOptions? opts = null)
public Framework(String name, FrameworkArgs args)
public Framework(String name, FrameworkArgs args, CustomResourceOptions options)
type: aws:backup:Framework
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args FrameworkArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args FrameworkArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args FrameworkArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args FrameworkArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args FrameworkArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var awsFrameworkResource = new Aws.Backup.Framework("awsFrameworkResource", new()
{
Controls = new[]
{
new Aws.Backup.Inputs.FrameworkControlArgs
{
Name = "string",
InputParameters = new[]
{
new Aws.Backup.Inputs.FrameworkControlInputParameterArgs
{
Name = "string",
Value = "string",
},
},
Scope = new Aws.Backup.Inputs.FrameworkControlScopeArgs
{
ComplianceResourceIds = new[]
{
"string",
},
ComplianceResourceTypes = new[]
{
"string",
},
Tags =
{
{ "string", "string" },
},
},
},
},
Description = "string",
Name = "string",
Tags =
{
{ "string", "string" },
},
});
example, err := backup.NewFramework(ctx, "awsFrameworkResource", &backup.FrameworkArgs{
Controls: backup.FrameworkControlArray{
&backup.FrameworkControlArgs{
Name: pulumi.String("string"),
InputParameters: backup.FrameworkControlInputParameterArray{
&backup.FrameworkControlInputParameterArgs{
Name: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
Scope: &backup.FrameworkControlScopeArgs{
ComplianceResourceIds: pulumi.StringArray{
pulumi.String("string"),
},
ComplianceResourceTypes: pulumi.StringArray{
pulumi.String("string"),
},
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
},
},
},
Description: pulumi.String("string"),
Name: pulumi.String("string"),
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
})
var awsFrameworkResource = new Framework("awsFrameworkResource", FrameworkArgs.builder()
.controls(FrameworkControlArgs.builder()
.name("string")
.inputParameters(FrameworkControlInputParameterArgs.builder()
.name("string")
.value("string")
.build())
.scope(FrameworkControlScopeArgs.builder()
.complianceResourceIds("string")
.complianceResourceTypes("string")
.tags(Map.of("string", "string"))
.build())
.build())
.description("string")
.name("string")
.tags(Map.of("string", "string"))
.build());
aws_framework_resource = aws.backup.Framework("awsFrameworkResource",
controls=[{
"name": "string",
"input_parameters": [{
"name": "string",
"value": "string",
}],
"scope": {
"compliance_resource_ids": ["string"],
"compliance_resource_types": ["string"],
"tags": {
"string": "string",
},
},
}],
description="string",
name="string",
tags={
"string": "string",
})
const awsFrameworkResource = new aws.backup.Framework("awsFrameworkResource", {
controls: [{
name: "string",
inputParameters: [{
name: "string",
value: "string",
}],
scope: {
complianceResourceIds: ["string"],
complianceResourceTypes: ["string"],
tags: {
string: "string",
},
},
}],
description: "string",
name: "string",
tags: {
string: "string",
},
});
type: aws:backup:Framework
properties:
controls:
- inputParameters:
- name: string
value: string
name: string
scope:
complianceResourceIds:
- string
complianceResourceTypes:
- string
tags:
string: string
description: string
name: string
tags:
string: string
Framework Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The Framework resource accepts the following input properties:
- Controls
List<Framework
Control> - One or more control blocks that make up the framework. Each control in the list has a name, input parameters, and scope. Detailed below.
- Description string
- The description of the framework with a maximum of 1,024 characters
- Name string
- The unique name of the framework. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.
- Dictionary<string, string>
- Metadata that you can assign to help organize the frameworks you create. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.
- Controls
[]Framework
Control Args - One or more control blocks that make up the framework. Each control in the list has a name, input parameters, and scope. Detailed below.
- Description string
- The description of the framework with a maximum of 1,024 characters
- Name string
- The unique name of the framework. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.
- map[string]string
- Metadata that you can assign to help organize the frameworks you create. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.
- controls
List<Framework
Control> - One or more control blocks that make up the framework. Each control in the list has a name, input parameters, and scope. Detailed below.
- description String
- The description of the framework with a maximum of 1,024 characters
- name String
- The unique name of the framework. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.
- Map<String,String>
- Metadata that you can assign to help organize the frameworks you create. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.
- controls
Framework
Control[] - One or more control blocks that make up the framework. Each control in the list has a name, input parameters, and scope. Detailed below.
- description string
- The description of the framework with a maximum of 1,024 characters
- name string
- The unique name of the framework. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.
- {[key: string]: string}
- Metadata that you can assign to help organize the frameworks you create. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.
- controls
Sequence[Framework
Control Args] - One or more control blocks that make up the framework. Each control in the list has a name, input parameters, and scope. Detailed below.
- description str
- The description of the framework with a maximum of 1,024 characters
- name str
- The unique name of the framework. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.
- Mapping[str, str]
- Metadata that you can assign to help organize the frameworks you create. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.
- controls List<Property Map>
- One or more control blocks that make up the framework. Each control in the list has a name, input parameters, and scope. Detailed below.
- description String
- The description of the framework with a maximum of 1,024 characters
- name String
- The unique name of the framework. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.
- Map<String>
- Metadata that you can assign to help organize the frameworks you create. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.
Outputs
All input properties are implicitly available as output properties. Additionally, the Framework resource produces the following output properties:
- Arn string
- The ARN of the backup framework.
- Creation
Time string - The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
- Deployment
Status string - The deployment status of a framework. The statuses are:
CREATE_IN_PROGRESS
|UPDATE_IN_PROGRESS
|DELETE_IN_PROGRESS
|COMPLETED
|FAILED
. - Id string
- The provider-assigned unique ID for this managed resource.
- Status string
- A framework consists of one or more controls. Each control governs a resource, such as backup plans, backup selections, backup vaults, or recovery points. You can also turn AWS Config recording on or off for each resource. For more information refer to the AWS documentation for Framework Status
- Dictionary<string, string>
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- Arn string
- The ARN of the backup framework.
- Creation
Time string - The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
- Deployment
Status string - The deployment status of a framework. The statuses are:
CREATE_IN_PROGRESS
|UPDATE_IN_PROGRESS
|DELETE_IN_PROGRESS
|COMPLETED
|FAILED
. - Id string
- The provider-assigned unique ID for this managed resource.
- Status string
- A framework consists of one or more controls. Each control governs a resource, such as backup plans, backup selections, backup vaults, or recovery points. You can also turn AWS Config recording on or off for each resource. For more information refer to the AWS documentation for Framework Status
- map[string]string
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- arn String
- The ARN of the backup framework.
- creation
Time String - The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
- deployment
Status String - The deployment status of a framework. The statuses are:
CREATE_IN_PROGRESS
|UPDATE_IN_PROGRESS
|DELETE_IN_PROGRESS
|COMPLETED
|FAILED
. - id String
- The provider-assigned unique ID for this managed resource.
- status String
- A framework consists of one or more controls. Each control governs a resource, such as backup plans, backup selections, backup vaults, or recovery points. You can also turn AWS Config recording on or off for each resource. For more information refer to the AWS documentation for Framework Status
- Map<String,String>
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- arn string
- The ARN of the backup framework.
- creation
Time string - The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
- deployment
Status string - The deployment status of a framework. The statuses are:
CREATE_IN_PROGRESS
|UPDATE_IN_PROGRESS
|DELETE_IN_PROGRESS
|COMPLETED
|FAILED
. - id string
- The provider-assigned unique ID for this managed resource.
- status string
- A framework consists of one or more controls. Each control governs a resource, such as backup plans, backup selections, backup vaults, or recovery points. You can also turn AWS Config recording on or off for each resource. For more information refer to the AWS documentation for Framework Status
- {[key: string]: string}
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- arn str
- The ARN of the backup framework.
- creation_
time str - The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
- deployment_
status str - The deployment status of a framework. The statuses are:
CREATE_IN_PROGRESS
|UPDATE_IN_PROGRESS
|DELETE_IN_PROGRESS
|COMPLETED
|FAILED
. - id str
- The provider-assigned unique ID for this managed resource.
- status str
- A framework consists of one or more controls. Each control governs a resource, such as backup plans, backup selections, backup vaults, or recovery points. You can also turn AWS Config recording on or off for each resource. For more information refer to the AWS documentation for Framework Status
- Mapping[str, str]
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- arn String
- The ARN of the backup framework.
- creation
Time String - The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
- deployment
Status String - The deployment status of a framework. The statuses are:
CREATE_IN_PROGRESS
|UPDATE_IN_PROGRESS
|DELETE_IN_PROGRESS
|COMPLETED
|FAILED
. - id String
- The provider-assigned unique ID for this managed resource.
- status String
- A framework consists of one or more controls. Each control governs a resource, such as backup plans, backup selections, backup vaults, or recovery points. You can also turn AWS Config recording on or off for each resource. For more information refer to the AWS documentation for Framework Status
- Map<String>
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
Look up Existing Framework Resource
Get an existing Framework resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: FrameworkState, opts?: CustomResourceOptions): Framework
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
arn: Optional[str] = None,
controls: Optional[Sequence[FrameworkControlArgs]] = None,
creation_time: Optional[str] = None,
deployment_status: Optional[str] = None,
description: Optional[str] = None,
name: Optional[str] = None,
status: Optional[str] = None,
tags: Optional[Mapping[str, str]] = None,
tags_all: Optional[Mapping[str, str]] = None) -> Framework
func GetFramework(ctx *Context, name string, id IDInput, state *FrameworkState, opts ...ResourceOption) (*Framework, error)
public static Framework Get(string name, Input<string> id, FrameworkState? state, CustomResourceOptions? opts = null)
public static Framework get(String name, Output<String> id, FrameworkState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Arn string
- The ARN of the backup framework.
- Controls
List<Framework
Control> - One or more control blocks that make up the framework. Each control in the list has a name, input parameters, and scope. Detailed below.
- Creation
Time string - The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
- Deployment
Status string - The deployment status of a framework. The statuses are:
CREATE_IN_PROGRESS
|UPDATE_IN_PROGRESS
|DELETE_IN_PROGRESS
|COMPLETED
|FAILED
. - Description string
- The description of the framework with a maximum of 1,024 characters
- Name string
- The unique name of the framework. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.
- Status string
- A framework consists of one or more controls. Each control governs a resource, such as backup plans, backup selections, backup vaults, or recovery points. You can also turn AWS Config recording on or off for each resource. For more information refer to the AWS documentation for Framework Status
- Dictionary<string, string>
- Metadata that you can assign to help organize the frameworks you create. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level. - Dictionary<string, string>
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- Arn string
- The ARN of the backup framework.
- Controls
[]Framework
Control Args - One or more control blocks that make up the framework. Each control in the list has a name, input parameters, and scope. Detailed below.
- Creation
Time string - The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
- Deployment
Status string - The deployment status of a framework. The statuses are:
CREATE_IN_PROGRESS
|UPDATE_IN_PROGRESS
|DELETE_IN_PROGRESS
|COMPLETED
|FAILED
. - Description string
- The description of the framework with a maximum of 1,024 characters
- Name string
- The unique name of the framework. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.
- Status string
- A framework consists of one or more controls. Each control governs a resource, such as backup plans, backup selections, backup vaults, or recovery points. You can also turn AWS Config recording on or off for each resource. For more information refer to the AWS documentation for Framework Status
- map[string]string
- Metadata that you can assign to help organize the frameworks you create. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level. - map[string]string
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- arn String
- The ARN of the backup framework.
- controls
List<Framework
Control> - One or more control blocks that make up the framework. Each control in the list has a name, input parameters, and scope. Detailed below.
- creation
Time String - The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
- deployment
Status String - The deployment status of a framework. The statuses are:
CREATE_IN_PROGRESS
|UPDATE_IN_PROGRESS
|DELETE_IN_PROGRESS
|COMPLETED
|FAILED
. - description String
- The description of the framework with a maximum of 1,024 characters
- name String
- The unique name of the framework. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.
- status String
- A framework consists of one or more controls. Each control governs a resource, such as backup plans, backup selections, backup vaults, or recovery points. You can also turn AWS Config recording on or off for each resource. For more information refer to the AWS documentation for Framework Status
- Map<String,String>
- Metadata that you can assign to help organize the frameworks you create. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level. - Map<String,String>
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- arn string
- The ARN of the backup framework.
- controls
Framework
Control[] - One or more control blocks that make up the framework. Each control in the list has a name, input parameters, and scope. Detailed below.
- creation
Time string - The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
- deployment
Status string - The deployment status of a framework. The statuses are:
CREATE_IN_PROGRESS
|UPDATE_IN_PROGRESS
|DELETE_IN_PROGRESS
|COMPLETED
|FAILED
. - description string
- The description of the framework with a maximum of 1,024 characters
- name string
- The unique name of the framework. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.
- status string
- A framework consists of one or more controls. Each control governs a resource, such as backup plans, backup selections, backup vaults, or recovery points. You can also turn AWS Config recording on or off for each resource. For more information refer to the AWS documentation for Framework Status
- {[key: string]: string}
- Metadata that you can assign to help organize the frameworks you create. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level. - {[key: string]: string}
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- arn str
- The ARN of the backup framework.
- controls
Sequence[Framework
Control Args] - One or more control blocks that make up the framework. Each control in the list has a name, input parameters, and scope. Detailed below.
- creation_
time str - The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
- deployment_
status str - The deployment status of a framework. The statuses are:
CREATE_IN_PROGRESS
|UPDATE_IN_PROGRESS
|DELETE_IN_PROGRESS
|COMPLETED
|FAILED
. - description str
- The description of the framework with a maximum of 1,024 characters
- name str
- The unique name of the framework. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.
- status str
- A framework consists of one or more controls. Each control governs a resource, such as backup plans, backup selections, backup vaults, or recovery points. You can also turn AWS Config recording on or off for each resource. For more information refer to the AWS documentation for Framework Status
- Mapping[str, str]
- Metadata that you can assign to help organize the frameworks you create. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level. - Mapping[str, str]
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- arn String
- The ARN of the backup framework.
- controls List<Property Map>
- One or more control blocks that make up the framework. Each control in the list has a name, input parameters, and scope. Detailed below.
- creation
Time String - The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
- deployment
Status String - The deployment status of a framework. The statuses are:
CREATE_IN_PROGRESS
|UPDATE_IN_PROGRESS
|DELETE_IN_PROGRESS
|COMPLETED
|FAILED
. - description String
- The description of the framework with a maximum of 1,024 characters
- name String
- The unique name of the framework. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.
- status String
- A framework consists of one or more controls. Each control governs a resource, such as backup plans, backup selections, backup vaults, or recovery points. You can also turn AWS Config recording on or off for each resource. For more information refer to the AWS documentation for Framework Status
- Map<String>
- Metadata that you can assign to help organize the frameworks you create. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level. - Map<String>
- A map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
Supporting Types
FrameworkControl, FrameworkControlArgs
- Name string
- The name of a control. This name is between 1 and 256 characters.
- Input
Parameters List<FrameworkControl Input Parameter> - One or more input parameter blocks. 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. Detailed below.
- Scope
Framework
Control Scope - 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. Detailed below.
- Name string
- The name of a control. This name is between 1 and 256 characters.
- Input
Parameters []FrameworkControl Input Parameter - One or more input parameter blocks. 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. Detailed below.
- Scope
Framework
Control Scope - 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. Detailed below.
- name String
- The name of a control. This name is between 1 and 256 characters.
- input
Parameters List<FrameworkControl Input Parameter> - One or more input parameter blocks. 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. Detailed below.
- scope
Framework
Control Scope - 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. Detailed below.
- name string
- The name of a control. This name is between 1 and 256 characters.
- input
Parameters FrameworkControl Input Parameter[] - One or more input parameter blocks. 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. Detailed below.
- scope
Framework
Control Scope - 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. Detailed below.
- name str
- The name of a control. This name is between 1 and 256 characters.
- input_
parameters Sequence[FrameworkControl Input Parameter] - One or more input parameter blocks. 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. Detailed below.
- scope
Framework
Control Scope - 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. Detailed below.
- name String
- The name of a control. This name is between 1 and 256 characters.
- input
Parameters List<Property Map> - One or more input parameter blocks. 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. Detailed below.
- scope Property Map
- 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. Detailed below.
FrameworkControlInputParameter, FrameworkControlInputParameterArgs
FrameworkControlScope, FrameworkControlScopeArgs
- Compliance
Resource List<string>Ids - The ID of the only AWS resource that you want your control scope to contain. Minimum number of 1 item. Maximum number of 100 items.
- Compliance
Resource List<string>Types - Describes whether the control scope includes one or more types of resources, such as EFS or RDS.
- Dictionary<string, string>
- 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.
- Compliance
Resource []stringIds - The ID of the only AWS resource that you want your control scope to contain. Minimum number of 1 item. Maximum number of 100 items.
- Compliance
Resource []stringTypes - Describes whether the control scope includes one or more types of resources, such as EFS or RDS.
- map[string]string
- 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.
- compliance
Resource List<String>Ids - The ID of the only AWS resource that you want your control scope to contain. Minimum number of 1 item. Maximum number of 100 items.
- compliance
Resource List<String>Types - Describes whether the control scope includes one or more types of resources, such as EFS or RDS.
- Map<String,String>
- 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.
- compliance
Resource string[]Ids - The ID of the only AWS resource that you want your control scope to contain. Minimum number of 1 item. Maximum number of 100 items.
- compliance
Resource string[]Types - Describes whether the control scope includes one or more types of resources, such as EFS or RDS.
- {[key: string]: string}
- 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.
- compliance_
resource_ Sequence[str]ids - The ID of the only AWS resource that you want your control scope to contain. Minimum number of 1 item. Maximum number of 100 items.
- compliance_
resource_ Sequence[str]types - Describes whether the control scope includes one or more types of resources, such as EFS or RDS.
- Mapping[str, str]
- 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.
- compliance
Resource List<String>Ids - The ID of the only AWS resource that you want your control scope to contain. Minimum number of 1 item. Maximum number of 100 items.
- compliance
Resource List<String>Types - Describes whether the control scope includes one or more types of resources, such as EFS or RDS.
- Map<String>
- 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.
Import
Using pulumi import
, import Backup Framework using the id
which corresponds to the name of the Backup Framework. For example:
$ pulumi import aws:backup/framework:Framework test <id>
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- AWS Classic pulumi/pulumi-aws
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
aws
Terraform Provider.