Class: AWSCDK::Config::CfnDeliveryChannelProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::Config::CfnDeliveryChannelProps
- Defined in:
- config/cfn_delivery_channel_props.rb
Overview
Properties for defining a CfnDeliveryChannel.
Instance Attribute Summary collapse
-
#config_snapshot_delivery_properties ⇒ AWSCDK::IResolvable, ...
readonly
The options for how often AWS Config delivers configuration snapshots to the Amazon S3 bucket.
-
#name ⇒ String?
readonly
A name for the delivery channel.
-
#s3_bucket_name ⇒ String
readonly
The name of the Amazon S3 bucket to which AWS Config delivers configuration snapshots and configuration history files.
-
#s3_key_prefix ⇒ String?
readonly
The prefix for the specified Amazon S3 bucket.
-
#s3_kms_key_arn ⇒ String?
readonly
The Amazon Resource Name (ARN) of the AWS Key Management Service ( AWS ) AWS KMS key (KMS key) used to encrypt objects delivered by AWS Config .
-
#sns_topic_arn ⇒ String?
readonly
The Amazon Resource Name (ARN) of the Amazon SNS topic to which AWS Config sends notifications about configuration changes.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(s3_bucket_name:, config_snapshot_delivery_properties: nil, name: nil, s3_key_prefix: nil, s3_kms_key_arn: nil, sns_topic_arn: nil) ⇒ CfnDeliveryChannelProps
constructor
A new instance of CfnDeliveryChannelProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(s3_bucket_name:, config_snapshot_delivery_properties: nil, name: nil, s3_key_prefix: nil, s3_kms_key_arn: nil, sns_topic_arn: nil) ⇒ CfnDeliveryChannelProps
Returns a new instance of CfnDeliveryChannelProps.
15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'config/cfn_delivery_channel_props.rb', line 15 def initialize(s3_bucket_name:, config_snapshot_delivery_properties: nil, name: nil, s3_key_prefix: nil, s3_kms_key_arn: nil, sns_topic_arn: nil) @s3_bucket_name = s3_bucket_name Jsii::Type.check_type(@s3_bucket_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "s3BucketName") @config_snapshot_delivery_properties = config_snapshot_delivery_properties.is_a?(Hash) ? ::AWSCDK::Config::CfnDeliveryChannel::ConfigSnapshotDeliveryPropertiesProperty.new(**config_snapshot_delivery_properties.transform_keys(&:to_sym)) : config_snapshot_delivery_properties Jsii::Type.check_type(@config_snapshot_delivery_properties, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jb25maWcuQ2ZuRGVsaXZlcnlDaGFubmVsLkNvbmZpZ1NuYXBzaG90RGVsaXZlcnlQcm9wZXJ0aWVzUHJvcGVydHkifV19fQ==")), "configSnapshotDeliveryProperties") unless @config_snapshot_delivery_properties.nil? @name = name Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name") unless @name.nil? @s3_key_prefix = s3_key_prefix Jsii::Type.check_type(@s3_key_prefix, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "s3KeyPrefix") unless @s3_key_prefix.nil? @s3_kms_key_arn = s3_kms_key_arn Jsii::Type.check_type(@s3_kms_key_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "s3KmsKeyArn") unless @s3_kms_key_arn.nil? @sns_topic_arn = sns_topic_arn Jsii::Type.check_type(@sns_topic_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "snsTopicArn") unless @sns_topic_arn.nil? end |
Instance Attribute Details
#config_snapshot_delivery_properties ⇒ AWSCDK::IResolvable, ... (readonly)
The options for how often AWS Config delivers configuration snapshots to the Amazon S3 bucket.
41 42 43 |
# File 'config/cfn_delivery_channel_props.rb', line 41 def config_snapshot_delivery_properties @config_snapshot_delivery_properties end |
#name ⇒ String? (readonly)
A name for the delivery channel.
If you don't specify a name, 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.
50 51 52 |
# File 'config/cfn_delivery_channel_props.rb', line 50 def name @name end |
#s3_bucket_name ⇒ String (readonly)
The name of the Amazon S3 bucket to which AWS Config delivers configuration snapshots and configuration history files.
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 .
36 37 38 |
# File 'config/cfn_delivery_channel_props.rb', line 36 def s3_bucket_name @s3_bucket_name end |
#s3_key_prefix ⇒ String? (readonly)
The prefix for the specified Amazon S3 bucket.
55 56 57 |
# File 'config/cfn_delivery_channel_props.rb', line 55 def s3_key_prefix @s3_key_prefix end |
#s3_kms_key_arn ⇒ String? (readonly)
The Amazon Resource Name (ARN) of the AWS Key Management Service ( AWS ) AWS KMS key (KMS key) used to encrypt objects delivered by AWS Config .
Must belong to the same Region as the destination S3 bucket.
62 63 64 |
# File 'config/cfn_delivery_channel_props.rb', line 62 def s3_kms_key_arn @s3_kms_key_arn end |
#sns_topic_arn ⇒ String? (readonly)
The Amazon Resource Name (ARN) of the Amazon SNS topic to which AWS Config sends notifications about configuration changes.
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 .
69 70 71 |
# File 'config/cfn_delivery_channel_props.rb', line 69 def sns_topic_arn @sns_topic_arn end |
Class Method Details
.jsii_properties ⇒ Object
71 72 73 74 75 76 77 78 79 80 |
# File 'config/cfn_delivery_channel_props.rb', line 71 def self.jsii_properties { :s3_bucket_name => "s3BucketName", :config_snapshot_delivery_properties => "configSnapshotDeliveryProperties", :name => "name", :s3_key_prefix => "s3KeyPrefix", :s3_kms_key_arn => "s3KmsKeyArn", :sns_topic_arn => "snsTopicArn", } end |
Instance Method Details
#to_jsii ⇒ Object
82 83 84 85 86 87 88 89 90 91 92 93 |
# File 'config/cfn_delivery_channel_props.rb', line 82 def to_jsii result = {} result.merge!({ "s3BucketName" => @s3_bucket_name, "configSnapshotDeliveryProperties" => @config_snapshot_delivery_properties, "name" => @name, "s3KeyPrefix" => @s3_key_prefix, "s3KmsKeyArn" => @s3_kms_key_arn, "snsTopicArn" => @sns_topic_arn, }) result.compact end |