aws-sdk-transfer 1.17.0 → 1.18.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -11,9 +11,11 @@ module Aws::Transfer
11
11
 
12
12
  include Seahorse::Model
13
13
 
14
+ AccessDeniedException = Shapes::StructureShape.new(name: 'AccessDeniedException')
14
15
  AddressAllocationId = Shapes::StringShape.new(name: 'AddressAllocationId')
15
16
  AddressAllocationIds = Shapes::ListShape.new(name: 'AddressAllocationIds')
16
17
  Arn = Shapes::StringShape.new(name: 'Arn')
18
+ Certificate = Shapes::StringShape.new(name: 'Certificate')
17
19
  ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
18
20
  CreateServerRequest = Shapes::StructureShape.new(name: 'CreateServerRequest')
19
21
  CreateServerResponse = Shapes::StructureShape.new(name: 'CreateServerResponse')
@@ -61,6 +63,8 @@ module Aws::Transfer
61
63
  NextToken = Shapes::StringShape.new(name: 'NextToken')
62
64
  NullableRole = Shapes::StringShape.new(name: 'NullableRole')
63
65
  Policy = Shapes::StringShape.new(name: 'Policy')
66
+ Protocol = Shapes::StringShape.new(name: 'Protocol')
67
+ Protocols = Shapes::ListShape.new(name: 'Protocols')
64
68
  Resource = Shapes::StringShape.new(name: 'Resource')
65
69
  ResourceExistsException = Shapes::StructureShape.new(name: 'ResourceExistsException')
66
70
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
@@ -103,17 +107,22 @@ module Aws::Transfer
103
107
  VpcEndpointId = Shapes::StringShape.new(name: 'VpcEndpointId')
104
108
  VpcId = Shapes::StringShape.new(name: 'VpcId')
105
109
 
110
+ AccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: ServiceErrorMessage, location_name: "Message"))
111
+ AccessDeniedException.struct_class = Types::AccessDeniedException
112
+
106
113
  AddressAllocationIds.member = Shapes::ShapeRef.new(shape: AddressAllocationId)
107
114
 
108
115
  ConflictException.add_member(:message, Shapes::ShapeRef.new(shape: Message, required: true, location_name: "Message"))
109
116
  ConflictException.struct_class = Types::ConflictException
110
117
 
118
+ CreateServerRequest.add_member(:certificate, Shapes::ShapeRef.new(shape: Certificate, location_name: "Certificate"))
111
119
  CreateServerRequest.add_member(:endpoint_details, Shapes::ShapeRef.new(shape: EndpointDetails, location_name: "EndpointDetails"))
112
120
  CreateServerRequest.add_member(:endpoint_type, Shapes::ShapeRef.new(shape: EndpointType, location_name: "EndpointType"))
113
121
  CreateServerRequest.add_member(:host_key, Shapes::ShapeRef.new(shape: HostKey, location_name: "HostKey"))
114
122
  CreateServerRequest.add_member(:identity_provider_details, Shapes::ShapeRef.new(shape: IdentityProviderDetails, location_name: "IdentityProviderDetails"))
115
123
  CreateServerRequest.add_member(:identity_provider_type, Shapes::ShapeRef.new(shape: IdentityProviderType, location_name: "IdentityProviderType"))
116
124
  CreateServerRequest.add_member(:logging_role, Shapes::ShapeRef.new(shape: Role, location_name: "LoggingRole"))
125
+ CreateServerRequest.add_member(:protocols, Shapes::ShapeRef.new(shape: Protocols, location_name: "Protocols"))
117
126
  CreateServerRequest.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "Tags"))
118
127
  CreateServerRequest.struct_class = Types::CreateServerRequest
119
128
 
@@ -162,12 +171,14 @@ module Aws::Transfer
162
171
  DescribeUserResponse.struct_class = Types::DescribeUserResponse
163
172
 
164
173
  DescribedServer.add_member(:arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "Arn"))
174
+ DescribedServer.add_member(:certificate, Shapes::ShapeRef.new(shape: Certificate, location_name: "Certificate"))
165
175
  DescribedServer.add_member(:endpoint_details, Shapes::ShapeRef.new(shape: EndpointDetails, location_name: "EndpointDetails"))
166
176
  DescribedServer.add_member(:endpoint_type, Shapes::ShapeRef.new(shape: EndpointType, location_name: "EndpointType"))
167
177
  DescribedServer.add_member(:host_key_fingerprint, Shapes::ShapeRef.new(shape: HostKeyFingerprint, location_name: "HostKeyFingerprint"))
168
178
  DescribedServer.add_member(:identity_provider_details, Shapes::ShapeRef.new(shape: IdentityProviderDetails, location_name: "IdentityProviderDetails"))
169
179
  DescribedServer.add_member(:identity_provider_type, Shapes::ShapeRef.new(shape: IdentityProviderType, location_name: "IdentityProviderType"))
170
180
  DescribedServer.add_member(:logging_role, Shapes::ShapeRef.new(shape: Role, location_name: "LoggingRole"))
181
+ DescribedServer.add_member(:protocols, Shapes::ShapeRef.new(shape: Protocols, location_name: "Protocols"))
171
182
  DescribedServer.add_member(:server_id, Shapes::ShapeRef.new(shape: ServerId, location_name: "ServerId"))
172
183
  DescribedServer.add_member(:state, Shapes::ShapeRef.new(shape: State, location_name: "State"))
173
184
  DescribedServer.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "Tags"))
@@ -269,6 +280,8 @@ module Aws::Transfer
269
280
 
270
281
  ListedUsers.member = Shapes::ShapeRef.new(shape: ListedUser)
271
282
 
283
+ Protocols.member = Shapes::ShapeRef.new(shape: Protocol)
284
+
272
285
  ResourceExistsException.add_member(:message, Shapes::ShapeRef.new(shape: Message, required: true, location_name: "Message"))
273
286
  ResourceExistsException.add_member(:resource, Shapes::ShapeRef.new(shape: Resource, required: true, location_name: "Resource"))
274
287
  ResourceExistsException.add_member(:resource_type, Shapes::ShapeRef.new(shape: ResourceType, required: true, location_name: "ResourceType"))
@@ -312,6 +325,7 @@ module Aws::Transfer
312
325
  TestIdentityProviderRequest.add_member(:server_id, Shapes::ShapeRef.new(shape: ServerId, required: true, location_name: "ServerId"))
313
326
  TestIdentityProviderRequest.add_member(:user_name, Shapes::ShapeRef.new(shape: UserName, required: true, location_name: "UserName"))
314
327
  TestIdentityProviderRequest.add_member(:user_password, Shapes::ShapeRef.new(shape: UserPassword, location_name: "UserPassword"))
328
+ TestIdentityProviderRequest.add_member(:server_protocol, Shapes::ShapeRef.new(shape: Protocol, location_name: "ServerProtocol"))
315
329
  TestIdentityProviderRequest.struct_class = Types::TestIdentityProviderRequest
316
330
 
317
331
  TestIdentityProviderResponse.add_member(:response, Shapes::ShapeRef.new(shape: Response, location_name: "Response"))
@@ -327,11 +341,13 @@ module Aws::Transfer
327
341
  UntagResourceRequest.add_member(:tag_keys, Shapes::ShapeRef.new(shape: TagKeys, required: true, location_name: "TagKeys"))
328
342
  UntagResourceRequest.struct_class = Types::UntagResourceRequest
329
343
 
344
+ UpdateServerRequest.add_member(:certificate, Shapes::ShapeRef.new(shape: Certificate, location_name: "Certificate"))
330
345
  UpdateServerRequest.add_member(:endpoint_details, Shapes::ShapeRef.new(shape: EndpointDetails, location_name: "EndpointDetails"))
331
346
  UpdateServerRequest.add_member(:endpoint_type, Shapes::ShapeRef.new(shape: EndpointType, location_name: "EndpointType"))
332
347
  UpdateServerRequest.add_member(:host_key, Shapes::ShapeRef.new(shape: HostKey, location_name: "HostKey"))
333
348
  UpdateServerRequest.add_member(:identity_provider_details, Shapes::ShapeRef.new(shape: IdentityProviderDetails, location_name: "IdentityProviderDetails"))
334
349
  UpdateServerRequest.add_member(:logging_role, Shapes::ShapeRef.new(shape: NullableRole, location_name: "LoggingRole"))
350
+ UpdateServerRequest.add_member(:protocols, Shapes::ShapeRef.new(shape: Protocols, location_name: "Protocols"))
335
351
  UpdateServerRequest.add_member(:server_id, Shapes::ShapeRef.new(shape: ServerId, required: true, location_name: "ServerId"))
336
352
  UpdateServerRequest.struct_class = Types::UpdateServerRequest
337
353
 
@@ -363,7 +379,7 @@ module Aws::Transfer
363
379
  "jsonVersion" => "1.1",
364
380
  "protocol" => "json",
365
381
  "serviceAbbreviation" => "AWS Transfer",
366
- "serviceFullName" => "AWS Transfer for SFTP",
382
+ "serviceFullName" => "AWS Transfer Family",
367
383
  "serviceId" => "Transfer",
368
384
  "signatureVersion" => "v4",
369
385
  "signingName" => "transfer",
@@ -377,10 +393,12 @@ module Aws::Transfer
377
393
  o.http_request_uri = "/"
378
394
  o.input = Shapes::ShapeRef.new(shape: CreateServerRequest)
379
395
  o.output = Shapes::ShapeRef.new(shape: CreateServerResponse)
396
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
380
397
  o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
381
398
  o.errors << Shapes::ShapeRef.new(shape: InternalServiceError)
382
399
  o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
383
400
  o.errors << Shapes::ShapeRef.new(shape: ResourceExistsException)
401
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
384
402
  end)
385
403
 
