Class: AWSCDK::Datasync::CfnLocationFSXWindowsProps

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

Overview

Properties for defining a CfnLocationFSxWindows.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(security_group_arns:, user:, cmk_secret_config: nil, custom_secret_config: nil, domain: nil, fsx_filesystem_arn: nil, password: nil, subdirectory: nil, tags: nil) ⇒ CfnLocationFSXWindowsProps

Returns a new instance of CfnLocationFSXWindowsProps.

Parameters:

  • security_group_arns (Array<String>)

    The Amazon Resource Names (ARNs) of the security groups that are used to configure the FSx for Windows File Server file system.

  • user (String)

    The user who has the permissions to access files and folders in the FSx for Windows File Server file system.

  • cmk_secret_config (AWSCDK::IResolvable, AWSCDK::Datasync::CfnLocationFSXWindows::CmkSecretConfigProperty, nil) (defaults to: nil)

    Specifies configuration information for a DataSync-managed secret, such as an authentication token or set of credentials that DataSync uses to access a specific transfer location, and a customer-managed AWS KMS key.

  • custom_secret_config (AWSCDK::IResolvable, AWSCDK::Datasync::CfnLocationFSXWindows::CustomSecretConfigProperty, nil) (defaults to: nil)

    Specifies configuration information for a customer-managed secret, such as an authentication token or set of credentials that DataSync uses to access a specific transfer location, and an IAM role that DataSync can assume and access the customer-managed secret.

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

    Specifies the name of the Windows domain that the FSx for Windows File Server file system belongs to.

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

    Specifies the Amazon Resource Name (ARN) for the FSx for Windows File Server file system.

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

    Specifies the password of the user with the permissions to mount and access the files, folders, and file metadata in your FSx for Windows File Server file system.

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

    Specifies a mount path for your file system using forward slashes.

  • tags (Array<AWSCDK::CfnTag>, nil) (defaults to: nil)

    Specifies labels that help you categorize, filter, and search for your AWS resources.



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'datasync/cfn_location_fsx_windows_props.rb', line 18

