Class: AWSCDK::S3::CfnStorageLens::EncryptionProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
s3/cfn_storage_lens.rb

Overview

This resource contains the type of server-side encryption used to encrypt an Amazon S3 Storage Lens metrics export.

For valid values, see the StorageLensDataExportEncryption in the Amazon S3 API Reference .

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(ssekms: nil, sses3: nil) ⇒ EncryptionProperty

Returns a new instance of EncryptionProperty.

Parameters:

  • ssekms (AWSCDK::IResolvable, AWSCDK::S3::CfnStorageLens::SSEKMSProperty, nil) (defaults to: nil)

    Specifies the use of AWS Key Management Service keys (SSE-KMS) to encrypt the S3 Storage Lens metrics export file.

  • sses3 (Object, nil) (defaults to: nil)

    Specifies the use of an Amazon S3-managed key (SSE-S3) to encrypt the S3 Storage Lens metrics export file.



1058
1059
1060
1061
1062
1063
# File 's3/cfn_storage_lens.rb', line 1058

def initialize(ssekms: nil, sses3: nil)
  @ssekms = ssekms.is_a?(Hash) ? ::AWSCDK::S3::CfnStorageLens::SSEKMSProperty.new(**ssekms.transform_keys(&:to_sym)) : ssekms
  Jsii::Type.check_type(@ssekms, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zMy5DZm5TdG9yYWdlTGVucy5TU0VLTVNQcm9wZXJ0eSJ9XX19")), "ssekms") unless @ssekms.nil?
  @sses3 = sses3
  Jsii::Type.check_type(@sses3, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "sses3") unless @sses3.nil?
end

Instance Attribute Details

#ssekmsAWSCDK::IResolvable, ... (readonly)

Specifies the use of AWS Key Management Service keys (SSE-KMS) to encrypt the S3 Storage Lens metrics export file.



1069
1070
1071
# File 's3/cfn_storage_lens.rb', line 1069

def ssekms
  @ssekms
end

#sses3Object? (readonly)

Specifies the use of an Amazon S3-managed key (SSE-S3) to encrypt the S3 Storage Lens metrics export file.



1074
1075
1076
# File 's3/cfn_storage_lens.rb', line 1074

def sses3
  @sses3
end

Class Method Details

.jsii_propertiesObject



1076
1077
1078
1079
1080
1081
# File 's3/cfn_storage_lens.rb', line 1076

def self.jsii_properties
  {
    :ssekms => "ssekms",
    :sses3 => "sses3",
  }
end

Instance Method Details

#to_jsiiObject



1083
1084
1085
1086
1087
1088
1089
1090
# File 's3/cfn_storage_lens.rb', line 1083

def to_jsii
  result = {}
  result.merge!({
    "ssekms" => @ssekms,
    "sses3" => @sses3,
  })
  result.compact
end