Class: AWSCDK::KinesisFirehose::StreamEncryption

Inherits:
Jsii::Object
  • Object
show all
Defined in:
kinesis_firehose/stream_encryption.rb

Overview

Represents server-side encryption for an Amazon Firehose Delivery Stream.

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(*args) ⇒ StreamEncryption

Returns a new instance of StreamEncryption.

Raises:

  • (NoMethodError)


8
9
10
# File 'kinesis_firehose/stream_encryption.rb', line 8

def initialize(*args)
  raise NoMethodError, "aws-cdk-lib.aws_kinesisfirehose.StreamEncryption does not have a visible constructor; use the provided factory methods"
end

Class Method Details

.aws_owned_keyAWSCDK::KinesisFirehose::StreamEncryption

Configure server-side encryption using an AWS owned key.

Returns:

  • (AWSCDK::KinesisFirehose::StreamEncryption)


22
23
24
# File 'kinesis_firehose/stream_encryption.rb', line 22

def self.aws_owned_key()
  Jsii::Kernel.instance.call_static("aws-cdk-lib.aws_kinesisfirehose.StreamEncryption", "awsOwnedKey", [])
end

.customer_managed_key(encryption_key = nil) ⇒ AWSCDK::KinesisFirehose::StreamEncryption

Configure server-side encryption using customer managed keys.

Parameters:

  • encryption_key (AWSCDK::KMS::IKey, nil) (defaults to: nil)

    the KMS key for the delivery stream.

Returns:

  • (AWSCDK::KinesisFirehose::StreamEncryption)


30
31
32
33
# File 'kinesis_firehose/stream_encryption.rb', line 30

def self.customer_managed_key(encryption_key = nil)
  Jsii::Type.check_type(encryption_key, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfa21zLklLZXkifQ==")), "encryptionKey") unless encryption_key.nil?
  Jsii::Kernel.instance.call_static("aws-cdk-lib.aws_kinesisfirehose.StreamEncryption", "customerManagedKey", [encryption_key])
end

.jsii_overridable_methodsObject



12
13
14
15
16
17
# File 'kinesis_firehose/stream_encryption.rb', line 12

def self.jsii_overridable_methods
  {
    :type => { kind: :property, name: "type", is_optional: false },
    :encryption_key => { kind: :property, name: "encryptionKey", is_optional: true },
  }
end

.unencryptedAWSCDK::KinesisFirehose::StreamEncryption

No server-side encryption is configured.

Returns:

  • (AWSCDK::KinesisFirehose::StreamEncryption)


38
39
40
# File 'kinesis_firehose/stream_encryption.rb', line 38

def self.unencrypted()
  Jsii::Kernel.instance.call_static("aws-cdk-lib.aws_kinesisfirehose.StreamEncryption", "unencrypted", [])
end

Instance Method Details

#encryption_keyAWSCDK::KMS::IKey?

Optional KMS key used for customer managed encryption.

Returns:



52
53
54
# File 'kinesis_firehose/stream_encryption.rb', line 52

def encryption_key()
  jsii_get_property("encryptionKey")
end

#typeAWSCDK::KinesisFirehose::StreamEncryptionType

The type of server-side encryption for the Amazon Firehose delivery stream.



45
46
47
# File 'kinesis_firehose/stream_encryption.rb', line 45

def type()
  jsii_get_property("type")
end