def initialize(security_group_arns:, user:, cmk_secret_config: nil, custom_secret_config: nil, domain: nil, fsx_filesystem_arn: nil, password: nil, subdirectory: nil, tags: nil)
  @security_group_arns = security_group_arns
  Jsii::Type.check_type(@security_group_arns, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "securityGroupArns")
  @user = user
  Jsii::Type.check_type(@user, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "user")
  @cmk_secret_config = cmk_secret_config.is_a?(Hash) ? ::AWSCDK::Datasync::CfnLocationFSXWindows::CmkSecretConfigProperty.new(**cmk_secret_config.transform_keys(&:to_sym)) : cmk_secret_config
  Jsii::Type.check_type(@cmk_secret_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19kYXRhc3luYy5DZm5Mb2NhdGlvbkZTeFdpbmRvd3MuQ21rU2VjcmV0Q29uZmlnUHJvcGVydHkifV19fQ==")), "cmkSecretConfig") unless @cmk_secret_config.nil?
  @custom_secret_config = custom_secret_config.is_a?(Hash) ? ::AWSCDK::Datasync::CfnLocationFSXWindows::CustomSecretConfigProperty.new(**custom_secret_config.transform_keys(&:to_sym)) : custom_secret_config
  Jsii::Type.check_type(@custom_secret_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19kYXRhc3luYy5DZm5Mb2NhdGlvbkZTeFdpbmRvd3MuQ3VzdG9tU2VjcmV0Q29uZmlnUHJvcGVydHkifV19fQ==")), "customSecretConfig") unless @custom_secret_config.nil?
  @domain = domain
  Jsii::Type.check_type(@domain, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "domain") unless @domain.nil?
  @fsx_filesystem_arn = fsx_filesystem_arn
  Jsii::Type.check_type(@fsx_filesystem_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "fsxFilesystemArn") unless @fsx_filesystem_arn.nil?
  @password = password
  Jsii::Type.check_type(@password, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "password") unless @password.nil?
  @subdirectory = subdirectory
  Jsii::Type.check_type(@subdirectory, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "subdirectory") unless @subdirectory.nil?
  @tags = tags.is_a?(Array) ? tags.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil?
end

Instance Attribute Details

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

Specifies configuration information for a DataSync-managed secret, such as an authentication token or set of credentials that DataSync uses to access a specific transfer location, and a customer-managed AWS KMS key.



59
60
61
# File 'datasync/cfn_location_fsx_windows_props.rb', line 59

def cmk_secret_config
  @cmk_secret_config
end

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

Specifies configuration information for a customer-managed secret, such as an authentication token or set of credentials that DataSync uses to access a specific transfer location, and an IAM role that DataSync can assume and access the customer-managed secret.



64
65
66
# File 'datasync/cfn_location_fsx_windows_props.rb', line 64

def custom_secret_config
  @custom_secret_config
end

#domainString? (readonly)

Specifies the name of the Windows domain that the FSx for Windows File Server file system belongs to.

If you have multiple Active Directory domains in your environment, configuring this parameter makes sure that DataSync connects to the right file system.



71
72
73
# File 'datasync/cfn_location_fsx_windows_props.rb', line 71

def domain
  @domain
end

#fsx_filesystem_arnString? (readonly)

Specifies the Amazon Resource Name (ARN) for the FSx for Windows File Server file system.



76
77
78
# File 'datasync/cfn_location_fsx_windows_props.rb', line 76

def fsx_filesystem_arn
  @fsx_filesystem_arn
end

#passwordString? (readonly)

Specifies the password of the user with the permissions to mount and access the files, folders, and file metadata in your FSx for Windows File Server file system.



81
82
83
# File 'datasync/cfn_location_fsx_windows_props.rb', line 81

def password
  @password
end

#security_group_arnsArray<String> (readonly)

The Amazon Resource Names (ARNs) of the security groups that are used to configure the FSx for Windows File Server file system.

Pattern : ^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):ec2:[a-z\-0-9]*:[0-9]{12}:security-group/.*$

Length constraints : Maximum length of 128.



47
48
49
# File 'datasync/cfn_location_fsx_windows_props.rb', line 47

def security_group_arns
  @security_group_arns
end

#subdirectoryString? (readonly)

Specifies a mount path for your file system using forward slashes.

This is where DataSync reads or writes data (depending on if this is a source or destination location).



88
89
90
# File 'datasync/cfn_location_fsx_windows_props.rb', line 88

def subdirectory
  @subdirectory
end

#tagsArray<AWSCDK::CfnTag>? (readonly)

Specifies labels that help you categorize, filter, and search for your AWS resources.

We recommend creating at least a name tag for your location.



95
96
97
# File 'datasync/cfn_location_fsx_windows_props.rb', line 95

def tags
  @tags
end

#userString (readonly)

The user who has the permissions to access files and folders in the FSx for Windows File Server file system.

For information about choosing a user name that ensures sufficient permissions to files, folders, and metadata, see user .



54
55
56
# File 'datasync/cfn_location_fsx_windows_props.rb', line 54

def user
  @user
end

Class Method Details

.jsii_propertiesObject



97
98
99
100
101
102
103
104
105
106
107
108
109
# File 'datasync/cfn_location_fsx_windows_props.rb', line 97

def self.jsii_properties
  {
    :security_group_arns => "securityGroupArns",
    :user => "user",
    :cmk_secret_config => "cmkSecretConfig",
    :custom_secret_config => "customSecretConfig",
    :domain => "domain",
    :fsx_filesystem_arn => "fsxFilesystemArn",
    :password => "password",
    :subdirectory => "subdirectory",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
# File 'datasync/cfn_location_fsx_windows_props.rb', line 111

def to_jsii
  result = {}
  result.merge!({
    "securityGroupArns" => @security_group_arns,
    "user" => @user,
    "cmkSecretConfig" => @cmk_secret_config,
    "customSecretConfig" => @custom_secret_config,
    "domain" => @domain,
    "fsxFilesystemArn" => @fsx_filesystem_arn,
    "password" => @password,
    "subdirectory" => @subdirectory,
    "tags" => @tags,
  })
  result.compact
end