Class: AWSCDK::Datasync::CfnLocationSMB::CmkSecretConfigProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
datasync/cfn_location_smb.rb

Overview

Specifies configuration information for a DataSync-managed secret, such as an authentication token, secret key, password, or Kerberos keytab that DataSync uses to access a specific storage location, with a customer-managed AWS KMS key .

You can use either CmkSecretConfig or CustomSecretConfig to provide credentials for a CreateLocation request. Do not provide both parameters for the same request.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(kms_key_arn: nil, secret_arn: nil) ⇒ CmkSecretConfigProperty

Returns a new instance of CmkSecretConfigProperty.

Parameters:

  • kms_key_arn (String, nil) (defaults to: nil)

    Specifies the ARN for the customer-managed AWS KMS key that DataSync uses to encrypt the DataSync-managed secret stored for SecretArn .

  • secret_arn (String, nil) (defaults to: nil)

    Specifies the ARN for the DataSync-managed AWS Secrets Manager secret that that is used to access a specific storage location.



726
727
728
729
730
731
# File 'datasync/cfn_location_smb.rb', line 726

def initialize(kms_key_arn: nil, secret_arn: nil)
  @kms_key_arn = kms_key_arn
  Jsii::Type.check_type(@kms_key_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "kmsKeyArn") unless @kms_key_arn.nil?
  @secret_arn = secret_arn
  Jsii::Type.check_type(@secret_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "secretArn") unless @secret_arn.nil?
end

Instance Attribute Details

#kms_key_arnString? (readonly)

Specifies the ARN for the customer-managed AWS KMS key that DataSync uses to encrypt the DataSync-managed secret stored for SecretArn .

DataSync provides this key to AWS Secrets Manager .



739
740
741
# File 'datasync/cfn_location_smb.rb', line 739

def kms_key_arn
  @kms_key_arn
end

#secret_arnString? (readonly)

Specifies the ARN for the DataSync-managed AWS Secrets Manager secret that that is used to access a specific storage location.

This property is generated by DataSync and is read-only. DataSync encrypts this secret with the KMS key that you specify for KmsKeyArn .



746
747
748
# File 'datasync/cfn_location_smb.rb', line 746

def secret_arn
  @secret_arn
end

Class Method Details

.jsii_propertiesObject



748
749
750
751
752
753
# File 'datasync/cfn_location_smb.rb', line 748

def self.jsii_properties
  {
    :kms_key_arn => "kmsKeyArn",
    :secret_arn => "secretArn",
  }
end

Instance Method Details

#to_jsiiObject



755
756
757
758
759
760
761
762
# File 'datasync/cfn_location_smb.rb', line 755

def to_jsii
  result = {}
  result.merge!({
    "kmsKeyArn" => @kms_key_arn,
    "secretArn" => @secret_arn,
  })
  result.compact
end