Class: AWSCDK::Greengrass::CfnResourceDefinition::SecretsManagerSecretResourceDataProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
greengrass/cfn_resource_definition.rb

Overview

Settings for a secret resource, which references a secret from AWS Secrets Manager .

AWS IoT Greengrass stores a local, encrypted copy of the secret on the Greengrass core, where it can be securely accessed by connectors and Lambda functions. For more information, see Deploy Secrets to the AWS IoT Greengrass Core in the Developer Guide .

In an CloudFormation template, SecretsManagerSecretResourceData can be used in the ResourceDataContainer property type.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(arn:, additional_staging_labels_to_download: nil) ⇒ SecretsManagerSecretResourceDataProperty

Returns a new instance of SecretsManagerSecretResourceDataProperty.

Parameters:

  • arn (String)

    The Amazon Resource Name (ARN) of the Secrets Manager secret to make available on the core.

  • additional_staging_labels_to_download (Array<String>, nil) (defaults to: nil)

    The staging labels whose values you want to make available on the core, in addition to AWSCURRENT .



1117
1118
1119
1120
1121
1122
# File 'greengrass/cfn_resource_definition.rb', line 1117

def initialize(arn:, additional_staging_labels_to_download: nil)
  @arn = arn
  Jsii::Type.check_type(@arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "arn")
  @additional_staging_labels_to_download = additional_staging_labels_to_download
  Jsii::Type.check_type(@additional_staging_labels_to_download, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "additionalStagingLabelsToDownload") unless @additional_staging_labels_to_download.nil?
end

Instance Attribute Details

#additional_staging_labels_to_downloadArray<String>? (readonly)

The staging labels whose values you want to make available on the core, in addition to AWSCURRENT .



1135
1136
1137
# File 'greengrass/cfn_resource_definition.rb', line 1135

def additional_staging_labels_to_download
  @additional_staging_labels_to_download
end

#arnString (readonly)

The Amazon Resource Name (ARN) of the Secrets Manager secret to make available on the core.

The value of the secret's latest version (represented by the AWSCURRENT staging label) is included by default.



1130
1131
1132
# File 'greengrass/cfn_resource_definition.rb', line 1130

def arn
  @arn
end

Class Method Details

.jsii_propertiesObject



1137
1138
1139
1140
1141
1142
# File 'greengrass/cfn_resource_definition.rb', line 1137

def self.jsii_properties
  {
    :arn => "arn",
    :additional_staging_labels_to_download => "additionalStagingLabelsToDownload",
  }
end

Instance Method Details

#to_jsiiObject



1144
1145
1146
1147
1148
1149
1150
1151
# File 'greengrass/cfn_resource_definition.rb', line 1144

def to_jsii
  result = {}
  result.merge!({
    "arn" => @arn,
    "additionalStagingLabelsToDownload" => @additional_staging_labels_to_download,
  })
  result.compact
end