@Generated(value="jsii-pacmak/1.67.0 (build 2c027f5)", date="2022-09-19T20:26:37.726Z") @Stability(value=Stable) public class CfnDeliveryChannel extends CfnResource implements IInspectable
Specifies a delivery channel object to deliver configuration information to an Amazon S3 bucket and Amazon SNS topic.
Before you can create a delivery channel, you must create a configuration recorder. You can use this action to change the Amazon S3 bucket or an Amazon SNS topic of the existing delivery channel. To change the Amazon S3 bucket or an Amazon SNS topic, call this action and specify the changed values for the S3 bucket and the SNS topic. If you specify a different value for either the S3 bucket or the SNS topic, this action will keep the existing value for the parameter that is not changed.
In the China (Beijing) Region, when you call this action, the Amazon S3 bucket must also be in the China (Beijing) Region. In all the other regions, AWS Config supports cross-region and cross-account delivery channels.
You can have only one delivery channel per region per AWS account, and the delivery channel is required to use AWS Config .
AWS Config does not support the delivery channel to an Amazon S3 bucket bucket where object lock is enabled. For more information, see How S3 Object Lock works .
When you create the delivery channel, you can specify; how often AWS Config delivers configuration snapshots to your Amazon S3 bucket (for example, 24 hours), the S3 bucket to which AWS Config sends configuration snapshots and configuration history files, and the Amazon SNS topic to which AWS Config sends notifications about configuration changes, such as updated resources, AWS Config rule evaluations, and when AWS Config delivers the configuration snapshot to your S3 bucket. For more information, see Deliver Configuration Items in the AWS Config Developer Guide.
To enable AWS Config , you must create a configuration recorder and a delivery channel. If you want to create the resources separately, you must create a configuration recorder before you can create a delivery channel. AWS Config uses the configuration recorder to capture configuration changes to your resources. For more information, see AWS::Config::ConfigurationRecorder .
For more information, see Managing the Delivery Channel in the AWS Config Developer Guide.
Example:
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import software.amazon.awscdk.services.config.*;
CfnDeliveryChannel cfnDeliveryChannel = CfnDeliveryChannel.Builder.create(this, "MyCfnDeliveryChannel")
.s3BucketName("s3BucketName")
// the properties below are optional
.configSnapshotDeliveryProperties(ConfigSnapshotDeliveryPropertiesProperty.builder()
.deliveryFrequency("deliveryFrequency")
.build())
.name("name")
.s3KeyPrefix("s3KeyPrefix")
.s3KmsKeyArn("s3KmsKeyArn")
.snsTopicArn("snsTopicArn")
.build();
| Modifier and Type | Class and Description |
|---|---|
static class |
CfnDeliveryChannel.Builder
A fluent builder for
CfnDeliveryChannel. |
static interface |
CfnDeliveryChannel.ConfigSnapshotDeliveryPropertiesProperty
Provides options for how often AWS Config delivers configuration snapshots to the Amazon S3 bucket in your delivery channel.
|
software.amazon.jsii.JsiiObject.InitializationModeIInspectable.Jsii$Default, IInspectable.Jsii$Proxy| Modifier and Type | Field and Description |
|---|---|
static String |
CFN_RESOURCE_TYPE_NAME
The CloudFormation resource type name for this resource class.
|
| Modifier | Constructor and Description |
|---|---|
|
CfnDeliveryChannel(software.constructs.Construct scope,
String id,
CfnDeliveryChannelProps props)
Create a new `AWS::Config::DeliveryChannel`.
|
protected |
CfnDeliveryChannel(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) |
protected |
CfnDeliveryChannel(software.amazon.jsii.JsiiObjectRef objRef) |
| Modifier and Type | Method and Description |
|---|---|
protected Map<String,Object> |
getCfnProperties() |
Object |
getConfigSnapshotDeliveryProperties()
The options for how often AWS Config delivers configuration snapshots to the Amazon S3 bucket.
|
String |
getName()
A name for the delivery channel.
|
String |
getS3BucketName()
The name of the Amazon S3 bucket to which AWS Config delivers configuration snapshots and configuration history files.
|
String |
getS3KeyPrefix()
The prefix for the specified Amazon S3 bucket.
|
String |
getS3KmsKeyArn()
The Amazon Resource Name (ARN) of the AWS Key Management Service ( AWS KMS ) AWS KMS key (KMS key) used to encrypt objects delivered by AWS Config .
|
String |
getSnsTopicArn()
The Amazon Resource Name (ARN) of the Amazon SNS topic to which AWS Config sends notifications about configuration changes.
|
void |
inspect(TreeInspector inspector)
Examines the CloudFormation resource and discloses attributes.
|
protected Map<String,Object> |
renderProperties(Map<String,Object> props) |
void |
setConfigSnapshotDeliveryProperties(CfnDeliveryChannel.ConfigSnapshotDeliveryPropertiesProperty value)
The options for how often AWS Config delivers configuration snapshots to the Amazon S3 bucket.
|
void |
setConfigSnapshotDeliveryProperties(IResolvable value)
The options for how often AWS Config delivers configuration snapshots to the Amazon S3 bucket.
|
void |
setName(String value)
A name for the delivery channel.
|
void |
setS3BucketName(String value)
The name of the Amazon S3 bucket to which AWS Config delivers configuration snapshots and configuration history files.
|
void |
setS3KeyPrefix(String value)
The prefix for the specified Amazon S3 bucket.
|
void |
setS3KmsKeyArn(String value)
The Amazon Resource Name (ARN) of the AWS Key Management Service ( AWS KMS ) AWS KMS key (KMS key) used to encrypt objects delivered by AWS Config .
|
void |
setSnsTopicArn(String value)
The Amazon Resource Name (ARN) of the Amazon SNS topic to which AWS Config sends notifications about configuration changes.
|
addDeletionOverride, addDependsOn, addMetadata, addOverride, addPropertyDeletionOverride, addPropertyOverride, applyRemovalPolicy, applyRemovalPolicy, applyRemovalPolicy, getAtt, getCfnOptions, getCfnResourceType, getMetadata, getUpdatedProperites, getUpdatedProperties, isCfnResource, shouldSynthesize, toString, validatePropertiesgetRefgetCreationStack, getLogicalId, getStack, isCfnElement, overrideLogicalIdjsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSet@Stability(value=Stable) public static final String CFN_RESOURCE_TYPE_NAME
protected CfnDeliveryChannel(software.amazon.jsii.JsiiObjectRef objRef)
protected CfnDeliveryChannel(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
@Stability(value=Stable)
public CfnDeliveryChannel(@NotNull
software.constructs.Construct scope,
@NotNull
String id,
@NotNull
CfnDeliveryChannelProps props)
scope - - scope in which this resource is defined. This parameter is required.id - - scoped id of the resource. This parameter is required.props - - resource properties. This parameter is required.@Stability(value=Stable)
public void inspect(@NotNull
TreeInspector inspector)
inspect in interface IInspectableinspector - - tree inspector to collect and process attributes. This parameter is required.@Stability(value=Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String,Object> props)
renderProperties in class CfnResourceprops - This parameter is required.@Stability(value=Stable) @NotNull protected Map<String,Object> getCfnProperties()
getCfnProperties in class CfnResource@Stability(value=Stable) @NotNull public String getS3BucketName()
If you specify a bucket that belongs to another AWS account , that bucket must have policies that grant access permissions to AWS Config . For more information, see Permissions for the Amazon S3 Bucket in the AWS Config Developer Guide.
@Stability(value=Stable)
public void setS3BucketName(@NotNull
String value)
If you specify a bucket that belongs to another AWS account , that bucket must have policies that grant access permissions to AWS Config . For more information, see Permissions for the Amazon S3 Bucket in the AWS Config Developer Guide.
@Stability(value=Stable) @Nullable public Object getConfigSnapshotDeliveryProperties()
@Stability(value=Stable)
public void setConfigSnapshotDeliveryProperties(@Nullable
CfnDeliveryChannel.ConfigSnapshotDeliveryPropertiesProperty value)
@Stability(value=Stable)
public void setConfigSnapshotDeliveryProperties(@Nullable
IResolvable value)
@Stability(value=Stable) @Nullable public String getName()
If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the delivery channel name. For more information, see Name Type .
Updates are not supported. To change the name, you must run two separate updates. In the first update, delete this resource, and then recreate it with a new name in the second update.
@Stability(value=Stable)
public void setName(@Nullable
String value)
If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the delivery channel name. For more information, see Name Type .
Updates are not supported. To change the name, you must run two separate updates. In the first update, delete this resource, and then recreate it with a new name in the second update.
@Stability(value=Stable) @Nullable public String getS3KeyPrefix()
@Stability(value=Stable)
public void setS3KeyPrefix(@Nullable
String value)
@Stability(value=Stable) @Nullable public String getS3KmsKeyArn()
Must belong to the same Region as the destination S3 bucket.
@Stability(value=Stable)
public void setS3KmsKeyArn(@Nullable
String value)
Must belong to the same Region as the destination S3 bucket.
@Stability(value=Stable) @Nullable public String getSnsTopicArn()
If you choose a topic from another account, the topic must have policies that grant access permissions to AWS Config . For more information, see Permissions for the Amazon SNS Topic in the AWS Config Developer Guide.
@Stability(value=Stable)
public void setSnsTopicArn(@Nullable
String value)
If you choose a topic from another account, the topic must have policies that grant access permissions to AWS Config . For more information, see Permissions for the Amazon SNS Topic in the AWS Config Developer Guide.
Copyright © 2022. All rights reserved.