awsbackup

package
v1.141.0-devpreview Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 27, 2022 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func BackupPlan_IsConstruct

func BackupPlan_IsConstruct(x interface{}) *bool

Return whether the given object is a Construct. Experimental.

func BackupPlan_IsResource

func BackupPlan_IsResource(construct awscdk.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func BackupSelection_IsConstruct

func BackupSelection_IsConstruct(x interface{}) *bool

Return whether the given object is a Construct. Experimental.

func BackupSelection_IsResource

func BackupSelection_IsResource(construct awscdk.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func BackupVault_IsConstruct

func BackupVault_IsConstruct(x interface{}) *bool

Return whether the given object is a Construct. Experimental.

func BackupVault_IsResource

func BackupVault_IsResource(construct awscdk.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func CfnBackupPlan_CFN_RESOURCE_TYPE_NAME

func CfnBackupPlan_CFN_RESOURCE_TYPE_NAME() *string

func CfnBackupPlan_IsCfnElement

func CfnBackupPlan_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnBackupPlan_IsCfnResource

func CfnBackupPlan_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnBackupPlan_IsConstruct

func CfnBackupPlan_IsConstruct(x interface{}) *bool

Return whether the given object is a Construct. Experimental.

func CfnBackupSelection_CFN_RESOURCE_TYPE_NAME

func CfnBackupSelection_CFN_RESOURCE_TYPE_NAME() *string

func CfnBackupSelection_IsCfnElement

func CfnBackupSelection_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnBackupSelection_IsCfnResource

func CfnBackupSelection_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnBackupSelection_IsConstruct

func CfnBackupSelection_IsConstruct(x interface{}) *bool

Return whether the given object is a Construct. Experimental.

func CfnBackupVault_CFN_RESOURCE_TYPE_NAME

func CfnBackupVault_CFN_RESOURCE_TYPE_NAME() *string

func CfnBackupVault_IsCfnElement

func CfnBackupVault_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnBackupVault_IsCfnResource

func CfnBackupVault_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnBackupVault_IsConstruct

func CfnBackupVault_IsConstruct(x interface{}) *bool

Return whether the given object is a Construct. Experimental.

func CfnFramework_CFN_RESOURCE_TYPE_NAME

func CfnFramework_CFN_RESOURCE_TYPE_NAME() *string

func CfnFramework_IsCfnElement

func CfnFramework_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnFramework_IsCfnResource

func CfnFramework_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnFramework_IsConstruct

func CfnFramework_IsConstruct(x interface{}) *bool

Return whether the given object is a Construct. Experimental.

func CfnReportPlan_CFN_RESOURCE_TYPE_NAME

func CfnReportPlan_CFN_RESOURCE_TYPE_NAME() *string

func CfnReportPlan_IsCfnElement

func CfnReportPlan_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnReportPlan_IsCfnResource

func CfnReportPlan_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnReportPlan_IsConstruct

func CfnReportPlan_IsConstruct(x interface{}) *bool

Return whether the given object is a Construct. Experimental.

func NewBackupPlanRule_Override

func NewBackupPlanRule_Override(b BackupPlanRule, props *BackupPlanRuleProps)

Experimental.

func NewBackupPlan_Override

func NewBackupPlan_Override(b BackupPlan, scope constructs.Construct, id *string, props *BackupPlanProps)

Experimental.

func NewBackupResource_Override

func NewBackupResource_Override(b BackupResource, resource *string, tagCondition *TagCondition, construct constructs.Construct)

Experimental.

func NewBackupSelection_Override

func NewBackupSelection_Override(b BackupSelection, scope constructs.Construct, id *string, props *BackupSelectionProps)

Experimental.

func NewBackupVault_Override

func NewBackupVault_Override(b BackupVault, scope constructs.Construct, id *string, props *BackupVaultProps)

Experimental.

func NewCfnBackupPlan_Override

func NewCfnBackupPlan_Override(c CfnBackupPlan, scope awscdk.Construct, id *string, props *CfnBackupPlanProps)

Create a new `AWS::Backup::BackupPlan`.

func NewCfnBackupSelection_Override

func NewCfnBackupSelection_Override(c CfnBackupSelection, scope awscdk.Construct, id *string, props *CfnBackupSelectionProps)

Create a new `AWS::Backup::BackupSelection`.

func NewCfnBackupVault_Override

func NewCfnBackupVault_Override(c CfnBackupVault, scope awscdk.Construct, id *string, props *CfnBackupVaultProps)

Create a new `AWS::Backup::BackupVault`.

func NewCfnFramework_Override

func NewCfnFramework_Override(c CfnFramework, scope awscdk.Construct, id *string, props *CfnFrameworkProps)

Create a new `AWS::Backup::Framework`.

func NewCfnReportPlan_Override

func NewCfnReportPlan_Override(c CfnReportPlan, scope awscdk.Construct, id *string, props *CfnReportPlanProps)

Create a new `AWS::Backup::ReportPlan`.

Types

type BackupPlan

type BackupPlan interface {
	awscdk.Resource
	IBackupPlan
	BackupPlanArn() *string
	BackupPlanId() *string
	BackupVault() IBackupVault
	Env() *awscdk.ResourceEnvironment
	Node() awscdk.ConstructNode
	PhysicalName() *string
	Stack() awscdk.Stack
	VersionId() *string
	AddRule(rule BackupPlanRule)
	AddSelection(id *string, options *BackupSelectionOptions) BackupSelection
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	OnPrepare()
	OnSynthesize(session constructs.ISynthesisSession)
	OnValidate() *[]*string
	Prepare()
	Synthesize(session awscdk.ISynthesisSession)
	ToString() *string
	Validate() *[]*string
}

A backup plan.

TODO: EXAMPLE

Experimental.

func BackupPlan_Daily35DayRetention

func BackupPlan_Daily35DayRetention(scope constructs.Construct, id *string, backupVault IBackupVault) BackupPlan

Daily with 35 day retention. Experimental.

func BackupPlan_DailyMonthly1YearRetention

func BackupPlan_DailyMonthly1YearRetention(scope constructs.Construct, id *string, backupVault IBackupVault) BackupPlan

Daily and monthly with 1 year retention. Experimental.

func BackupPlan_DailyWeeklyMonthly5YearRetention

func BackupPlan_DailyWeeklyMonthly5YearRetention(scope constructs.Construct, id *string, backupVault IBackupVault) BackupPlan

Daily, weekly and monthly with 5 year retention. Experimental.

func BackupPlan_DailyWeeklyMonthly7YearRetention

func BackupPlan_DailyWeeklyMonthly7YearRetention(scope constructs.Construct, id *string, backupVault IBackupVault) BackupPlan

Daily, weekly and monthly with 7 year retention. Experimental.

func NewBackupPlan

func NewBackupPlan(scope constructs.Construct, id *string, props *BackupPlanProps) BackupPlan

Experimental.

type BackupPlanProps

type BackupPlanProps struct {
	// The display name of the backup plan.
	// Experimental.
	BackupPlanName *string `json:"backupPlanName" yaml:"backupPlanName"`
	// Rules for the backup plan.
	//
	// Use `addRule()` to add rules after
	// instantiation.
	// Experimental.
	BackupPlanRules *[]BackupPlanRule `json:"backupPlanRules" yaml:"backupPlanRules"`
	// The backup vault where backups are stored.
	// Experimental.
	BackupVault IBackupVault `json:"backupVault" yaml:"backupVault"`
	// Enable Windows VSS backup.
	// See: https://docs.aws.amazon.com/aws-backup/latest/devguide/windows-backups.html
	//
	// Experimental.
	WindowsVss *bool `json:"windowsVss" yaml:"windowsVss"`
}

Properties for a BackupPlan.

TODO: EXAMPLE

Experimental.

type BackupPlanRule

type BackupPlanRule interface {
	Props() *BackupPlanRuleProps
}

A backup plan rule.

TODO: EXAMPLE

Experimental.

func BackupPlanRule_Daily

func BackupPlanRule_Daily(backupVault IBackupVault) BackupPlanRule

Daily with 35 days retention. Experimental.

func BackupPlanRule_Monthly1Year

func BackupPlanRule_Monthly1Year(backupVault IBackupVault) BackupPlanRule

Monthly 1 year retention, move to cold storage after 1 month. Experimental.

func BackupPlanRule_Monthly5Year

func BackupPlanRule_Monthly5Year(backupVault IBackupVault) BackupPlanRule

Monthly 5 year retention, move to cold storage after 3 months. Experimental.

func BackupPlanRule_Monthly7Year

func BackupPlanRule_Monthly7Year(backupVault IBackupVault) BackupPlanRule

Monthly 7 year retention, move to cold storage after 3 months. Experimental.

func BackupPlanRule_Weekly

func BackupPlanRule_Weekly(backupVault IBackupVault) BackupPlanRule

Weekly with 3 months retention. Experimental.

func NewBackupPlanRule

func NewBackupPlanRule(props *BackupPlanRuleProps) BackupPlanRule

Experimental.

type BackupPlanRuleProps

type BackupPlanRuleProps struct {
	// The backup vault where backups are.
	// Experimental.
	BackupVault IBackupVault `json:"backupVault" yaml:"backupVault"`
	// The duration after a backup job is successfully started before it must be completed or it is canceled by AWS Backup.
	// Experimental.
	CompletionWindow awscdk.Duration `json:"completionWindow" yaml:"completionWindow"`
	// Specifies the duration after creation that a recovery point is deleted.
	//
	// Must be greater than `moveToColdStorageAfter`.
	// Experimental.
	DeleteAfter awscdk.Duration `json:"deleteAfter" yaml:"deleteAfter"`
	// Enables continuous backup and point-in-time restores (PITR).
	//
	// Property `deleteAfter` defines the retention period for the backup. It is mandatory if PITR is enabled.
	// If no value is specified, the retention period is set to 35 days which is the maximum retention period supported by PITR.
	//
	// Property `moveToColdStorageAfter` must not be specified because PITR does not support this option.
	// Experimental.
	EnableContinuousBackup *bool `json:"enableContinuousBackup" yaml:"enableContinuousBackup"`
	// Specifies the duration after creation that a recovery point is moved to cold storage.
	// Experimental.
	MoveToColdStorageAfter awscdk.Duration `json:"moveToColdStorageAfter" yaml:"moveToColdStorageAfter"`
	// A display name for the backup rule.
	// Experimental.
	RuleName *string `json:"ruleName" yaml:"ruleName"`
	// A CRON expression specifying when AWS Backup initiates a backup job.
	// Experimental.
	ScheduleExpression awsevents.Schedule `json:"scheduleExpression" yaml:"scheduleExpression"`
	// The duration after a backup is scheduled before a job is canceled if it doesn't start successfully.
	// Experimental.
	StartWindow awscdk.Duration `json:"startWindow" yaml:"startWindow"`
}

Properties for a BackupPlanRule.

TODO: EXAMPLE

Experimental.

type BackupResource

type BackupResource interface {
	Construct() awscdk.Construct
	Resource() *string
	TagCondition() *TagCondition
}

A resource to backup.

TODO: EXAMPLE

Experimental.

func BackupResource_FromArn

func BackupResource_FromArn(arn *string) BackupResource

A list of ARNs or match patterns such as `arn:aws:ec2:us-east-1:123456789012:volume/*`. Experimental.

func BackupResource_FromConstruct

func BackupResource_FromConstruct(construct constructs.Construct) BackupResource

Adds all supported resources in a construct. Experimental.

func BackupResource_FromDynamoDbTable

func BackupResource_FromDynamoDbTable(table awsdynamodb.ITable) BackupResource

A DynamoDB table. Experimental.

func BackupResource_FromEc2Instance

func BackupResource_FromEc2Instance(instance awsec2.IInstance) BackupResource

An EC2 instance. Experimental.

func BackupResource_FromEfsFileSystem

func BackupResource_FromEfsFileSystem(fileSystem awsefs.IFileSystem) BackupResource

An EFS file system. Experimental.

func BackupResource_FromRdsDatabaseInstance

func BackupResource_FromRdsDatabaseInstance(instance awsrds.IDatabaseInstance) BackupResource

A RDS database instance. Experimental.

func BackupResource_FromTag

func BackupResource_FromTag(key *string, value *string, operation TagOperation) BackupResource

A tag condition. Experimental.

func NewBackupResource

func NewBackupResource(resource *string, tagCondition *TagCondition, construct constructs.Construct) BackupResource

Experimental.

type BackupSelection

type BackupSelection interface {
	awscdk.Resource
	awsiam.IGrantable
	BackupPlanId() *string
	Env() *awscdk.ResourceEnvironment
	GrantPrincipal() awsiam.IPrincipal
	Node() awscdk.ConstructNode
	PhysicalName() *string
	SelectionId() *string
	Stack() awscdk.Stack
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	OnPrepare()
	OnSynthesize(session constructs.ISynthesisSession)
	OnValidate() *[]*string
	Prepare()
	Synthesize(session awscdk.ISynthesisSession)
	ToString() *string
	Validate() *[]*string
}

A backup selection.

TODO: EXAMPLE

Experimental.

func NewBackupSelection

func NewBackupSelection(scope constructs.Construct, id *string, props *BackupSelectionProps) BackupSelection

Experimental.

type BackupSelectionOptions

type BackupSelectionOptions struct {
	// The resources to backup.
	//
	// Use the helper static methods defined on `BackupResource`.
	// Experimental.
	Resources *[]BackupResource `json:"resources" yaml:"resources"`
	// Whether to automatically give restores permissions to the role that AWS Backup uses.
	//
	// If `true`, the `AWSBackupServiceRolePolicyForRestores` managed
	// policy will be attached to the role.
	// Experimental.
	AllowRestores *bool `json:"allowRestores" yaml:"allowRestores"`
	// The name for this selection.
	// Experimental.
	BackupSelectionName *string `json:"backupSelectionName" yaml:"backupSelectionName"`
	// The role that AWS Backup uses to authenticate when backuping or restoring the resources.
	//
	// The `AWSBackupServiceRolePolicyForBackup` managed policy
	// will be attached to this role.
	// Experimental.
	Role awsiam.IRole `json:"role" yaml:"role"`
}

Options for a BackupSelection.

TODO: EXAMPLE

Experimental.

type BackupSelectionProps

type BackupSelectionProps struct {
	// The resources to backup.
	//
	// Use the helper static methods defined on `BackupResource`.
	// Experimental.
	Resources *[]BackupResource `json:"resources" yaml:"resources"`
	// Whether to automatically give restores permissions to the role that AWS Backup uses.
	//
	// If `true`, the `AWSBackupServiceRolePolicyForRestores` managed
	// policy will be attached to the role.
	// Experimental.
	AllowRestores *bool `json:"allowRestores" yaml:"allowRestores"`
	// The name for this selection.
	// Experimental.
	BackupSelectionName *string `json:"backupSelectionName" yaml:"backupSelectionName"`
	// The role that AWS Backup uses to authenticate when backuping or restoring the resources.
	//
	// The `AWSBackupServiceRolePolicyForBackup` managed policy
	// will be attached to this role.
	// Experimental.
	Role awsiam.IRole `json:"role" yaml:"role"`
	// The backup plan for this selection.
	// Experimental.
	BackupPlan IBackupPlan `json:"backupPlan" yaml:"backupPlan"`
}

Properties for a BackupSelection.

TODO: EXAMPLE

Experimental.

type BackupVault

type BackupVault interface {
	awscdk.Resource
	IBackupVault
	BackupVaultArn() *string
	BackupVaultName() *string
	Env() *awscdk.ResourceEnvironment
	Node() awscdk.ConstructNode
	PhysicalName() *string
	Stack() awscdk.Stack
	AddToAccessPolicy(statement awsiam.PolicyStatement)
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	BlockRecoveryPointDeletion()
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	Grant(grantee awsiam.IGrantable, actions ...*string) awsiam.Grant
	OnPrepare()
	OnSynthesize(session constructs.ISynthesisSession)
	OnValidate() *[]*string
	Prepare()
	Synthesize(session awscdk.ISynthesisSession)
	ToString() *string
	Validate() *[]*string
}

A backup vault.

TODO: EXAMPLE

Experimental.

func NewBackupVault

func NewBackupVault(scope constructs.Construct, id *string, props *BackupVaultProps) BackupVault

Experimental.

type BackupVaultEvents

type BackupVaultEvents string

Backup vault events. Experimental.

const (
	BackupVaultEvents_BACKUP_JOB_STARTED      BackupVaultEvents = "BACKUP_JOB_STARTED"
	BackupVaultEvents_BACKUP_JOB_COMPLETED    BackupVaultEvents = "BACKUP_JOB_COMPLETED"
	BackupVaultEvents_BACKUP_JOB_SUCCESSFUL   BackupVaultEvents = "BACKUP_JOB_SUCCESSFUL"
	BackupVaultEvents_BACKUP_JOB_FAILED       BackupVaultEvents = "BACKUP_JOB_FAILED"
	BackupVaultEvents_BACKUP_JOB_EXPIRED      BackupVaultEvents = "BACKUP_JOB_EXPIRED"
	BackupVaultEvents_RESTORE_JOB_STARTED     BackupVaultEvents = "RESTORE_JOB_STARTED"
	BackupVaultEvents_RESTORE_JOB_COMPLETED   BackupVaultEvents = "RESTORE_JOB_COMPLETED"
	BackupVaultEvents_RESTORE_JOB_SUCCESSFUL  BackupVaultEvents = "RESTORE_JOB_SUCCESSFUL"
	BackupVaultEvents_RESTORE_JOB_FAILED      BackupVaultEvents = "RESTORE_JOB_FAILED"
	BackupVaultEvents_COPY_JOB_STARTED        BackupVaultEvents = "COPY_JOB_STARTED"
	BackupVaultEvents_COPY_JOB_SUCCESSFUL     BackupVaultEvents = "COPY_JOB_SUCCESSFUL"
	BackupVaultEvents_COPY_JOB_FAILED         BackupVaultEvents = "COPY_JOB_FAILED"
	BackupVaultEvents_RECOVERY_POINT_MODIFIED BackupVaultEvents = "RECOVERY_POINT_MODIFIED"
	BackupVaultEvents_BACKUP_PLAN_CREATED     BackupVaultEvents = "BACKUP_PLAN_CREATED"
	BackupVaultEvents_BACKUP_PLAN_MODIFIED    BackupVaultEvents = "BACKUP_PLAN_MODIFIED"
)

type BackupVaultProps

type BackupVaultProps struct {
	// A resource-based policy that is used to manage access permissions on the backup vault.
	// Experimental.
	AccessPolicy awsiam.PolicyDocument `json:"accessPolicy" yaml:"accessPolicy"`
	// The name of a logical container where backups are stored.
	//
	// Backup vaults
	// are identified by names that are unique to the account used to create
	// them and the AWS Region where they are created.
	// Experimental.
	BackupVaultName *string `json:"backupVaultName" yaml:"backupVaultName"`
	// Whether to add statements to the vault access policy that prevents anyone from deleting a recovery point.
	// Experimental.
	BlockRecoveryPointDeletion *bool `json:"blockRecoveryPointDeletion" yaml:"blockRecoveryPointDeletion"`
	// The server-side encryption key to use to protect your backups.
	// Experimental.
	EncryptionKey awskms.IKey `json:"encryptionKey" yaml:"encryptionKey"`
	// The vault events to send.
	// See: https://docs.aws.amazon.com/aws-backup/latest/devguide/sns-notifications.html
	//
	// Experimental.
	NotificationEvents *[]BackupVaultEvents `json:"notificationEvents" yaml:"notificationEvents"`
	// A SNS topic to send vault events to.
	// See: https://docs.aws.amazon.com/aws-backup/latest/devguide/sns-notifications.html
	//
	// Experimental.
	NotificationTopic awssns.ITopic `json:"notificationTopic" yaml:"notificationTopic"`
	// The removal policy to apply to the vault.
	//
	// Note that removing a vault
	// that contains recovery points will fail.
	// Experimental.
	RemovalPolicy awscdk.RemovalPolicy `json:"removalPolicy" yaml:"removalPolicy"`
}

Properties for a BackupVault.

TODO: EXAMPLE

Experimental.

type CfnBackupPlan

type CfnBackupPlan interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrBackupPlanArn() *string
	AttrBackupPlanId() *string
	AttrVersionId() *string
	BackupPlan() interface{}
	SetBackupPlan(val interface{})
	BackupPlanTags() interface{}
	SetBackupPlanTags(val interface{})
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	LogicalId() *string
	Node() awscdk.ConstructNode
	Ref() *string
	Stack() awscdk.Stack
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OnPrepare()
	OnSynthesize(session constructs.ISynthesisSession)
	OnValidate() *[]*string
	OverrideLogicalId(newLogicalId *string)
	Prepare()
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	Synthesize(session awscdk.ISynthesisSession)
	ToString() *string
	Validate() *[]*string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::Backup::BackupPlan`.

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

TODO: EXAMPLE

func NewCfnBackupPlan

func NewCfnBackupPlan(scope awscdk.Construct, id *string, props *CfnBackupPlanProps) CfnBackupPlan

Create a new `AWS::Backup::BackupPlan`.

type CfnBackupPlanProps

type CfnBackupPlanProps struct {
	// Uniquely identifies the backup plan to be associated with the selection of resources.
	BackupPlan interface{} `json:"backupPlan" yaml:"backupPlan"`
	// To help organize your resources, you can assign your own metadata to the resources that you create.
	//
	// Each tag is a key-value pair. The specified tags are assigned to all backups created with this plan.
	BackupPlanTags interface{} `json:"backupPlanTags" yaml:"backupPlanTags"`
}

Properties for defining a `CfnBackupPlan`.

TODO: EXAMPLE

type CfnBackupPlan_AdvancedBackupSettingResourceTypeProperty

type CfnBackupPlan_AdvancedBackupSettingResourceTypeProperty struct {
	// The backup option for the resource.
	//
	// Each option is a key-value pair.
	BackupOptions interface{} `json:"backupOptions" yaml:"backupOptions"`
	// The name of a resource type.
	//
	// The only supported resource type is EC2.
	ResourceType *string `json:"resourceType" yaml:"resourceType"`
}

Specifies an object containing resource type and backup options.

This is only supported for Windows VSS backups.

TODO: EXAMPLE

type CfnBackupPlan_BackupPlanResourceTypeProperty

type CfnBackupPlan_BackupPlanResourceTypeProperty struct {
	// The display name of a backup plan.
	BackupPlanName *string `json:"backupPlanName" yaml:"backupPlanName"`
	// An array of `BackupRule` objects, each of which specifies a scheduled task that is used to back up a selection of resources.
	BackupPlanRule interface{} `json:"backupPlanRule" yaml:"backupPlanRule"`
	// A list of backup options for each resource type.
	AdvancedBackupSettings interface{} `json:"advancedBackupSettings" yaml:"advancedBackupSettings"`
}

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

TODO: EXAMPLE

type CfnBackupPlan_BackupRuleResourceTypeProperty

type CfnBackupPlan_BackupRuleResourceTypeProperty struct {
	// A display name for a backup rule.
	RuleName *string `json:"ruleName" yaml:"ruleName"`
	// The name of a logical container where backups are stored.
	//
	// Backup vaults are identified by names that are unique to the account used to create them and the AWS Region where they are created. They consist of letters, numbers, and hyphens.
	TargetBackupVault *string `json:"targetBackupVault" yaml:"targetBackupVault"`
	// A value in minutes after a backup job is successfully started before it must be completed or it is canceled by AWS Backup .
	CompletionWindowMinutes *float64 `json:"completionWindowMinutes" yaml:"completionWindowMinutes"`
	// An array of CopyAction objects, which contains the details of the copy operation.
	CopyActions interface{} `json:"copyActions" yaml:"copyActions"`
	// Enables continuous backup and point-in-time restores (PITR).
	EnableContinuousBackup interface{} `json:"enableContinuousBackup" yaml:"enableContinuousBackup"`
	// The lifecycle defines when a protected resource is transitioned to cold storage and when it expires.
	//
	// AWS Backup transitions and expires backups automatically according to the lifecycle that you define.
	Lifecycle interface{} `json:"lifecycle" yaml:"lifecycle"`
	// To help organize your resources, you can assign your own metadata to the resources that you create.
	//
	// Each tag is a key-value pair.
	RecoveryPointTags interface{} `json:"recoveryPointTags" yaml:"recoveryPointTags"`
	// A CRON expression specifying when AWS Backup initiates a backup job.
	ScheduleExpression *string `json:"scheduleExpression" yaml:"scheduleExpression"`
	// An optional value that specifies a period of time in minutes after a backup is scheduled before a job is canceled if it doesn't start successfully.
	StartWindowMinutes *float64 `json:"startWindowMinutes" yaml:"startWindowMinutes"`
}

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

TODO: EXAMPLE

type CfnBackupPlan_CopyActionResourceTypeProperty

type CfnBackupPlan_CopyActionResourceTypeProperty struct {
	// An Amazon Resource Name (ARN) that uniquely identifies the destination backup vault for the copied backup.
	//
	// For example, `arn:aws:backup:us-east-1:123456789012:vault:aBackupVault.`
	DestinationBackupVaultArn *string `json:"destinationBackupVaultArn" yaml:"destinationBackupVaultArn"`
	// Defines when a protected resource is transitioned to cold storage and when it expires.
	//
	// AWS Backup transitions and expires backups automatically according to the lifecycle that you define. If you do not specify a lifecycle, AWS Backup applies the lifecycle policy of the source backup to the destination backup.
	//
	// Backups transitioned to cold storage must be stored in cold storage for a minimum of 90 days.
	Lifecycle interface{} `json:"lifecycle" yaml:"lifecycle"`
}

Copies backups created by a backup rule to another vault.

TODO: EXAMPLE

type CfnBackupPlan_LifecycleResourceTypeProperty

type CfnBackupPlan_LifecycleResourceTypeProperty struct {
	// Specifies the number of days after creation that a recovery point is deleted.
	//
	// Must be greater than `MoveToColdStorageAfterDays` .
	DeleteAfterDays *float64 `json:"deleteAfterDays" yaml:"deleteAfterDays"`
	// Specifies the number of days after creation that a recovery point is moved to cold storage.
	MoveToColdStorageAfterDays *float64 `json:"moveToColdStorageAfterDays" yaml:"moveToColdStorageAfterDays"`
}

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

TODO: EXAMPLE

type CfnBackupSelection

type CfnBackupSelection interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrBackupPlanId() *string
	AttrId() *string
	AttrSelectionId() *string
	BackupPlanId() *string
	SetBackupPlanId(val *string)
	BackupSelection() interface{}
	SetBackupSelection(val interface{})
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	LogicalId() *string
	Node() awscdk.ConstructNode
	Ref() *string
	Stack() awscdk.Stack
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OnPrepare()
	OnSynthesize(session constructs.ISynthesisSession)
	OnValidate() *[]*string
	OverrideLogicalId(newLogicalId *string)
	Prepare()
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	Synthesize(session awscdk.ISynthesisSession)
	ToString() *string
	Validate() *[]*string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::Backup::BackupSelection`.

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

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

TODO: EXAMPLE

func NewCfnBackupSelection

func NewCfnBackupSelection(scope awscdk.Construct, id *string, props *CfnBackupSelectionProps) CfnBackupSelection

Create a new `AWS::Backup::BackupSelection`.

type CfnBackupSelectionProps

type CfnBackupSelectionProps struct {
	// Uniquely identifies a backup plan.
	BackupPlanId *string `json:"backupPlanId" yaml:"backupPlanId"`
	// Specifies the body of a request to assign a set of resources to a backup plan.
	//
	// It includes an array of resources, an optional array of patterns to exclude resources, an optional role to provide access to the AWS service the resource belongs to, and an optional array of tags used to identify a set of resources.
	BackupSelection interface{} `json:"backupSelection" yaml:"backupSelection"`
}

Properties for defining a `CfnBackupSelection`.

TODO: EXAMPLE

type CfnBackupSelection_BackupSelectionResourceTypeProperty

type CfnBackupSelection_BackupSelectionResourceTypeProperty struct {
	// The ARN of the IAM role that AWS Backup uses to authenticate when backing up the target resource;
	//
	// for example, `arn:aws:iam::123456789012:role/S3Access` .
	IamRoleArn *string `json:"iamRoleArn" yaml:"iamRoleArn"`
	// The display name of a resource selection document.
	SelectionName *string `json:"selectionName" yaml:"selectionName"`
	// A list of conditions that you define to assign resources to your backup plans using tags.
	//
	// For example, `"StringEquals": {"Department": "accounting"` . Condition operators are case sensitive.
	//
	// `Conditions` differs from `ListOfTags` as follows:
	//
	// - When you specify more than one condition, you only assign the resources that match ALL conditions (using AND logic).
	// - `Conditions` supports `StringEquals` , `StringLike` , `StringNotEquals` , and `StringNotLike` . `ListOfTags` only supports `StringEquals` .
	Conditions interface{} `json:"conditions" yaml:"conditions"`
	// An array of conditions used to specify a set of resources to assign to a backup plan;
	//
	// for example, `"STRINGEQUALS": {"Department":"accounting"` .
	ListOfTags interface{} `json:"listOfTags" yaml:"listOfTags"`
	// A list of Amazon Resource Names (ARNs) to exclude from a backup plan.
	//
	// The maximum number of ARNs is 500 without wildcards, or 30 ARNs with wildcards.
	//
	// If you need to exclude many resources from a backup plan, consider a different resource selection strategy, such as assigning only one or a few resource types or refining your resource selection using tags.
	NotResources *[]*string `json:"notResources" yaml:"notResources"`
	// An array of strings that contain Amazon Resource Names (ARNs) of resources to assign to a backup plan.
	Resources *[]*string `json:"resources" yaml:"resources"`
}

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

TODO: EXAMPLE

type CfnBackupSelection_ConditionResourceTypeProperty

type CfnBackupSelection_ConditionResourceTypeProperty struct {
	// The key in a key-value pair.
	//
	// For example, in `"Department": "accounting"` , `"Department"` is the key.
	ConditionKey *string `json:"conditionKey" yaml:"conditionKey"`
	// An operation, such as `STRINGEQUALS` , that is applied to a key-value pair used to filter resources in a selection.
	ConditionType *string `json:"conditionType" yaml:"conditionType"`
	// The value in a key-value pair.
	//
	// For example, in `"Department": "accounting"` , `"accounting"` is the value.
	ConditionValue *string `json:"conditionValue" yaml:"conditionValue"`
}

Specifies an object that contains an array of triplets made up of a condition type (such as `STRINGEQUALS` ), a key, and a value.

Conditions are used to filter resources in a selection that is assigned to a backup plan.

TODO: EXAMPLE

type CfnBackupVault

type CfnBackupVault interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AccessPolicy() interface{}
	SetAccessPolicy(val interface{})
	AttrBackupVaultArn() *string
	AttrBackupVaultName() *string
	BackupVaultName() *string
	SetBackupVaultName(val *string)
	BackupVaultTags() interface{}
	SetBackupVaultTags(val interface{})
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	EncryptionKeyArn() *string
	SetEncryptionKeyArn(val *string)
	LockConfiguration() interface{}
	SetLockConfiguration(val interface{})
	LogicalId() *string
	Node() awscdk.ConstructNode
	Notifications() interface{}
	SetNotifications(val interface{})
	Ref() *string
	Stack() awscdk.Stack
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OnPrepare()
	OnSynthesize(session constructs.ISynthesisSession)
	OnValidate() *[]*string
	OverrideLogicalId(newLogicalId *string)
	Prepare()
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	Synthesize(session awscdk.ISynthesisSession)
	ToString() *string
	Validate() *[]*string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::Backup::BackupVault`.

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

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

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

TODO: EXAMPLE

func NewCfnBackupVault

func NewCfnBackupVault(scope awscdk.Construct, id *string, props *CfnBackupVaultProps) CfnBackupVault

Create a new `AWS::Backup::BackupVault`.

type CfnBackupVaultProps

type CfnBackupVaultProps struct {
	// The name of a logical container where backups are stored.
	//
	// Backup vaults are identified by names that are unique to the account used to create them and the AWS Region where they are created. They consist of lowercase letters, numbers, and hyphens.
	BackupVaultName *string `json:"backupVaultName" yaml:"backupVaultName"`
	// A resource-based policy that is used to manage access permissions on the target backup vault.
	AccessPolicy interface{} `json:"accessPolicy" yaml:"accessPolicy"`
	// Metadata that you can assign to help organize the resources that you create.
	//
	// Each tag is a key-value pair.
	BackupVaultTags interface{} `json:"backupVaultTags" yaml:"backupVaultTags"`
	// The server-side encryption key that is used to protect your backups;
	//
	// for example, `arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab` .
	EncryptionKeyArn *string `json:"encryptionKeyArn" yaml:"encryptionKeyArn"`
	// Configuration for [AWS Backup Vault Lock](https://docs.aws.amazon.com/aws-backup/latest/devguide/vault-lock.html) .
	LockConfiguration interface{} `json:"lockConfiguration" yaml:"lockConfiguration"`
	// The SNS event notifications for the specified backup vault.
	Notifications interface{} `json:"notifications" yaml:"notifications"`
}

Properties for defining a `CfnBackupVault`.

TODO: EXAMPLE

type CfnBackupVault_LockConfigurationTypeProperty

type CfnBackupVault_LockConfigurationTypeProperty struct {
	// The AWS Backup Vault Lock configuration that specifies the minimum retention period that the vault retains its recovery points.
	//
	// This setting can be useful if, for example, your organization's policies require you to retain certain data for at least seven years (2555 days).
	//
	// If this parameter is not specified, Vault Lock will not enforce a minimum retention period.
	//
	// If this parameter is specified, any backup or copy job to the vault must have a lifecycle policy with a retention period equal to or longer than the minimum retention period. If the job's retention period is shorter than that minimum retention period, then the vault fails that backup or copy job, and you should either modify your lifecycle settings or use a different vault. Recovery points already saved in the vault prior to Vault Lock are not affected.
	MinRetentionDays *float64 `json:"minRetentionDays" yaml:"minRetentionDays"`
	// The AWS Backup Vault Lock configuration that specifies the number of days before the lock date.
	//
	// For example, setting `ChangeableForDays` to 30 on Jan. 1, 2022 at 8pm UTC will set the lock date to Jan. 31, 2022 at 8pm UTC.
	//
	// AWS Backup enforces a 72-hour cooling-off period before Vault Lock takes effect and becomes immutable. Therefore, you must set `ChangeableForDays` to 3 or greater.
	//
	// Before the lock date, you can delete Vault Lock from the vault using `DeleteBackupVaultLockConfiguration` or change the Vault Lock configuration using `PutBackupVaultLockConfiguration` . On and after the lock date, the Vault Lock becomes immutable and cannot be changed or deleted.
	//
	// If this parameter is not specified, you can delete Vault Lock from the vault using `DeleteBackupVaultLockConfiguration` or change the Vault Lock configuration using `PutBackupVaultLockConfiguration` at any time.
	ChangeableForDays *float64 `json:"changeableForDays" yaml:"changeableForDays"`
	// The AWS Backup Vault Lock configuration that specifies the maximum retention period that the vault retains its recovery points.
	//
	// This setting can be useful if, for example, your organization's policies require you to destroy certain data after retaining it for four years (1460 days).
	//
	// If this parameter is not included, Vault Lock does not enforce a maximum retention period on the recovery points in the vault. If this parameter is included without a value, Vault Lock will not enforce a maximum retention period.
	//
	// If this parameter is specified, any backup or copy job to the vault must have a lifecycle policy with a retention period equal to or shorter than the maximum retention period. If the job's retention period is longer than that maximum retention period, then the vault fails the backup or copy job, and you should either modify your lifecycle settings or use a different vault. Recovery points already saved in the vault prior to Vault Lock are not affected.
	MaxRetentionDays *float64 `json:"maxRetentionDays" yaml:"maxRetentionDays"`
}

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

TODO: EXAMPLE

type CfnBackupVault_NotificationObjectTypeProperty

type CfnBackupVault_NotificationObjectTypeProperty struct {
	// An array of events that indicate the status of jobs to back up resources to the backup vault.
	//
	// For valid events, see [BackupVaultEvents](https://docs.aws.amazon.com/aws-backup/latest/devguide/API_PutBackupVaultNotifications.html#API_PutBackupVaultNotifications_RequestSyntax) in the *AWS Backup API Guide* .
	BackupVaultEvents *[]*string `json:"backupVaultEvents" yaml:"backupVaultEvents"`
	// An ARN that uniquely identifies an Amazon Simple Notification Service (Amazon SNS) topic;
	//
	// for example, `arn:aws:sns:us-west-2:111122223333:MyTopic` .
	SnsTopicArn *string `json:"snsTopicArn" yaml:"snsTopicArn"`
}

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

TODO: EXAMPLE

type CfnFramework

type CfnFramework interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrCreationTime() awscdk.IResolvable
	AttrDeploymentStatus() *string
	AttrFrameworkArn() *string
	AttrFrameworkStatus() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	FrameworkControls() interface{}
	SetFrameworkControls(val interface{})
	FrameworkDescription() *string
	SetFrameworkDescription(val *string)
	FrameworkName() *string
	SetFrameworkName(val *string)
	FrameworkTags() interface{}
	SetFrameworkTags(val interface{})
	LogicalId() *string
	Node() awscdk.ConstructNode
	Ref() *string
	Stack() awscdk.Stack
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OnPrepare()
	OnSynthesize(session constructs.ISynthesisSession)
	OnValidate() *[]*string
	OverrideLogicalId(newLogicalId *string)
	Prepare()
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	Synthesize(session awscdk.ISynthesisSession)
	ToString() *string
	Validate() *[]*string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::Backup::Framework`.

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

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

TODO: EXAMPLE

func NewCfnFramework

func NewCfnFramework(scope awscdk.Construct, id *string, props *CfnFrameworkProps) CfnFramework

Create a new `AWS::Backup::Framework`.

type CfnFrameworkProps

type CfnFrameworkProps struct {
	// Contains detailed information about all of the controls of a framework.
	//
	// Each framework must contain at least one control.
	FrameworkControls interface{} `json:"frameworkControls" yaml:"frameworkControls"`
	// An optional description of the framework with a maximum 1,024 characters.
	FrameworkDescription *string `json:"frameworkDescription" yaml:"frameworkDescription"`
	// The unique name of a framework.
	//
	// This name is between 1 and 256 characters, starting with a letter, and consisting of letters (a-z, A-Z), numbers (0-9), and underscores (_).
	FrameworkName *string `json:"frameworkName" yaml:"frameworkName"`
	// A list of tags with which to tag your framework.
	FrameworkTags interface{} `json:"frameworkTags" yaml:"frameworkTags"`
}

Properties for defining a `CfnFramework`.

TODO: EXAMPLE

type CfnFramework_ControlInputParameterProperty

type CfnFramework_ControlInputParameterProperty struct {
	// The name of a parameter, for example, `BackupPlanFrequency` .
	ParameterName *string `json:"parameterName" yaml:"parameterName"`
	// The value of parameter, for example, `hourly` .
	ParameterValue *string `json:"parameterValue" yaml:"parameterValue"`
}

A list of parameters for a control.

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

TODO: EXAMPLE

type CfnFramework_FrameworkControlProperty

type CfnFramework_FrameworkControlProperty struct {
	// The name of a control.
	//
	// This name is between 1 and 256 characters.
	ControlName *string `json:"controlName" yaml:"controlName"`
	// A list of `ParameterName` and `ParameterValue` pairs.
	ControlInputParameters interface{} `json:"controlInputParameters" yaml:"controlInputParameters"`
	// The scope of a control.
	//
	// The control scope defines what the control will evaluate. Three examples of control scopes are: a specific backup plan, all backup plans with a specific tag, or all backup plans. For more information, see `ControlScope` .
	ControlScope interface{} `json:"controlScope" yaml:"controlScope"`
}

Contains detailed information about all of the controls of a framework.

Each framework must contain at least one control.

TODO: EXAMPLE

type CfnReportPlan

type CfnReportPlan interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrReportPlanArn() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	LogicalId() *string
	Node() awscdk.ConstructNode
	Ref() *string
	ReportDeliveryChannel() interface{}
	SetReportDeliveryChannel(val interface{})
	ReportPlanDescription() *string
	SetReportPlanDescription(val *string)
	ReportPlanName() *string
	SetReportPlanName(val *string)
	ReportPlanTags() interface{}
	SetReportPlanTags(val interface{})
	ReportSetting() interface{}
	SetReportSetting(val interface{})
	Stack() awscdk.Stack
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OnPrepare()
	OnSynthesize(session constructs.ISynthesisSession)
	OnValidate() *[]*string
	OverrideLogicalId(newLogicalId *string)
	Prepare()
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	Synthesize(session awscdk.ISynthesisSession)
	ToString() *string
	Validate() *[]*string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::Backup::ReportPlan`.

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

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

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

TODO: EXAMPLE

func NewCfnReportPlan

func NewCfnReportPlan(scope awscdk.Construct, id *string, props *CfnReportPlanProps) CfnReportPlan

Create a new `AWS::Backup::ReportPlan`.

type CfnReportPlanProps

type CfnReportPlanProps struct {
	// Contains information about where and how to deliver your reports, specifically your Amazon S3 bucket name, S3 key prefix, and the formats of your reports.
	ReportDeliveryChannel interface{} `json:"reportDeliveryChannel" yaml:"reportDeliveryChannel"`
	// Identifies the report template for the report. Reports are built using a report template. The report templates are:.
	//
	// `RESOURCE_COMPLIANCE_REPORT | CONTROL_COMPLIANCE_REPORT | BACKUP_JOB_REPORT | COPY_JOB_REPORT | RESTORE_JOB_REPORT`
	//
	// If the report template is `RESOURCE_COMPLIANCE_REPORT` or `CONTROL_COMPLIANCE_REPORT` , this API resource also describes the report coverage by AWS Regions and frameworks.
	ReportSetting interface{} `json:"reportSetting" yaml:"reportSetting"`
	// An optional description of the report plan with a maximum 1,024 characters.
	ReportPlanDescription *string `json:"reportPlanDescription" yaml:"reportPlanDescription"`
	// The unique name of the report plan.
	//
	// This name is between 1 and 256 characters starting with a letter, and consisting of letters (a-z, A-Z), numbers (0-9), and underscores (_).
	ReportPlanName *string `json:"reportPlanName" yaml:"reportPlanName"`
	// A list of tags to tag your report plan.
	ReportPlanTags interface{} `json:"reportPlanTags" yaml:"reportPlanTags"`
}

Properties for defining a `CfnReportPlan`.

TODO: EXAMPLE

type IBackupPlan

type IBackupPlan interface {
	awscdk.IResource
	// The identifier of the backup plan.
	// Experimental.
	BackupPlanId() *string
}

A backup plan. Experimental.

func BackupPlan_FromBackupPlanId

func BackupPlan_FromBackupPlanId(scope constructs.Construct, id *string, backupPlanId *string) IBackupPlan

Import an existing backup plan. Experimental.

type IBackupVault

type IBackupVault interface {
	awscdk.IResource
	// Grant the actions defined in actions to the given grantee on this backup vault.
	// Experimental.
	Grant(grantee awsiam.IGrantable, actions ...*string) awsiam.Grant
	// The ARN of the backup vault.
	// Experimental.
	BackupVaultArn() *string
	// The name of a logical container where backups are stored.
	// Experimental.
	BackupVaultName() *string
}

A backup vault. Experimental.

func BackupVault_FromBackupVaultArn

func BackupVault_FromBackupVaultArn(scope constructs.Construct, id *string, backupVaultArn *string) IBackupVault

Import an existing backup vault by arn. Experimental.

func BackupVault_FromBackupVaultName

func BackupVault_FromBackupVaultName(scope constructs.Construct, id *string, backupVaultName *string) IBackupVault

Import an existing backup vault by name. Experimental.

type TagCondition

type TagCondition struct {
	// The key in a key-value pair.
	//
	// For example, in `"ec2:ResourceTag/Department": "accounting"`,
	// `ec2:ResourceTag/Department` is the key.
	// Experimental.
	Key *string `json:"key" yaml:"key"`
	// The value in a key-value pair.
	//
	// For example, in `"ec2:ResourceTag/Department": "accounting"`,
	// `accounting` is the value.
	// Experimental.
	Value *string `json:"value" yaml:"value"`
	// An operation that is applied to a key-value pair used to filter resources in a selection.
	// Experimental.
	Operation TagOperation `json:"operation" yaml:"operation"`
}

A tag condition.

TODO: EXAMPLE

Experimental.

type TagOperation

type TagOperation string

An operation that is applied to a key-value pair. Experimental.

const (
	TagOperation_STRING_EQUALS TagOperation = "STRING_EQUALS"
	TagOperation_DUMMY         TagOperation = "DUMMY"
)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL