Class: AWSCDK::RDS::CredentialsBaseOptions
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::RDS::CredentialsBaseOptions
- Defined in:
- rds/credentials_base_options.rb
Overview
Base options for creating Credentials.
Direct Known Subclasses
Instance Attribute Summary collapse
-
#encryption_key ⇒ AWSCDK::KMS::IKey?
readonly
KMS encryption key to encrypt the generated secret.
-
#exclude_characters ⇒ String?
readonly
The characters to exclude from the generated password.
-
#replica_regions ⇒ Array<AWSCDK::SecretsManager::ReplicaRegion>?
readonly
A list of regions where to replicate this secret.
-
#secret_name ⇒ String?
readonly
The name of the secret.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(encryption_key: nil, exclude_characters: nil, replica_regions: nil, secret_name: nil) ⇒ CredentialsBaseOptions
constructor
A new instance of CredentialsBaseOptions.
- #to_jsii ⇒ Object
Constructor Details
#initialize(encryption_key: nil, exclude_characters: nil, replica_regions: nil, secret_name: nil) ⇒ CredentialsBaseOptions
Returns a new instance of CredentialsBaseOptions.
11 12 13 14 15 16 17 18 19 20 |
# File 'rds/credentials_base_options.rb', line 11 def initialize(encryption_key: nil, exclude_characters: nil, replica_regions: nil, secret_name: nil) @encryption_key = encryption_key Jsii::Type.check_type(@encryption_key, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfa21zLklLZXkifQ==")), "encryptionKey") unless @encryption_key.nil? @exclude_characters = exclude_characters Jsii::Type.check_type(@exclude_characters, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "excludeCharacters") unless @exclude_characters.nil? @replica_regions = replica_regions.is_a?(Array) ? replica_regions.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::SecretsManager::ReplicaRegion.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : replica_regions Jsii::Type.check_type(@replica_regions, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zZWNyZXRzbWFuYWdlci5SZXBsaWNhUmVnaW9uIn0sImtpbmQiOiJhcnJheSJ9fQ==")), "replicaRegions") unless @replica_regions.nil? @secret_name = secret_name Jsii::Type.check_type(@secret_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "secretName") unless @secret_name.nil? end |
Instance Attribute Details
#encryption_key ⇒ AWSCDK::KMS::IKey? (readonly)
Note:
Default: - default master key
KMS encryption key to encrypt the generated secret.
26 27 28 |
# File 'rds/credentials_base_options.rb', line 26 def encryption_key @encryption_key end |
#exclude_characters ⇒ String? (readonly)
Note:
Default: - the DatabaseSecret default exclude character set (" %+~`#$&*()|[]{}:;<>?!'/@\"\")
The characters to exclude from the generated password.
Has no effect if password has been provided.
33 34 35 |
# File 'rds/credentials_base_options.rb', line 33 def exclude_characters @exclude_characters end |
#replica_regions ⇒ Array<AWSCDK::SecretsManager::ReplicaRegion>? (readonly)
Note:
Default: - Secret is not replicated
A list of regions where to replicate this secret.
38 39 40 |
# File 'rds/credentials_base_options.rb', line 38 def replica_regions @replica_regions end |
#secret_name ⇒ String? (readonly)
Note:
Default: - A name is generated by CloudFormation.
The name of the secret.
43 44 45 |
# File 'rds/credentials_base_options.rb', line 43 def secret_name @secret_name end |
Class Method Details
.jsii_properties ⇒ Object
45 46 47 48 49 50 51 52 |
# File 'rds/credentials_base_options.rb', line 45 def self.jsii_properties { :encryption_key => "encryptionKey", :exclude_characters => "excludeCharacters", :replica_regions => "replicaRegions", :secret_name => "secretName", } end |
Instance Method Details
#to_jsii ⇒ Object
54 55 56 57 58 59 60 61 62 63 |
# File 'rds/credentials_base_options.rb', line 54 def to_jsii result = {} result.merge!({ "encryptionKey" => @encryption_key, "excludeCharacters" => @exclude_characters, "replicaRegions" => @replica_regions, "secretName" => @secret_name, }) result.compact end |