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<FrameworkControl> 
- 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_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- Controls
[]FrameworkControl 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_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- controls
List<FrameworkControl> 
- 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_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- controls
FrameworkControl[] 
- 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_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- controls
Sequence[FrameworkControl 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_tagsconfiguration 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_tagsconfiguration 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.
- CreationTime string
- The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
- DeploymentStatus 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_tagsconfiguration block.
- Arn string
- The ARN of the backup framework.
- CreationTime string
- The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
- DeploymentStatus 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_tagsconfiguration block.
- arn String
- The ARN of the backup framework.
- creationTime String
- The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
- deploymentStatus 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_tagsconfiguration block.
- arn string
- The ARN of the backup framework.
- creationTime string
- The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
- deploymentStatus 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_tagsconfiguration 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_tagsconfiguration block.
- arn String
- The ARN of the backup framework.
- creationTime String
- The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
- deploymentStatus 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_tagsconfiguration 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) -> Frameworkfunc 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)resources:  _:    type: aws:backup:Framework    get:      id: ${id}- 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<FrameworkControl> 
- One or more control blocks that make up the framework. Each control in the list has a name, input parameters, and scope. Detailed below.
- CreationTime string
- The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
- DeploymentStatus 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_tagsconfiguration 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_tagsconfiguration block.
- Arn string
- The ARN of the backup framework.
- Controls
[]FrameworkControl 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.
- CreationTime string
- The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
- DeploymentStatus 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_tagsconfiguration 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_tagsconfiguration block.
- arn String
- The ARN of the backup framework.
- controls
List<FrameworkControl> 
- One or more control blocks that make up the framework. Each control in the list has a name, input parameters, and scope. Detailed below.
- creationTime String
- The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
- deploymentStatus 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_tagsconfiguration 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_tagsconfiguration block.
- arn string
- The ARN of the backup framework.
- controls
FrameworkControl[] 
- One or more control blocks that make up the framework. Each control in the list has a name, input parameters, and scope. Detailed below.
- creationTime string
- The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
- deploymentStatus 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_tagsconfiguration 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_tagsconfiguration block.
- arn str
- The ARN of the backup framework.
- controls
Sequence[FrameworkControl 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_tagsconfiguration 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_tagsconfiguration 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.
- creationTime String
- The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
- deploymentStatus 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_tagsconfiguration 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_tagsconfiguration block.
Supporting Types
FrameworkControl, FrameworkControlArgs    
- Name string
- The name of a control. This name is between 1 and 256 characters.
- InputParameters 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
FrameworkControl 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.
- InputParameters []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
FrameworkControl 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.
- inputParameters 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
FrameworkControl 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.
- inputParameters 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
FrameworkControl 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
FrameworkControl 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.
- inputParameters 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      
- ComplianceResource 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.
- ComplianceResource 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.
- ComplianceResource []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.
- ComplianceResource []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.
- complianceResource 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.
- complianceResource 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.
- complianceResource 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.
- complianceResource 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.
- complianceResource 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.
- complianceResource 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 awsTerraform Provider.