386
404
  api.add_operation(:create_user, Seahorse::Model::Operation.new.tap do |o|
@@ -402,6 +420,7 @@ module Aws::Transfer
402
420
  o.http_request_uri = "/"
403
421
  o.input = Shapes::ShapeRef.new(shape: DeleteServerRequest)
404
422
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
423
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
405
424
  o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
406
425
  o.errors << Shapes::ShapeRef.new(shape: InternalServiceError)
407
426
  o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
@@ -594,6 +613,7 @@ module Aws::Transfer
594
613
  o.http_request_uri = "/"
595
614
  o.input = Shapes::ShapeRef.new(shape: UpdateServerRequest)
596
615
  o.output = Shapes::ShapeRef.new(shape: UpdateServerResponse)
616
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
597
617
  o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
598
618
  o.errors << Shapes::ShapeRef.new(shape: ConflictException)
599
619
  o.errors << Shapes::ShapeRef.new(shape: InternalServiceError)
@@ -25,6 +25,7 @@ module Aws::Transfer
25
25
  # See {Seahorse::Client::RequestContext} for more information.
26
26
  #
27
27
  # ## Error Classes
28
+ # * {AccessDeniedException}
28
29
  # * {ConflictException}
29
30
  # * {InternalServiceError}
30
31
  # * {InvalidNextTokenException}
@@ -40,6 +41,21 @@ module Aws::Transfer
40
41
 
41
42
  extend Aws::Errors::DynamicErrors
42
43
 
44
+ class AccessDeniedException < ServiceError
45
+
46
+ # @param [Seahorse::Client::RequestContext] context
47
+ # @param [String] message
48
+ # @param [Aws::Transfer::Types::AccessDeniedException] data
49
+ def initialize(context, message, data = Aws::EmptyStructure.new)
50
+ super(context, message, data)
51
+ end
52
+
53
+ # @return [String]
54
+ def message
55
+ @message || @data[:message]
56
+ end
57
+ end
58
+
43
59
  class ConflictException < ServiceError
44
60
 
45
61
  # @param [Seahorse::Client::RequestContext] context
@@ -6,13 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::Transfer
9
- # This class provides a resource oriented interface for Transfer.
10
- # To create a resource object:
11
- # resource = Aws::Transfer::Resource.new(region: 'us-west-2')
12
- # You can supply a client object with custom configuration that will be used for all resource operations.
13
- # If you do not pass +:client+, a default client will be constructed.
14
- # client = Aws::Transfer::Client.new(region: 'us-west-2')
15
- # resource = Aws::Transfer::Resource.new(client: client)
9
+
16
10
  class Resource
17
11
 
18
12
  # @param options ({})
@@ -8,9 +8,21 @@
8
8
  module Aws::Transfer
9
9
  module Types
10
10
 
11
- # This exception is thrown when the `UpdatServer` is called for a server
12
- # that has VPC as the endpoint type and the server's `VpcEndpointID` is
13
- # not in the available state.
11
+ # You do not have sufficient access to perform this action.
12
+ #
13
+ # @!attribute [rw] message
14
+ # @return [String]
15
+ #
16
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/AccessDeniedException AWS API Documentation
17
+ #
18
+ class AccessDeniedException < Struct.new(
19
+ :message)
20
+ include Aws::Structure
21
+ end
22
+
23
+ # This exception is thrown when the `UpdatServer` is called for a file
24
+ # transfer protocol-enabled server that has VPC as the endpoint type and
25
+ # the server's `VpcEndpointID` is not in the available state.
14
26
  #
15
27
  # @!attribute [rw] message
16
28
  # @return [String]
@@ -26,6 +38,7 @@ module Aws::Transfer
26
38
  # data as a hash:
27
39
  #
28
40
  # {
41
+ # certificate: "Certificate",
29
42
  # endpoint_details: {
30
43
  # address_allocation_ids: ["AddressAllocationId"],
31
44
  # subnet_ids: ["SubnetId"],
@@ -40,6 +53,7 @@ module Aws::Transfer
40
53
  # },
41
54
  # identity_provider_type: "SERVICE_MANAGED", # accepts SERVICE_MANAGED, API_GATEWAY
42
55
  # logging_role: "Role",
56
+ # protocols: ["SFTP"], # accepts SFTP, FTP, FTPS
43
57
  # tags: [
44
58
  # {
45
59
  # key: "TagKey", # required
@@ -48,20 +62,26 @@ module Aws::Transfer
48
62
  # ],
49
63
  # }
50
64
  #
65
+ # @!attribute [rw] certificate
66
+ # The Amazon Resource Name (ARN) of the AWS Certificate Manager (ACM)
67
+ # certificate. Required when `Protocols` is set to `FTPS`.
68
+ # @return [String]
69
+ #
51
70
  # @!attribute [rw] endpoint_details
52
71
  # The virtual private cloud (VPC) endpoint settings that are
53
- # configured for your SFTP server. With a VPC endpoint, you can
54
- # restrict access to your SFTP server to resources only within your
55
- # VPC. To control incoming internet traffic, you will need to invoke
56
- # the `UpdateServer` API and attach an Elastic IP to your server's
57
- # endpoint.
72
+ # configured for your file transfer protocol-enabled server. When you
73
+ # host your endpoint within your VPC, you can make it accessible only
74
+ # to resources within your VPC, or you can attach Elastic IPs and make
75
+ # it accessible to clients over the internet. Your VPC's default
76
+ # security groups are automatically assigned to your endpoint.
58
77
  # @return [Types::EndpointDetails]
59
78
  #
60
79
  # @!attribute [rw] endpoint_type
61
- # The type of VPC endpoint that you want your SFTP server to connect
62
- # to. You can choose to connect to the public internet or a virtual
63
- # private cloud (VPC) endpoint. With a VPC endpoint, you can restrict
64
- # access to your SFTP server and resources only within your VPC.
80
+ # The type of VPC endpoint that you want your file transfer
81
+ # protocol-enabled server to connect to. You can choose to connect to
82
+ # the public internet or a virtual private cloud (VPC) endpoint. With
83
+ # a VPC endpoint, you can restrict access to your server and resources
84
+ # only within your VPC.
65
85
  # @return [String]
66
86
  #
67
87
  # @!attribute [rw] host_key
@@ -69,56 +89,77 @@ module Aws::Transfer
69
89
  # my-new-server-key` command.
70
90
  #
71
91
  # If you aren't planning to migrate existing users from an existing
72
- # SFTP server to a new AWS SFTP server, don't update the host key.
92
+ # SFTP-enabled server to a new server, don't update the host key.
73
93
  # Accidentally changing a server's host key can be disruptive.
74
94
  #
75
- # For more information, see
76
- # "https://alpha-docs-aws.amazon.com/transfer/latest/userguide/configuring-servers.html#change-host-key"
77
- # in the *AWS SFTP User Guide.*
95
+ # For more information, see [Changing the Host Key for Your AWS
96
+ # Transfer Family Server][1] in the *AWS Transfer Family User Guide*.
97
+ #
98
+ #
99
+ #
100
+ # [1]: https://docs.aws.amazon.com/transfer/latest/userguide/configuring-servers.html#change-host-key
78
101
  # @return [String]
79
102
  #
80
103
  # @!attribute [rw] identity_provider_details
81
- # This parameter is required when the `IdentityProviderType` is set to
82
- # `API_GATEWAY`. Accepts an array containing all of the information
83
- # required to call a customer-supplied authentication API, including
84
- # the API Gateway URL. This property is not required when the
85
- # `IdentityProviderType` is set to `SERVICE_MANAGED`.
104
+ # Required when `IdentityProviderType` is set to `API_GATEWAY`.
105
+ # Accepts an array containing all of the information required to call
106
+ # a customer-supplied authentication API, including the API Gateway
107
+ # URL. Not required when `IdentityProviderType` is set to
108
+ # `SERVICE_MANAGED`.
86
109
  # @return [Types::IdentityProviderDetails]
87
110
  #
88
111
  # @!attribute [rw] identity_provider_type
89
- # Specifies the mode of authentication for the SFTP server. The
90
- # default value is `SERVICE_MANAGED`, which allows you to store and
91
- # access SFTP user credentials within the AWS Transfer for SFTP
92
- # service. Use the `API_GATEWAY` value to integrate with an identity
93
- # provider of your choosing. The `API_GATEWAY` setting requires you to
94
- # provide an API Gateway endpoint URL to call for authentication using
95
- # the `IdentityProviderDetails` parameter.
112
+ # Specifies the mode of authentication for a file transfer
113
+ # protocol-enabled server. The default value is `SERVICE_MANAGED`,
114
+ # which allows you to store and access user credentials within the AWS
115
+ # Transfer Family service. Use the `API_GATEWAY` value to integrate
116
+ # with an identity provider of your choosing. The `API_GATEWAY`
117
+ # setting requires you to provide an API Gateway endpoint URL to call
118
+ # for authentication using the `IdentityProviderDetails` parameter.
96
119
  # @return [String]
97
120
  #
98
121
  # @!attribute [rw] logging_role
99
- # A value that allows the service to write your SFTP users' activity
100
- # to your Amazon CloudWatch logs for monitoring and auditing purposes.
122
+ # Allows the service to write your users' activity to your Amazon
123
+ # CloudWatch logs for monitoring and auditing purposes.
101
124
  # @return [String]
102
125
  #
126
+ # @!attribute [rw] protocols
127
+ # Specifies the file transfer protocol or protocols over which your
128
+ # file transfer protocol client can connect to your server's
129
+ # endpoint. The available protocols are:
130
+ #
131
+ # * Secure Shell (SSH) File Transfer Protocol (SFTP): File transfer
132
+ # over SSH
133
+ #
134
+ # * File Transfer Protocol Secure (FTPS): File transfer with TLS
135
+ # encryption
136
+ #
137
+ # * File Transfer Protocol (FTP): Unencrypted file transfer
138
+ # @return [Array<String>]
139
+ #
103
140
  # @!attribute [rw] tags
104
- # Key-value pairs that can be used to group and search for servers.
141
+ # Key-value pairs that can be used to group and search for file
142
+ # transfer protocol-enabled servers.
105
143
  # @return [Array<Types::Tag>]
106
144
  #
107
145
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateServerRequest AWS API Documentation
108
146
  #
109
147
  class CreateServerRequest < Struct.new(
148
+ :certificate,
110
149
  :endpoint_details,
111
150
  :endpoint_type,
112
151
  :host_key,
113
152
  :identity_provider_details,
114
153
  :identity_provider_type,
115
154
  :logging_role,
155
+ :protocols,
116
156
  :tags)
117
157
  include Aws::Structure
118
158
  end
119
159
 
120
160
  # @!attribute [rw] server_id
121
- # The service-assigned ID of the SFTP server that is created.
161
+ # The service-assigned ID of the file transfer protocol-enabled server
162
+ # that is created.
122
163
  # @return [String]
123
164
  #
124
165
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateServerResponse AWS API Documentation
@@ -155,47 +196,48 @@ module Aws::Transfer
155
196
  #
156
197
  # @!attribute [rw] home_directory
157
198
  # The landing directory (folder) for a user when they log in to the
158
- # server using their SFTP client.
199
+ # file transfer protocol-enabled server using the client.
159
200
  #
160
- # An example is &lt;`your-Amazon-S3-bucket-name>/home/username`.
201
+ # An example is `your-Amazon-S3-bucket-name>/home/username`.
161
202
  # @return [String]
162
203
  #
163
204
  # @!attribute [rw] home_directory_type
164
205
  # The type of landing directory (folder) you want your users' home
165
- # directory to be when they log into the SFTP server. If you set it to
166
- # `PATH`, the user will see the absolute Amazon S3 bucket paths as is
167
- # in their SFTP clients. If you set it `LOGICAL`, you will need to
168
- # provide mappings in the `HomeDirectoryMappings` for how you want to
169
- # make S3 paths visible to your user.
206
+ # directory to be when they log into the file transfer
207
+ # protocol-enabled server. If you set it to `PATH`, the user will see
208
+ # the absolute Amazon S3 bucket paths as is in their file transfer
209
+ # protocol clients. If you set it `LOGICAL`, you will need to provide
210
+ # mappings in the `HomeDirectoryMappings` for how you want to make
211
+ # Amazon S3 paths visible to your users.
170
212
  # @return [String]
171
213
  #
172
214
  # @!attribute [rw] home_directory_mappings
173
- # Logical directory mappings that specify what S3 paths and keys
174
- # should be visible to your user and how you want to make them
215
+ # Logical directory mappings that specify what Amazon S3 paths and
216
+ # keys should be visible to your user and how you want to make them
175
217
  # visible. You will need to specify the "`Entry`" and "`Target`"
176
218
  # pair, where `Entry` shows how the path is made visible and `Target`
177
- # is the actual S3 path. If you only specify a target, it will be
178
- # displayed as is. You will need to also make sure that your AWS IAM
179
- # Role provides access to paths in `Target`. The following is an
219
+ # is the actual Amazon S3 path. If you only specify a target, it will
220
+ # be displayed as is. You will need to also make sure that your AWS
221
+ # IAM Role provides access to paths in `Target`. The following is an
180
222
  # example.
181
223
  #
182
224
  # `'[ "/bucket2/documentation", \{ "Entry":
183
225
  # "your-personal-report.pdf", "Target":
184
226
  # "/bucket3/customized-reports/$\{transfer:UserName\}.pdf" \} ]'`
185
227
  #
186
- # In most cases, you can use this value instead of the scope down
228
+ # In most cases, you can use this value instead of the scope-down
187
229
  # policy to lock your user down to the designated home directory
188
230
  # ("chroot"). To do this, you can set `Entry` to '/' and set
189
231
  # `Target` to the HomeDirectory parameter value.
190
232
  #
191
- # <note markdown="1"> If the target of a logical directory entry does not exist in S3, the
192
- # entry will be ignored. As a workaround, you can use the S3 api to
193
- # create 0 byte objects as place holders for your directory. If using
194
- # the CLI, use the s3api call instead of s3 so you can use the
195
- # put-object operation. For example, you use the following: `aws s3api
196
- # put-object --bucket bucketname --key path/to/folder/`. Make sure
197
- # that the end of the key name ends in a / for it to be considered a
198
- # folder.
233
+ # <note markdown="1"> If the target of a logical directory entry does not exist in Amazon
234
+ # S3, the entry will be ignored. As a workaround, you can use the
235
+ # Amazon S3 api to create 0 byte objects as place holders for your
236
+ # directory. If using the CLI, use the `s3api` call instead of `s3` so
237
+ # you can use the put-object operation. For example, you use the
238
+ # following: `aws s3api put-object --bucket bucketname --key
239
+ # path/to/folder/`. Make sure that the end of the key name ends in a
240
+ # '/' for it to be considered a folder.
199
241
  #
200
242
  # </note>
201
243
  # @return [Array<Types::HomeDirectoryMapEntry>]
@@ -207,40 +249,44 @@ module Aws::Transfer
207
249
  # inside this policy include `$\{Transfer:UserName\}`,
208
250
  # `$\{Transfer:HomeDirectory\}`, and `$\{Transfer:HomeBucket\}`.
209
251
  #
210
- # <note markdown="1"> For scope-down policies, AWS Transfer for SFTP stores the policy as
211
- # a JSON blob, instead of the Amazon Resource Name (ARN) of the
212
- # policy. You save the policy as a JSON blob and pass it in the
213
- # `Policy` argument.
252
+ # <note markdown="1"> For scope-down policies, AWS Transfer Family stores the policy as a
253
+ # JSON blob, instead of the Amazon Resource Name (ARN) of the policy.
254
+ # You save the policy as a JSON blob and pass it in the `Policy`
255
+ # argument.
214
256
  #
215
- # For an example of a scope-down policy, see
216
- # "https://docs.aws.amazon.com/transfer/latest/userguide/users.html#users-policies-scope-down"&gt;Creating
217
- # a Scope-Down Policy.
257
+ # For an example of a scope-down policy, see [Creating a Scope-Down
258
+ # Policy][1].
218
259
  #
219
- # For more information, see
220
- # "https://docs.aws.amazon.com/STS/latest/APIReference/API\_AssumeRole.html"
221
- # in the *AWS Security Token Service API Reference*.
260
+ # For more information, see [AssumeRole][2] in the *AWS Security Token
261
+ # Service API Reference*.
222
262
  #
223
263
  # </note>
264
+ #
265
+ #
266
+ #
267
+ # [1]: https://docs.aws.amazon.com/transfer/latest/userguide/users.html#users-policies-scope-down
268
+ # [2]: https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html
224
269
  # @return [String]
225
270
  #
226
271
  # @!attribute [rw] role
227
- # The IAM role that controls your user's access to your Amazon S3
272
+ # The IAM role that controls your users' access to your Amazon S3
228
273
  # bucket. The policies attached to this role will determine the level
229
274
  # of access you want to provide your users when transferring files
230
275
  # into and out of your Amazon S3 bucket or buckets. The IAM role
231
- # should also contain a trust relationship that allows the SFTP server
232
- # to access your resources when servicing your SFTP user's transfer
233
- # requests.
276
+ # should also contain a trust relationship that allows the file
277
+ # transfer protocol-enabled server to access your resources when
278
+ # servicing your users' transfer requests.
234
279
  # @return [String]
235
280
  #
236
281
  # @!attribute [rw] server_id
237
- # A system-assigned unique identifier for an SFTP server instance.
238
- # This is the specific SFTP server that you added your user to.
282
+ # A system-assigned unique identifier for a file transfer
283
+ # protocol-enabled server instance. This is the specific server that
284
+ # you added your user to.
239
285
  # @return [String]
240
286
  #
241
287
  # @!attribute [rw] ssh_public_key_body
242
288
  # The public portion of the Secure Shell (SSH) key used to
243
- # authenticate the user to the SFTP server.
289
+ # authenticate the user to the file transfer protocol-enabled server.
244
290
  # @return [String]
245
291
  #
246
292
  # @!attribute [rw] tags
@@ -249,11 +295,11 @@ module Aws::Transfer
249
295
  # @return [Array<Types::Tag>]
250
296
  #
251
297
  # @!attribute [rw] user_name
252
- # A unique string that identifies a user and is associated with a
253
- # server as specified by the `ServerId`. This user name must be a
254
- # minimum of 3 and a maximum of 32 characters long. The following are
255
- # valid characters: a-z, A-Z, 0-9, underscore, and hyphen. The user
256
- # name can't start with a hyphen.
298
+ # A unique string that identifies a user and is associated with a file
299
+ # transfer protocol-enabled server as specified by the `ServerId`.
300
+ # This user name must be a minimum of 3 and a maximum of 32 characters
301
+ # long. The following are valid characters: a-z, A-Z, 0-9, underscore,
302
+ # and hyphen. The user name can't start with a hyphen.
257
303
  # @return [String]
258
304
  #
259
305
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateUserRequest AWS API Documentation
@@ -272,12 +318,13 @@ module Aws::Transfer
272
318
  end
273
319
 
274
320
  # @!attribute [rw] server_id
275
- # The ID of the SFTP server that the user is attached to.
321
+ # The ID of the file transfer protocol-enabled server that the user is
322
+ # attached to.
276
323
  # @return [String]
277
324
  #
278
325
  # @!attribute [rw] user_name
279
- # A unique string that identifies a user account associated with an
280
- # SFTP server.
326
+ # A unique string that identifies a user account associated with a
327
+ # file transfer protocol-enabled server.
281
328
  # @return [String]
282
329
  #
283
330
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateUserResponse AWS API Documentation
@@ -296,7 +343,8 @@ module Aws::Transfer
296
343
  # }
297
344
  #
298
345
  # @!attribute [rw] server_id
299
- # A unique system-assigned identifier for an SFTP server instance.
346
+ # A unique system-assigned identifier for a file transfer
347
+ # protocol-enabled server instance.
300
348
  # @return [String]
301
349
  #
302
350
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteServerRequest AWS API Documentation
@@ -316,8 +364,8 @@ module Aws::Transfer
316
364
  # }
317
365
  #
318
366
  # @!attribute [rw] server_id
319
- # A system-assigned unique identifier for a Secure File Transfer
320
- # Protocol (SFTP) server instance that has the user assigned to it.
367
+ # A system-assigned unique identifier for a file transfer
368
+ # protocol-enabled server instance that has the user assigned to it.
321
369
  # @return [String]
322
370
  #
323
371
  # @!attribute [rw] ssh_public_key_id
@@ -347,13 +395,13 @@ module Aws::Transfer
347
395
  # }
348
396
  #
349
397
  # @!attribute [rw] server_id
350
- # A system-assigned unique identifier for an SFTP server instance that
351
- # has the user assigned to it.
398
+ # A system-assigned unique identifier for a file transfer
399
+ # protocol-enabled server instance that has the user assigned to it.
352
400
  # @return [String]
353
401
  #
354
402
  # @!attribute [rw] user_name
355
- # A unique string that identifies a user that is being deleted from
356
- # the server.
403
+ # A unique string that identifies a user that is being deleted from a
404
+ # file transfer protocol-enabled server.
357
405
  # @return [String]
358
406
  #
359
407
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteUserRequest AWS API Documentation
@@ -372,7 +420,8 @@ module Aws::Transfer
372
420
  # }
373
421
  #
374
422
  # @!attribute [rw] server_id
375
- # A system-assigned unique identifier for an SFTP server.
423
+ # A system-assigned unique identifier for a file transfer
424
+ # protocol-enabled server.
376
425
  # @return [String]
377
426
  #
378
427
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeServerRequest AWS API Documentation
@@ -383,8 +432,8 @@ module Aws::Transfer
383
432
  end
384
433
 
385
434
  # @!attribute [rw] server
386
- # An array containing the properties of the server with the `ServerID`
387
- # you specified.
435
+ # An array containing the properties of a file transfer
436
+ # protocol-enabled server with the `ServerID` you specified.
388
437
  # @return [Types::DescribedServer]
389
438
  #
390
439
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeServerResponse AWS API Documentation
@@ -403,14 +452,15 @@ module Aws::Transfer
403
452
  # }
404
453
  #
405
454
  # @!attribute [rw] server_id
406
- # A system-assigned unique identifier for an SFTP server that has this
407
- # user assigned.
455
+ # A system-assigned unique identifier for a file transfer
456
+ # protocol-enabled server that has this user assigned.
408
457
  # @return [String]
409
458
  #
410
459
  # @!attribute [rw] user_name
411
- # The name of the user assigned to one or more servers. User names are
412
- # part of the sign-in credentials to use the AWS Transfer for SFTP
413
- # service and perform file transfer tasks.
460
+ # The name of the user assigned to one or more file transfer
461
+ # protocol-enabled servers. User names are part of the sign-in
462
+ # credentials to use the AWS Transfer Family service and perform file
463
+ # transfer tasks.
414
464
  # @return [String]
415
465
  #
416
466
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeUserRequest AWS API Documentation
@@ -422,8 +472,8 @@ module Aws::Transfer
422
472
  end
423
473
 
424
474
  # @!attribute [rw] server_id
425
- # A system-assigned unique identifier for an SFTP server that has this
426
- # user assigned.
475
+ # A system-assigned unique identifier for a file transfer
476
+ # protocol-enabled server that has this user assigned.
427
477
  # @return [String]
428
478
  #
429
479
  # @!attribute [rw] user
@@ -439,65 +489,86 @@ module Aws::Transfer
439
489
  include Aws::Structure
440
490
  end
441
491
 
442
- # Describes the properties of the server that was specified. Information
443
- # returned includes the following: the server Amazon Resource Name
444
- # (ARN), the authentication configuration and type, the logging role,
445
- # the server ID and state, and assigned tags or metadata.
492
+ # Describes the properties of a file transfer protocol-enabled server
493
+ # that was specified. Information returned includes the following: the
494
+ # server Amazon Resource Name (ARN), the authentication configuration
495
+ # and type, the logging role, the server ID and state, and assigned tags
496
+ # or metadata.
446
497
  #
447
498
  # @!attribute [rw] arn
448
- # Specifies the unique Amazon Resource Name (ARN) for the server to be
449
- # described.
499
+ # Specifies the unique Amazon Resource Name (ARN) for a file transfer
500
+ # protocol-enabled server to be described.
501
+ # @return [String]
502
+ #
503
+ # @!attribute [rw] certificate
504
+ # The Amazon Resource Name (ARN) of the AWS Certificate Manager (ACM)
505
+ # certificate. Required when `Protocols` is set to `FTPS`.
450
506
  # @return [String]
451
507
  #
452
508
  # @!attribute [rw] endpoint_details
453
509
  # The virtual private cloud (VPC) endpoint settings that you
454
- # configured for your SFTP server.
510
+ # configured for your file transfer protocol-enabled server.
455
511
  # @return [Types::EndpointDetails]
456
512
  #
457
513
  # @!attribute [rw] endpoint_type
458
- # The type of endpoint that your SFTP server is connected to. If your
459
- # SFTP server is connected to a VPC endpoint, your server isn't
460
- # accessible over the public internet.
514
+ # The type of endpoint that your file transfer protocol-enabled server
515
+ # is connected to. If your server is connected to a VPC endpoint, your
516
+ # server isn't accessible over the public internet.
461
517
  # @return [String]
462
518
  #
463
519
  # @!attribute [rw] host_key_fingerprint
464
- # This value contains the message-digest algorithm (MD5) hash of the
465
- # server's host key. This value is equivalent to the output of the
466
- # `ssh-keygen -l -E md5 -f my-new-server-key` command.
520
+ # Contains the message-digest algorithm (MD5) hash of a file transfer
521
+ # protocol-enabled server's host key. This value is equivalent to the
522
+ # output of the `ssh-keygen -l -E md5 -f my-new-server-key` command.
467
523
  # @return [String]
468
524
  #
469
525
  # @!attribute [rw] identity_provider_details
470
526
  # Specifies information to call a customer-supplied authentication
471
527
  # API. This field is not populated when the `IdentityProviderType` of
472
- # the server is `SERVICE_MANAGED`&gt;.
528
+ # a file transfer protocol-enabled server is `SERVICE_MANAGED`.
473
529
  # @return [Types::IdentityProviderDetails]
474
530
  #
475
531
  # @!attribute [rw] identity_provider_type
476
- # This property defines the mode of authentication method enabled for
477
- # this service. A value of `SERVICE_MANAGED` means that you are using
478
- # this server to store and access SFTP user credentials within the
479
- # service. A value of `API_GATEWAY` indicates that you have integrated
480
- # an API Gateway endpoint that will be invoked for authenticating your
481
- # user into the service.
532
+ # Defines the mode of authentication method enabled for this service.
533
+ # A value of `SERVICE_MANAGED` means that you are using this file
534
+ # transfer protocol-enabled server to store and access user
535
+ # credentials within the service. A value of `API_GATEWAY` indicates
536
+ # that you have integrated an API Gateway endpoint that will be
537
+ # invoked for authenticating your user into the service.
482
538
  # @return [String]
483
539
  #
484
540
  # @!attribute [rw] logging_role
485
- # This property is an AWS Identity and Access Management (IAM) entity
486
- # that allows the server to turn on Amazon CloudWatch logging for
487
- # Amazon S3 events. When set, user activity can be viewed in your
488
- # CloudWatch logs.
541
+ # An AWS Identity and Access Management (IAM) entity that allows a
542
+ # file transfer protocol-enabled server to turn on Amazon CloudWatch
543
+ # logging for Amazon S3 events. When set, user activity can be viewed
544
+ # in your CloudWatch logs.
489
545
  # @return [String]
490
546
  #
547
+ # @!attribute [rw] protocols
548
+ # Specifies the file transfer protocol or protocols over which your
549
+ # file transfer protocol client can connect to your server's
550
+ # endpoint. The available protocols are:
551
+ #
552
+ # * Secure Shell (SSH) File Transfer Protocol (SFTP): File transfer
553
+ # over SSH
554
+ #
555
+ # * File Transfer Protocol Secure (FTPS): File transfer with TLS
556
+ # encryption
557
+ #
558
+ # * File Transfer Protocol (FTP): Unencrypted file transfer
559
+ # @return [Array<String>]
560
+ #
491
561
  # @!attribute [rw] server_id
492
- # This property is a unique system-assigned identifier for the SFTP
493
- # server that you instantiate.
562
+ # Unique system-assigned identifier for a file transfer
563
+ # protocol-enabled server that you instantiate.
494
564
  # @return [String]
495
565
  #
496
566
  # @!attribute [rw] state
497
- # The condition of the SFTP server for the server that was described.
498
- # A value of `ONLINE` indicates that the server can accept jobs and
499
- # transfer files. A `State` value of `OFFLINE` means that the server
500
- # cannot perform file transfer operations.
567
+ # The condition of a file transfer protocol-enabled server for the
568
+ # server that was described. A value of `ONLINE` indicates that the
569
+ # server can accept jobs and transfer files. A `State` value of
570
+ # `OFFLINE` means that the server cannot perform file transfer
571
+ # operations.
501
572
  #
502
573
  # The states of `STARTING` and `STOPPING` indicate that the server is
503
574
  # in an intermediate state, either not fully able to respond, or not
@@ -506,26 +577,28 @@ module Aws::Transfer
506
577
  # @return [String]
507
578
  #
508
579
  # @!attribute [rw] tags
509
- # This property contains the key-value pairs that you can use to
510
- # search for and group servers that were assigned to the server that
511
- # was described.
580
+ # Contains the key-value pairs that you can use to search for and
581
+ # group file transfer protocol-enabled servers that were assigned to
582
+ # the server that was described.
512
583
  # @return [Array<Types::Tag>]
513
584
  #
514
585
  # @!attribute [rw] user_count
515
- # The number of users that are assigned to the SFTP server you
516
- # specified with the `ServerId`.
586
+ # The number of users that are assigned to a file transfer
587
+ # protocol-enabled server you specified with the `ServerId`.
517
588
  # @return [Integer]
518
589
  #
519
590
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribedServer AWS API Documentation
520
591
  #
521
592
  class DescribedServer < Struct.new(
522
593
  :arn,
594
+ :certificate,
523
595
  :endpoint_details,
524
596
  :endpoint_type,
525
597
  :host_key_fingerprint,
526
598
  :identity_provider_details,
527
599
  :identity_provider_type,
528
600
  :logging_role,
601
+ :protocols,
529
602
  :server_id,
530
603
  :state,
531
604
  :tags,
@@ -536,44 +609,40 @@ module Aws::Transfer
536
609
  # Returns properties of the user that you want to describe.
537
610
  #
538
611
  # @!attribute [rw] arn
539
- # This property contains the unique Amazon Resource Name (ARN) for the
540
- # user that was requested to be described.
612
+ # Contains the unique Amazon Resource Name (ARN) for the user that was
613
+ # requested to be described.
541
614
  # @return [String]
542
615
  #
543
616
  # @!attribute [rw] home_directory
544
- # This property specifies the landing directory (or folder), which is
545
- # the location that files are written to or read from in an Amazon S3
546
- # bucket for the described user. An example is `/your s3 bucket
617
+ # Specifies the landing directory (or folder), which is the location
618
+ # that files are written to or read from in an Amazon S3 bucket for
619
+ # the described user. An example is `/your s3 bucket
547
620
  # name/home/username `.
548
621
  # @return [String]
549
622
  #
550
623
  # @!attribute [rw] home_directory_mappings
551
- # Logical directory mappings that you specified for what S3 paths and
552
- # keys should be visible to your user and how you want to make them
553
- # visible. You will need to specify the "`Entry`" and "`Target`"
554
- # pair, where `Entry` shows how the path is made visible and `Target`
555
- # is the actual S3 path. If you only specify a target, it will be
556
- # displayed as is. You will need to also make sure that your AWS IAM
557
- # Role provides access to paths in `Target`.
558
- #
559
- # In most cases, you can use this value instead of the scope down
560
- # policy to lock your user down to the designated home directory
561
- # ("chroot"). To do this, you can set `Entry` to '/' and set
562
- # `Target` to the HomeDirectory parameter value.
563
- #
564
- # In most cases, you can use this value instead of the scope down
624
+ # Logical directory mappings that you specified for what Amazon S3
625
+ # paths and keys should be visible to your user and how you want to
626
+ # make them visible. You will need to specify the "`Entry`" and
627
+ # "`Target`" pair, where `Entry` shows how the path is made visible
628
+ # and `Target` is the actual Amazon S3 path. If you only specify a
629
+ # target, it will be displayed as is. You will need to also make sure
630
+ # that your AWS IAM Role provides access to paths in `Target`.
631
+ #
632
+ # In most cases, you can use this value instead of the scope-down
565
633
  # policy to lock your user down to the designated home directory
566
634
  # ("chroot"). To do this, you can set `Entry` to '/' and set
567
635
  # `Target` to the HomeDirectory parameter value.
568
636
  # @return [Array<Types::HomeDirectoryMapEntry>]
569
637
  #
570
638
  # @!attribute [rw] home_directory_type
571
- # The type of landing directory (folder) you mapped for your users'
572
- # to see when they log into the SFTP server. If you set it to `PATH`,
573
- # the user will see the absolute Amazon S3 bucket paths as is in their
574
- # SFTP clients. If you set it `LOGICAL`, you will need to provide
575
- # mappings in the `HomeDirectoryMappings` for how you want to make S3
576
- # paths visible to your user.
639
+ # The type of landing directory (folder) you mapped for your users to
640
+ # see when they log into the file transfer protocol-enabled server. If
641
+ # you set it to `PATH`, the user will see the absolute Amazon S3
642
+ # bucket paths as is in their file transfer protocol clients. If you
643
+ # set it `LOGICAL`, you will need to provide mappings in the
644
+ # `HomeDirectoryMappings` for how you want to make Amazon S3 paths
645
+ # visible to your users.
577
646
  # @return [String]
578
647
  #
579
648
  # @!attribute [rw] policy
@@ -581,31 +650,30 @@ module Aws::Transfer
581
650
  # @return [String]
582
651
  #
583
652
  # @!attribute [rw] role
584
- # This property specifies the IAM role that controls your user's
585
- # access to your Amazon S3 bucket. The policies attached to this role
586
- # will determine the level of access you want to provide your users
587
- # when transferring files into and out of your Amazon S3 bucket or
588
- # buckets. The IAM role should also contain a trust relationship that
589
- # allows the SFTP server to access your resources when servicing your
590
- # SFTP user's transfer requests.
653
+ # Specifies the IAM role that controls your users' access to your
654
+ # Amazon S3 bucket. The policies attached to this role will determine
655
+ # the level of access you want to provide your users when transferring
656
+ # files into and out of your Amazon S3 bucket or buckets. The IAM role
657
+ # should also contain a trust relationship that allows a file transfer
658
+ # protocol-enabled server to access your resources when servicing your
659
+ # users' transfer requests.
591
660
  # @return [String]
592
661
  #
593
662
  # @!attribute [rw] ssh_public_keys
594
- # This property contains the public key portion of the Secure Shell
595
- # (SSH) keys stored for the described user.
663
+ # Contains the public key portion of the Secure Shell (SSH) keys
664
+ # stored for the described user.
596
665
  # @return [Array<Types::SshPublicKey>]
597
666
  #
598
667
  # @!attribute [rw] tags
599
- # This property contains the key-value pairs for the user requested.
600
- # Tag can be used to search for and group users for a variety of
601
- # purposes.
668
+ # Contains the key-value pairs for the user requested. Tag can be used
669
+ # to search for and group users for a variety of purposes.
602
670
  # @return [Array<Types::Tag>]
603
671
  #
604
672
  # @!attribute [rw] user_name
605
- # This property is the name of the user that was requested to be
606
- # described. User names are used for authentication purposes. This is
607
- # the string that will be used by your user when they log in to your
608
- # SFTP server.
673
+ # The name of the user that was requested to be described. User names
674
+ # are used for authentication purposes. This is the string that will
675
+ # be used by your user when they log in to your file transfer
676
+ # protocol-enabled server.
609
677
  # @return [String]
610
678
  #
611
679
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribedUser AWS API Documentation
@@ -624,10 +692,10 @@ module Aws::Transfer
624
692
  end
625
693
 
626
694
  # The virtual private cloud (VPC) endpoint settings that are configured
627
- # for your SFTP server. With a VPC endpoint, you can restrict access to
628
- # your SFTP server and resources only within your VPC. To control
629
- # incoming internet traffic, invoke the `UpdateServer` API and attach an
630
- # Elastic IP to your server's endpoint.
695
+ # for your file transfer protocol-enabled server. With a VPC endpoint,
696
+ # you can restrict access to your server and resources only within your
697
+ # VPC. To control incoming internet traffic, invoke the `UpdateServer`
698
+ # API and attach an Elastic IP to your server's endpoint.
631
699
  #
632
700
  # @note When making an API call, you may pass EndpointDetails
633
701
  # data as a hash:
@@ -641,8 +709,8 @@ module Aws::Transfer
641
709
  #
642
710
  # @!attribute [rw] address_allocation_ids
643
711
  # A list of address allocation IDs that are required to attach an
644
- # Elastic IP address to your SFTP server's endpoint. This is only
645
- # valid in the `UpdateServer` API.
712
+ # Elastic IP address to your file transfer protocol-enabled server's
713
+ # endpoint. This is only valid in the `UpdateServer` API.
646
714
  #
647
715
  # <note markdown="1"> This property can only be use when `EndpointType` is set to `VPC`.
648
716
  #
@@ -650,8 +718,8 @@ module Aws::Transfer
650
718
  # @return [Array<String>]
651
719
  #
652
720
  # @!attribute [rw] subnet_ids
653
- # A list of subnet IDs that are required to host your SFTP server
654
- # endpoint in your VPC.
721
+ # A list of subnet IDs that are required to host your file transfer
722
+ # protocol-enabled server endpoint in your VPC.
655
723
  # @return [Array<String>]
656
724
  #
657
725
  # @!attribute [rw] vpc_endpoint_id
@@ -659,8 +727,8 @@ module Aws::Transfer
659
727
  # @return [String]
660
728
  #
661
729
  # @!attribute [rw] vpc_id
662
- # The VPC ID of the virtual private cloud in which the SFTP server's
663
- # endpoint will be hosted.
730
+ # The VPC ID of the VPC in which a file transfer protocol-enabled
731
+ # server's endpoint will be hosted.
664
732
  # @return [String]
665
733
  #
666
734
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/EndpointDetails AWS API Documentation
@@ -701,8 +769,8 @@ module Aws::Transfer
701
769
  end
702
770
 
703
771
  # Returns information related to the type of user authentication that is
704
- # in use for a server's users. A server can have only one method of
705
- # authentication.
772
+ # in use for a file transfer protocol-enabled server's users. A server
773
+ # can have only one method of authentication.
706
774
  #
707
775
  # @note When making an API call, you may pass IdentityProviderDetails
708
776
  # data as a hash:
@@ -713,13 +781,13 @@ module Aws::Transfer
713
781
  # }
714
782
  #
715
783
  # @!attribute [rw] url
716
- # The `Url` parameter provides contains the location of the service
717
- # endpoint used to authenticate users.
784
+ # Contains the location of the service endpoint used to authenticate
785
+ # users.
718
786
  # @return [String]
719
787
  #
720
788
  # @!attribute [rw] invocation_role
721
- # The `InvocationRole` parameter provides the type of `InvocationRole`
722
- # used to authenticate the user account.
789
+ # Provides the type of `InvocationRole` used to authenticate the user
790
+ # account.
723
791
  # @return [String]
724
792
  #
725
793
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/IdentityProviderDetails AWS API Documentation
@@ -740,7 +808,8 @@ module Aws::Transfer
740
808
  # }
741
809
  #
742
810
  # @!attribute [rw] server_id
743
- # A system-assigned unique identifier for an SFTP server.
811
+ # A system-assigned unique identifier for a file transfer
812
+ # protocol-enabled server.
744
813
  # @return [String]
745
814
  #
746
815
  # @!attribute [rw] ssh_public_key_body
@@ -748,8 +817,8 @@ module Aws::Transfer
748
817
  # @return [String]
749
818
  #
750
819
  # @!attribute [rw] user_name
751
- # The name of the user account that is assigned to one or more
752
- # servers.
820
+ # The name of the user account that is assigned to one or more file
821
+ # transfer protocol-enabled servers.
753
822
  # @return [String]
754
823
  #
755
824
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ImportSshPublicKeyRequest AWS API Documentation
@@ -761,17 +830,18 @@ module Aws::Transfer
761
830
  include Aws::Structure
762
831
  end
763
832
 
764
- # This response identifies the user, the server they belong to, and the
765
- # identifier of the SSH public key associated with that user. A user can
766
- # have more than one key on each server that they are associated with.
833
+ # Identifies the user, the file transfer protocol-enabled server they
834
+ # belong to, and the identifier of the SSH public key associated with
835
+ # that user. A user can have more than one key on each server that they
836
+ # are associated with.
767
837
  #
768
838
  # @!attribute [rw] server_id
769
- # A system-assigned unique identifier for an SFTP server.
839
+ # A system-assigned unique identifier for a file transfer
840
+ # protocol-enabled server.
770
841
  # @return [String]
771
842
  #
772
843
  # @!attribute [rw] ssh_public_key_id
773
- # This identifier is the name given to a public key by the system that
774
- # was imported.
844
+ # The name given to a public key by the system that was imported.
775
845
  # @return [String]
776
846
  #
777
847
  # @!attribute [rw] user_name
@@ -787,8 +857,8 @@ module Aws::Transfer
787
857
  include Aws::Structure
788
858
  end
789
859
 
790
- # This exception is thrown when an error occurs in the AWS Transfer for
791
- # SFTP service.
860
+ # This exception is thrown when an error occurs in the AWS Transfer
861
+ # Family service.
792
862
  #
793
863
  # @!attribute [rw] message
794
864
  # @return [String]
@@ -833,15 +903,15 @@ module Aws::Transfer
833
903
  # }
834
904
  #
835
905
  # @!attribute [rw] max_results
836
- # Specifies the number of servers to return as a response to the
837
- # `ListServers` query.
906
+ # Specifies the number of file transfer protocol-enabled servers to
907
+ # return as a response to the `ListServers` query.
838
908
  # @return [Integer]
839
909
  #
840
910
  # @!attribute [rw] next_token
841
- # When additional results are obtained from the `ListServers` command,
911
+ # When additional results are obtained from the`ListServers` command,
842
912
  # a `NextToken` parameter is returned in the output. You can then pass
843
913
  # the `NextToken` parameter in a subsequent command to continue
844
- # listing additional servers.
914
+ # listing additional file transfer protocol-enabled servers.
845
915
  # @return [String]
846
916
  #
847
917
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListServersRequest AWS API Documentation
@@ -856,11 +926,11 @@ module Aws::Transfer
856
926
  # When you can get additional results from the `ListServers`
857
927
  # operation, a `NextToken` parameter is returned in the output. In a
858
928
  # following command, you can pass in the `NextToken` parameter to
859
- # continue listing additional servers.
929
+ # continue listing additional file transfer protocol-enabled servers.
860
930
  # @return [String]
861
931
  #
862
932
  # @!attribute [rw] servers
863
- # An array of servers that were listed.
933
+ # An array of file transfer protocol-enabled servers that were listed.
864
934
  # @return [Array<Types::ListedServer>]
865
935
  #
866
936
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListServersResponse AWS API Documentation
@@ -908,7 +978,7 @@ module Aws::Transfer
908
978
  end
909
979
 
910
980
  # @!attribute [rw] arn
911
- # This value is the ARN you specified to list the tags of.
981
+ # The ARN you specified to list the tags of.
912
982
  # @return [String]
913
983
  #
914
984
  # @!attribute [rw] next_token
@@ -955,8 +1025,8 @@ module Aws::Transfer
955
1025
  # @return [String]
956
1026
  #
957
1027
  # @!attribute [rw] server_id
958
- # A system-assigned unique identifier for a Secure File Transfer
959
- # Protocol (SFTP) server that has users assigned to it.
1028
+ # A system-assigned unique identifier for a file transfer
1029
+ # protocol-enabled server that has users assigned to it.
960
1030
  # @return [String]
961
1031
  #
962
1032
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListUsersRequest AWS API Documentation
@@ -976,8 +1046,8 @@ module Aws::Transfer
976
1046
  # @return [String]
977
1047
  #
978
1048
  # @!attribute [rw] server_id
979
- # A system-assigned unique identifier for an SFTP server that the
980
- # users are assigned to.
1049
+ # A system-assigned unique identifier for a file transfer
1050
+ # protocol-enabled server that the users are assigned to.
981
1051
  # @return [String]
982
1052
  #
983
1053
  # @!attribute [rw] users
@@ -994,40 +1064,44 @@ module Aws::Transfer
994
1064
  include Aws::Structure
995
1065
  end
996
1066
 
997
- # Returns properties of the server that was specified.
1067
+ # Returns properties of a file transfer protocol-enabled server that was
1068
+ # specified.
998
1069
  #
999
1070
  # @!attribute [rw] arn
1000
- # The unique Amazon Resource Name (ARN) for the server to be listed.
1071
+ # The unique Amazon Resource Name (ARN) for a file transfer
1072
+ # protocol-enabled server to be listed.
1001
1073
  # @return [String]
1002
1074
  #
1003
1075
  # @!attribute [rw] identity_provider_type
1004
- # The authentication method used to validate a user for the server
1005
- # that was specified. This can include Secure Shell (SSH), user name
1006
- # and password combinations, or your own custom authentication method.
1007
- # Valid values include `SERVICE_MANAGED` or `API_GATEWAY`.
1076
+ # The authentication method used to validate a user for a file
1077
+ # transfer protocol-enabled server that was specified. This can
1078
+ # include Secure Shell (SSH), user name and password combinations, or
1079
+ # your own custom authentication method. Valid values include
1080
+ # `SERVICE_MANAGED` or `API_GATEWAY`.
1008
1081
  # @return [String]
1009
1082
  #
1010
1083
  # @!attribute [rw] endpoint_type
1011
- # The type of VPC endpoint that your SFTP server is connected to. If
1012
- # your SFTP server is connected to a VPC endpoint, your server isn't
1013
- # accessible over the public internet.
1084
+ # The type of VPC endpoint that your file transfer protocol-enabled
1085
+ # server is connected to. If your server is connected to a VPC
1086
+ # endpoint, your server isn't accessible over the public internet.
1014
1087
  # @return [String]
1015
1088
  #
1016
1089
  # @!attribute [rw] logging_role
1017
- # The AWS Identity and Access Management entity that allows the server
1018
- # to turn on Amazon CloudWatch logging.
1090
+ # The AWS Identity and Access Management (IAM) entity that allows a
1091
+ # file transfer protocol-enabled server to turn on Amazon CloudWatch
1092
+ # logging.
1019
1093
  # @return [String]
1020
1094
  #
1021
1095
  # @!attribute [rw] server_id
1022
- # This value is the unique system assigned identifier for the SFTP
1023
- # servers that were listed.
1096
+ # The unique system assigned identifier for a file transfer
1097
+ # protocol-enabled servers that were listed.
1024
1098
  # @return [String]
1025
1099
  #
1026
1100
  # @!attribute [rw] state
1027
- # This property describes the condition of the SFTP server for the
1028
- # server that was described. A value of `ONLINE`&gt; indicates that
1029
- # the server can accept jobs and transfer files. A `State` value of
1030
- # `OFFLINE` means that the server cannot perform file transfer
1101
+ # Describes the condition of a file transfer protocol-enabled server
1102
+ # for the server that was described. A value of `ONLINE` indicates
1103
+ # that the server can accept jobs and transfer files. A `State` value
1104
+ # of `OFFLINE` means that the server cannot perform file transfer
1031
1105
  # operations.
1032
1106
  #
1033
1107
  # The states of `STARTING` and `STOPPING` indicate that the server is
@@ -1037,8 +1111,8 @@ module Aws::Transfer
1037
1111
  # @return [String]
1038
1112
  #
1039
1113
  # @!attribute [rw] user_count
1040
- # This property is a numeric value that indicates the number of users
1041
- # that are assigned to the SFTP server you specified with the
1114
+ # A numeric value that indicates the number of users that are assigned
1115
+ # to a file transfer protocol-enabled server you specified with the
1042
1116
  # `ServerId`.
1043
1117
  # @return [Integer]
1044
1118
  #
@@ -1058,35 +1132,34 @@ module Aws::Transfer
1058
1132
  # Returns properties of the user that you specify.
1059
1133
  #
1060
1134
  # @!attribute [rw] arn
1061
- # This property is the unique Amazon Resource Name (ARN) for the user
1062
- # that you want to learn about.
1135
+ # The unique Amazon Resource Name (ARN) for the user that you want to
1136
+ # learn about.
1063
1137
  # @return [String]
1064
1138
  #
1065
1139
  # @!attribute [rw] home_directory
1066
- # This value specifies the location that files are written to or read
1067
- # from an Amazon S3 bucket for the user you specify by their ARN.
1140
+ # Specifies the location that files are written to or read from an
1141
+ # Amazon S3 bucket for the user you specify by their ARN.
1068
1142
  # @return [String]
1069
1143
  #
1070
1144
  # @!attribute [rw] home_directory_type
1071
1145
  # The type of landing directory (folder) you mapped for your users'
1072
1146
  # home directory. If you set it to `PATH`, the user will see the
1073
- # absolute Amazon S3 bucket paths as is in their SFTP clients. If you
1074
- # set it `LOGICAL`, you will need to provide mappings in the
1075
- # `HomeDirectoryMappings` for how you want to make S3 paths visible to
1076
- # your user.
1147
+ # absolute Amazon S3 bucket paths as is in their file transfer
1148
+ # protocol clients. If you set it `LOGICAL`, you will need to provide
1149
+ # mappings in the `HomeDirectoryMappings` for how you want to make
1150
+ # Amazon S3 paths visible to your users.
1077
1151
  # @return [String]
1078
1152
  #
1079
1153
  # @!attribute [rw] role
1080
1154
  # The role in use by this user. A *role* is an AWS Identity and Access
1081
- # Management (IAM) entity that, in this case, allows the SFTP server
1082
- # to act on a user's behalf. It allows the server to inherit the
1083
- # trust relationship that enables that user to perform file operations
1084
- # to their Amazon S3 bucket.
1155
+ # Management (IAM) entity that, in this case, allows a file transfer
1156
+ # protocol-enabled server to act on a user's behalf. It allows the
1157
+ # server to inherit the trust relationship that enables that user to
1158
+ # perform file operations to their Amazon S3 bucket.
1085
1159
  # @return [String]
1086
1160
  #
1087
1161
  # @!attribute [rw] ssh_public_key_count
1088
- # This value is the number of SSH public keys stored for the user you
1089
- # specified.
1162
+ # The number of SSH public keys stored for the user you specified.
1090
1163
  # @return [Integer]
1091
1164
  #
1092
1165
  # @!attribute [rw] user_name
@@ -1127,7 +1200,7 @@ module Aws::Transfer
1127
1200
  end
1128
1201
 
1129
1202
  # This exception is thrown when a resource is not found by the AWS
1130
- # Transfer for SFTP service.
1203
+ # Transfer Family service.
1131
1204
  #
1132
1205
  # @!attribute [rw] message
1133
1206
  # @return [String]
@@ -1147,8 +1220,8 @@ module Aws::Transfer
1147
1220
  include Aws::Structure
1148
1221
  end
1149
1222
 
1150
- # The request has failed because the AWS Transfer for SFTP service is
1151
- # not available.
1223
+ # The request has failed because the AWS Transfer Family service is not
1224
+ # available.
1152
1225
  #
1153
1226
  # @!attribute [rw] message
1154
1227
  # @return [String]
@@ -1161,11 +1234,11 @@ module Aws::Transfer
1161
1234
  end
1162
1235
 
1163
1236
  # Provides information about the public Secure Shell (SSH) key that is
1164
- # associated with a user account for a specific server (as identified by
1165
- # `ServerId`). The information returned includes the date the key was
1166
- # imported, the public key contents, and the public key ID. A user can
1167
- # store more than one SSH public key associated with their user name on
1168
- # a specific SFTP server.
1237
+ # associated with a user account for the specific file transfer
1238
+ # protocol-enabled server (as identified by `ServerId`). The information
1239
+ # returned includes the date the key was imported, the public key
1240
+ # contents, and the public key ID. A user can store more than one SSH
1241
+ # public key associated with their user name on a specific server.
1169
1242
  #
1170
1243
  # @!attribute [rw] date_imported
1171
1244
  # The date that the public key was added to the user account.
@@ -1197,8 +1270,8 @@ module Aws::Transfer
1197
1270
  # }
1198
1271
  #
1199
1272
  # @!attribute [rw] server_id
1200
- # A system-assigned unique identifier for an SFTP server that you
1201
- # start.
1273
+ # A system-assigned unique identifier for a file transfer
1274
+ # protocol-enabled server that you start.
1202
1275
  # @return [String]
1203
1276
  #
1204
1277
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/StartServerRequest AWS API Documentation
@@ -1216,8 +1289,8 @@ module Aws::Transfer
1216
1289
  # }
1217
1290
  #
1218
1291
  # @!attribute [rw] server_id
1219
- # A system-assigned unique identifier for an SFTP server that you
1220
- # stopped.
1292
+ # A system-assigned unique identifier for a file transfer
1293
+ # protocol-enabled server that you stopped.
1221
1294
  # @return [String]
1222
1295
  #
1223
1296
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/StopServerRequest AWS API Documentation
@@ -1247,8 +1320,8 @@ module Aws::Transfer
1247
1320
  # @return [String]
1248
1321
  #
1249
1322
  # @!attribute [rw] value
1250
- # This property contains one or more values that you assigned to the
1251
- # key name you create.
1323
+ # Contains one or more values that you assigned to the key name you
1324
+ # create.
1252
1325
  # @return [String]
1253
1326
  #
1254
1327
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/Tag AWS API Documentation
@@ -1298,27 +1371,42 @@ module Aws::Transfer
1298
1371
  # server_id: "ServerId", # required
1299
1372
  # user_name: "UserName", # required
1300
1373
  # user_password: "UserPassword",
1374
+ # server_protocol: "SFTP", # accepts SFTP, FTP, FTPS
1301
1375
  # }
1302
1376
  #
1303
1377
  # @!attribute [rw] server_id
1304
- # A system-assigned identifier for a specific server. That server's
1305
- # user authentication method is tested with a user name and password.
1378
+ # A system-assigned identifier for a specific file transfer
1379
+ # protocol-enabled server. That server's user authentication method
1380
+ # is tested with a user name and password.
1306
1381
  # @return [String]
1307
1382
  #
1308
1383
  # @!attribute [rw] user_name
1309
- # This request parameter is the name of the user account to be tested.
1384
+ # The name of the user account to be tested.
1310
1385
  # @return [String]
1311
1386
  #
1312
1387
  # @!attribute [rw] user_password
1313
1388
  # The password of the user account to be tested.
1314
1389
  # @return [String]
1315
1390
  #
1391
+ # @!attribute [rw] server_protocol
1392
+ # The type of file transfer protocol to be tested.
1393
+ #
1394
+ # The available protocols are:
1395
+ #
1396
+ # * Secure Shell (SSH) File Transfer Protocol (SFTP)
1397
+ #
1398
+ # * File Transfer Protocol Secure (FTPS)
1399
+ #
1400
+ # * File Transfer Protocol (FTP)
1401
+ # @return [String]
1402
+ #
1316
1403
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/TestIdentityProviderRequest AWS API Documentation
1317
1404
  #
1318
1405
  class TestIdentityProviderRequest < Struct.new(
1319
1406
  :server_id,
1320
1407
  :user_name,
1321
- :user_password)
1408
+ :user_password,
1409
+ :server_protocol)
1322
1410
  include Aws::Structure
1323
1411
  end
1324
1412
 
@@ -1371,9 +1459,9 @@ module Aws::Transfer
1371
1459
  # }
1372
1460
  #
1373
1461
  # @!attribute [rw] arn
1374
- # This is the value of the resource that will have the tag removed. An
1375
- # Amazon Resource Name (ARN) is an identifier for a specific AWS
1376
- # resource, such as a server, user, or role.
1462
+ # The value of the resource that will have the tag removed. An Amazon
1463
+ # Resource Name (ARN) is an identifier for a specific AWS resource,
1464
+ # such as a server, user, or role.
1377
1465
  # @return [String]
1378
1466
  #
1379
1467
  # @!attribute [rw] tag_keys
@@ -1394,6 +1482,7 @@ module Aws::Transfer
1394
1482
  # data as a hash:
1395
1483
  #
1396
1484
  # {
1485
+ # certificate: "Certificate",
1397
1486
  # endpoint_details: {
1398
1487
  # address_allocation_ids: ["AddressAllocationId"],
1399
1488
  # subnet_ids: ["SubnetId"],
@@ -1407,23 +1496,29 @@ module Aws::Transfer
1407
1496
  # invocation_role: "Role",
1408
1497
  # },
1409
1498
  # logging_role: "NullableRole",
1499
+ # protocols: ["SFTP"], # accepts SFTP, FTP, FTPS
1410
1500
  # server_id: "ServerId", # required
1411
1501
  # }
1412
1502
  #
1503
+ # @!attribute [rw] certificate
1504
+ # The Amazon Resource Name (ARN) of the AWS Certificate Manager (ACM)
1505
+ # certificate. Required when `Protocols` is set to `FTPS`.
1506
+ # @return [String]
1507
+ #
1413
1508
  # @!attribute [rw] endpoint_details
1414
1509
  # The virtual private cloud (VPC) endpoint settings that are
1415
- # configured for your SFTP server. With a VPC endpoint, you can
1416
- # restrict access to your SFTP server to resources only within your
1417
- # VPC. To control incoming internet traffic, you will need to
1418
- # associate one or more Elastic IP addresses with your server's
1419
- # endpoint.
1510
+ # configured for your file transfer protocol-enabled server. With a
1511
+ # VPC endpoint, you can restrict access to your server to resources
1512
+ # only within your VPC. To control incoming internet traffic, you will
1513
+ # need to associate one or more Elastic IP addresses with your
1514
+ # server's endpoint.
1420
1515
  # @return [Types::EndpointDetails]
1421
1516
  #
1422
1517
  # @!attribute [rw] endpoint_type
1423
- # The type of endpoint that you want your SFTP server to connect to.
1424
- # You can choose to connect to the public internet or a virtual
1425
- # private cloud (VPC) endpoint. With a VPC endpoint, your SFTP server
1426
- # isn't accessible over the public internet.
1518
+ # The type of endpoint that you want your file transfer
1519
+ # protocol-enabled server to connect to. You can choose to connect to
1520
+ # the public internet or a VPC endpoint. With a VPC endpoint, your
1521
+ # server isn't accessible over the public internet.
1427
1522
  # @return [String]
1428
1523
  #
1429
1524
  # @!attribute [rw] host_key
@@ -1431,46 +1526,66 @@ module Aws::Transfer
1431
1526
  # my-new-server-key`.
1432
1527
  #
1433
1528
  # If you aren't planning to migrate existing users from an existing
1434
- # SFTP server to a new AWS SFTP server, don't update the host key.
1435
- # Accidentally changing a server's host key can be disruptive.
1529
+ # file transfer protocol-enabled server to a new server, don't update
1530
+ # the host key. Accidentally changing a server's host key can be
1531
+ # disruptive.
1436
1532
  #
1437
- # For more information, see
1438
- # "https://docs.aws.amazon.com/transfer/latest/userguide/configuring-servers.html#change-host-key"
1439
- # in the *AWS SFTP User Guide.*
1533
+ # For more information, see [Changing the Host Key for Your AWS
1534
+ # Transfer Family Server][1] in the *AWS Transfer Family User Guide*.
1535
+ #
1536
+ #
1537
+ #
1538
+ # [1]: https://docs.aws.amazon.com/transfer/latest/userguide/configuring-servers.html#change-host-key
1440
1539
  # @return [String]
1441
1540
  #
1442
1541
  # @!attribute [rw] identity_provider_details
1443
- # This response parameter is an array containing all of the
1444
- # information required to call a customer's authentication API
1445
- # method.
1542
+ # An array containing all of the information required to call a
1543
+ # customer's authentication API method.
1446
1544
  # @return [Types::IdentityProviderDetails]
1447
1545
  #
1448
1546
  # @!attribute [rw] logging_role
1449
- # A value that changes the AWS Identity and Access Management (IAM)
1450
- # role that allows Amazon S3 events to be logged in Amazon CloudWatch,
1451
- # turning logging on or off.
1547
+ # Changes the AWS Identity and Access Management (IAM) role that
1548
+ # allows Amazon S3 events to be logged in Amazon CloudWatch, turning
1549
+ # logging on or off.
1452
1550
  # @return [String]
1453
1551
  #
1552
+ # @!attribute [rw] protocols
1553
+ # Specifies the file transfer protocol or protocols over which your
1554
+ # file transfer protocol client can connect to your server's
1555
+ # endpoint. The available protocols are:
1556
+ #
1557
+ # * Secure Shell (SSH) File Transfer Protocol (SFTP): File transfer
1558
+ # over SSH
1559
+ #
1560
+ # * File Transfer Protocol Secure (FTPS): File transfer with TLS
1561
+ # encryption
1562
+ #
1563
+ # * File Transfer Protocol (FTP): Unencrypted file transfer
1564
+ # @return [Array<String>]
1565
+ #
1454
1566
  # @!attribute [rw] server_id
1455
- # A system-assigned unique identifier for an SFTP server instance that
1456
- # the user account is assigned to.
1567
+ # A system-assigned unique identifier for a file transfer
1568
+ # protocol-enabled server instance that the user account is assigned
1569
+ # to.
1457
1570
  # @return [String]
1458
1571
  #
1459
1572
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateServerRequest AWS API Documentation
1460
1573
  #
1461
1574
  class UpdateServerRequest < Struct.new(
1575
+ :certificate,
1462
1576
  :endpoint_details,
1463
1577
  :endpoint_type,
1464
1578
  :host_key,
1465
1579
  :identity_provider_details,
1466
1580
  :logging_role,
1581
+ :protocols,
1467
1582
  :server_id)
1468
1583
  include Aws::Structure
1469
1584
  end
1470
1585
 
1471
1586
  # @!attribute [rw] server_id
1472
- # A system-assigned unique identifier for an SFTP server that the user
1473
- # account is assigned to.
1587
+ # A system-assigned unique identifier for a file transfer
1588
+ # protocol-enabled server that the user account is assigned to.
1474
1589
  # @return [String]
1475
1590
  #
1476
1591
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateServerResponse AWS API Documentation
@@ -1499,48 +1614,50 @@ module Aws::Transfer
1499
1614
  # }
1500
1615
  #
1501
1616
  # @!attribute [rw] home_directory
1502
- # A parameter that specifies the landing directory (folder) for a user
1503
- # when they log in to the server using their client.
1617
+ # Specifies the landing directory (folder) for a user when they log in
1618
+ # to the file transfer protocol-enabled server using their file
1619
+ # transfer protocol client.
1504
1620
  #
1505
- # An example is `<your-Amazon-S3-bucket-name>/home/username`.
1621
+ # An example is `your-Amazon-S3-bucket-name>/home/username`.
1506
1622
  # @return [String]
1507
1623
  #
1508
1624
  # @!attribute [rw] home_directory_type
1509
1625
  # The type of landing directory (folder) you want your users' home
1510
- # directory to be when they log into the SFTP serve. If you set it to
1511
- # `PATH`, the user will see the absolute Amazon S3 bucket paths as is
1512
- # in their SFTP clients. If you set it `LOGICAL`, you will need to
1513
- # provide mappings in the `HomeDirectoryMappings` for how you want to
1514
- # make S3 paths visible to your user.
1626
+ # directory to be when they log into the file transfer
1627
+ # protocol-enabled server. If you set it to `PATH`, the user will see
1628
+ # the absolute Amazon S3 bucket paths as is in their file transfer
1629
+ # protocol clients. If you set it `LOGICAL`, you will need to provide
1630
+ # mappings in the `HomeDirectoryMappings` for how you want to make
1631
+ # Amazon S3 paths visible to your users.
1515
1632
  # @return [String]
1516
1633
  #
1517
1634
  # @!attribute [rw] home_directory_mappings
1518
- # Logical directory mappings that specify what S3 paths and keys
1519
- # should be visible to your user and how you want to make them
1635
+ # Logical directory mappings that specify what Amazon S3 paths and
1636
+ # keys should be visible to your user and how you want to make them
1520
1637
  # visible. You will need to specify the "`Entry`" and "`Target`"
1521
1638
  # pair, where `Entry` shows how the path is made visible and `Target`
1522
- # is the actual S3 path. If you only specify a target, it will be
1523
- # displayed as is. You will need to also make sure that your AWS IAM
1524
- # Role provides access to paths in `Target`. The following is an
1639
+ # is the actual Amazon S3 path. If you only specify a target, it will
1640
+ # be displayed as is. You will need to also make sure that your AWS
1641
+ # IAM Role provides access to paths in `Target`. The following is an
1525
1642
  # example.
1526
1643
  #
1527
1644
  # `'[ "/bucket2/documentation", \{ "Entry":
1528
1645
  # "your-personal-report.pdf", "Target":
1529
1646
  # "/bucket3/customized-reports/$\{transfer:UserName\}.pdf" \} ]'`
1530
1647
  #
1531
- # In most cases, you can use this value instead of the scope down
1648
+ # In most cases, you can use this value instead of the scope-down
1532
1649
  # policy to lock your user down to the designated home directory
1533
1650
  # ("chroot"). To do this, you can set `Entry` to '/' and set
1534
1651
  # `Target` to the HomeDirectory parameter value.
1535
1652
  #
1536
- # <note markdown="1"> If the target of a logical directory entry does not exist in S3, the
1537
- # entry will be ignored. As a workaround, you can use the S3 api to
1538
- # create 0 byte objects as place holders for your directory. If using
1539
- # the CLI, use the s3api call instead of s3 so you can use the
1540
- # put-object operation. For example, you use the following: `aws s3api
1541
- # put-object --bucket bucketname --key path/to/folder/`. Make sure
1542
- # that the end of the key name ends in a / for it to be considered a
1543
- # folder.
1653
+ # <note markdown="1"> If the target of a logical directory entry does not exist in Amazon
1654
+ # S3, the entry will be ignored. As a workaround, you can use the
1655
+ # Amazon S3 api to create 0 byte objects as place holders for your
1656
+ # directory. If using the CLI, use the `s3api` call instead of `s3` so
1657
+ # you can use the put-object operation. For example, you use the
1658
+ # following: `aws s3api put-object --bucket bucketname --key
1659
+ # path/to/folder/`. Make sure that the end of the key name ends in a /
1660
+ # for it to be considered a folder.
1544
1661
  #
1545
1662
  # </note>
1546
1663
  # @return [Array<Types::HomeDirectoryMapEntry>]
@@ -1553,44 +1670,48 @@ module Aws::Transfer
1553
1670
  # include `$\{Transfer:UserName\}`, `$\{Transfer:HomeDirectory\}`, and
1554
1671
  # `$\{Transfer:HomeBucket\}`.
1555
1672
  #
1556
- # <note markdown="1"> For scope-down policies, AWS Transfer for SFTP stores the policy as
1557
- # a JSON blob, instead of the Amazon Resource Name (ARN) of the
1558
- # policy. You save the policy as a JSON blob and pass it in the
1559
- # `Policy` argument.
1673
+ # <note markdown="1"> For scope-down policies, AWS Transfer Family stores the policy as a
1674
+ # JSON blob, instead of the Amazon Resource Name (ARN) of the policy.
1675
+ # You save the policy as a JSON blob and pass it in the `Policy`
1676
+ # argument.
1560
1677
  #
1561
- # For an example of a scope-down policy, see
1562
- # "https://docs.aws.amazon.com/transfer/latest/userguide/users.html#users-policies-scope-down"&gt;Creating
1563
- # a Scope-Down Policy.
1678
+ # For an example of a scope-down policy, see [Creating a Scope-Down
1679
+ # Policy][1].
1564
1680
  #
1565
- # For more information, see
1566
- # "https://docs.aws.amazon.com/STS/latest/APIReference/API\_AssumeRole.html"
1567
- # in the *AWS Security Token Service API Reference*.
1681
+ # For more information, see [AssumeRole][2] in the *AWS Security Token
1682
+ # Service API Reference*.
1568
1683
  #
1569
1684
  # </note>
1685
+ #
1686
+ #
1687
+ #
1688
+ # [1]: https://docs.aws.amazon.com/transfer/latest/userguide/users.html#users-policies-scope-down
1689
+ # [2]: https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html
1570
1690
  # @return [String]
1571
1691
  #
1572
1692
  # @!attribute [rw] role
1573
- # The IAM role that controls your user's access to your Amazon S3
1693
+ # The IAM role that controls your users' access to your Amazon S3
1574
1694
  # bucket. The policies attached to this role will determine the level
1575
1695
  # of access you want to provide your users when transferring files
1576
1696
  # into and out of your Amazon S3 bucket or buckets. The IAM role
1577
- # should also contain a trust relationship that allows the Secure File
1578
- # Transfer Protocol (SFTP) server to access your resources when
1579
- # servicing your SFTP user's transfer requests.
1697
+ # should also contain a trust relationship that allows the file
1698
+ # transfer protocol-enabled server to access your resources when
1699
+ # servicing your users' transfer requests.
1580
1700
  # @return [String]
1581
1701
  #
1582
1702
  # @!attribute [rw] server_id
1583
- # A system-assigned unique identifier for an SFTP server instance that
1584
- # the user account is assigned to.
1703
+ # A system-assigned unique identifier for a file transfer
1704
+ # protocol-enabled server instance that the user account is assigned
1705
+ # to.
1585
1706
  # @return [String]
1586
1707
  #
1587
1708
  # @!attribute [rw] user_name
1588
- # A unique string that identifies a user and is associated with a
1589
- # server as specified by the `ServerId`. This is the string that will
1590
- # be used by your user when they log in to your SFTP server. This user
1591
- # name is a minimum of 3 and a maximum of 32 characters long. The
1592
- # following are valid characters: a-z, A-Z, 0-9, underscore, and
1593
- # hyphen. The user name can't start with a hyphen.
1709
+ # A unique string that identifies a user and is associated with a file
1710
+ # transfer protocol-enabled server as specified by the `ServerId`.
1711
+ # This is the string that will be used by your user when they log in
1712
+ # to your server. This user name is a minimum of 3 and a maximum of 32
1713
+ # characters long. The following are valid characters: a-z, A-Z, 0-9,
1714
+ # underscore, and hyphen. The user name can't start with a hyphen.
1594
1715
  # @return [String]
1595
1716
  #
1596
1717
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateUserRequest AWS API Documentation
@@ -1606,17 +1727,19 @@ module Aws::Transfer
1606
1727
  include Aws::Structure
1607
1728
  end
1608
1729
 
1609
- # `UpdateUserResponse` returns the user name and server identifier for
1610
- # the request to update a user's properties.
1730
+ # `UpdateUserResponse` returns the user name and file transfer
1731
+ # protocol-enabled server identifier for the request to update a user's
1732
+ # properties.
1611
1733
  #
1612
1734
  # @!attribute [rw] server_id
1613
- # A system-assigned unique identifier for an SFTP server instance that
1614
- # the user account is assigned to.
1735
+ # A system-assigned unique identifier for a file transfer
1736
+ # protocol-enabled server instance that the user account is assigned
1737
+ # to.
1615
1738
  # @return [String]
1616
1739
  #
1617
1740
  # @!attribute [rw] user_name
1618
- # The unique identifier for a user that is assigned to the SFTP server
1619
- # instance that was specified in the request.
1741
+ # The unique identifier for a user that is assigned to a file transfer
1742
+ # protocol-enabled server instance that was specified in the request.
1620
1743
  # @return [String]
1621
1744
  #
1622
1745
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateUserResponse AWS API Documentation