aws-sdk-transfer 1.15.0 → 1.20.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 640f4f4d43eb97008366aea349e471a7ec69b1e3
4
- data.tar.gz: 2b8ba0c1a8dcd6d87cddd7f6fb3e41549fa0b40b
2
+ SHA256:
3
+ metadata.gz: 90dc7322cdebf9a63dc91e89550505d8602b4ecc4d9a25ae5985158aa165991f
4
+ data.tar.gz: b73403e5937ceb79803af79f963586e73b3be59c2696ae9d5b1a23afaf85ff76
5
5
  SHA512:
6
- metadata.gz: 1acd1ed522cc99b0608011624e750c1805eef04e2ad86f42dad100834eaaf2ba8e7c8b7a34db04e35d6e319181a8246fe5207a2b6b84c573818c9d54f26cf23c
7
- data.tar.gz: eeb3e5a1d74130be87048906d6845253bf96c9414a9cc8fd7b958d23ec8ad568dd62c48aa1be5621949d36a66521b379c54452f1a899e581dce298d32332324b
6
+ metadata.gz: 3ac272cd20b7cf50e64aaf28e5cc7e8755c23572f4b53891358d279ee8bba3189078f7ded09f1618e227a537eb05a9c5d55dc5ddbce181e6f1334ee679695249
7
+ data.tar.gz: a7818347b0fe6a3763c4859604fec3755d245c99c7946e7a30f457e5201c4d6f4a20f8f0664a9046171cd95b8719b50f6d21a62fc7c53f4b50b67d22294bad95
@@ -15,7 +15,7 @@ require_relative 'aws-sdk-transfer/errors'
15
15
  require_relative 'aws-sdk-transfer/resource'
16
16
  require_relative 'aws-sdk-transfer/customizations'
17
17
 
18
- # This module provides support for AWS Transfer for SFTP. This module is available in the
18
+ # This module provides support for AWS Transfer Family. This module is available in the
19
19
  # `aws-sdk-transfer` gem.
20
20
  #
21
21
  # # Client
@@ -24,17 +24,20 @@ require_relative 'aws-sdk-transfer/customizations'
24
24
  # methods each accept a hash of request parameters and return a response
25
25
  # structure.
26
26
  #
27
+ # transfer = Aws::Transfer::Client.new
28
+ # resp = transfer.create_server(params)
29
+ #
27
30
  # See {Client} for more information.
28
31
  #
29
32
  # # Errors
30
33
  #
31
- # Errors returned from AWS Transfer for SFTP all
32
- # extend {Errors::ServiceError}.
34
+ # Errors returned from AWS Transfer Family are defined in the
35
+ # {Errors} module and all extend {Errors::ServiceError}.
33
36
  #
34
37
  # begin
35
38
  # # do stuff
36
39
  # rescue Aws::Transfer::Errors::ServiceError
37
- # # rescues all service API errors
40
+ # # rescues all AWS Transfer Family API errors
38
41
  # end
39
42
  #
40
43
  # See {Errors} for more information.
@@ -42,6 +45,6 @@ require_relative 'aws-sdk-transfer/customizations'
42
45
  # @service
43
46
  module Aws::Transfer
44
47
 
45
- GEM_VERSION = '1.15.0'
48
+ GEM_VERSION = '1.20.0'
46
49
 
47
50
  end
@@ -30,6 +30,18 @@ require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
30
30
  Aws::Plugins::GlobalConfiguration.add_identifier(:transfer)
31
31
 
32
32
  module Aws::Transfer
33
+ # An API client for Transfer. To construct a client, you need to configure a `:region` and `:credentials`.
34
+ #
35
+ # client = Aws::Transfer::Client.new(
36
+ # region: region_name,
37
+ # credentials: credentials,
38
+ # # ...
39
+ # )
40
+ #
41
+ # For details on configuring region and credentials see
42
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
43
+ #
44
+ # See {#initialize} for a full list of supported configuration options.
33
45
  class Client < Seahorse::Client::Base
34
46
 
35
47
  include Aws::ClientStubs
@@ -93,7 +105,7 @@ module Aws::Transfer
93
105
  # @option options [required, String] :region
94
106
  # The AWS region to connect to. The configured `:region` is
95
107
  # used to determine the service `:endpoint`. When not passed,
96
- # a default `:region` is search for in the following locations:
108
+ # a default `:region` is searched for in the following locations:
97
109
  #
98
110
  # * `Aws.config[:region]`
99
111
  # * `ENV['AWS_REGION']`
@@ -108,6 +120,12 @@ module Aws::Transfer
108
120
  # When set to `true`, a thread polling for endpoints will be running in
109
121
  # the background every 60 secs (default). Defaults to `false`.
110
122
  #
123
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
124
+ # Used only in `adaptive` retry mode. When true, the request will sleep
125
+ # until there is sufficent client side capacity to retry the request.
126
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
127
+ # not retry instead of sleeping.
128
+ #
111
129
  # @option options [Boolean] :client_side_monitoring (false)
112
130
  # When `true`, client-side metrics will be collected for all API requests from
113
131
  # this client.
@@ -132,6 +150,10 @@ module Aws::Transfer
132
150
  # When `true`, an attempt is made to coerce request parameters into
133
151
  # the required types.
134
152
  #
153
+ # @option options [Boolean] :correct_clock_skew (true)
154
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
155
+ # a clock skew correction and retry requests with skewed client clocks.
156
+ #
135
157
  # @option options [Boolean] :disable_host_prefix_injection (false)
136
158
  # Set to true to disable SDK automatically adding host prefix
137
159
  # to default service endpoint when available.
@@ -139,7 +161,7 @@ module Aws::Transfer
139
161
  # @option options [String] :endpoint
140
162
  # The client endpoint is normally constructed from the `:region`
141
163
  # option. You should only configure an `:endpoint` when connecting
142
- # to test endpoints. This should be avalid HTTP(S) URI.
164
+ # to test endpoints. This should be a valid HTTP(S) URI.
143
165
  #
144
166
  # @option options [Integer] :endpoint_cache_max_entries (1000)
145
167
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -154,7 +176,7 @@ module Aws::Transfer
154
176
  # requests fetching endpoints information. Defaults to 60 sec.
155
177
  #
156
178
  # @option options [Boolean] :endpoint_discovery (false)
157
- # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
179
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
158
180
  #
159
181
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
160
182
  # The log formatter.
@@ -166,15 +188,29 @@ module Aws::Transfer
166
188
  # The Logger instance to send log messages to. If this option
167
189
  # is not set, logging will be disabled.
168
190
  #
191
+ # @option options [Integer] :max_attempts (3)
192
+ # An integer representing the maximum number attempts that will be made for
193
+ # a single request, including the initial attempt. For example,
194
+ # setting this value to 5 will result in a request being retried up to
195
+ # 4 times. Used in `standard` and `adaptive` retry modes.
196
+ #
169
197
  # @option options [String] :profile ("default")
170
198
  # Used when loading credentials from the shared credentials file
171
199
  # at HOME/.aws/credentials. When not specified, 'default' is used.
172
200
  #
201
+ # @option options [Proc] :retry_backoff
202
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
203
+ # This option is only used in the `legacy` retry mode.
204
+ #
173
205
  # @option options [Float] :retry_base_delay (0.3)
174
- # The base delay in seconds used by the default backoff function.
206
+ # The base delay in seconds used by the default backoff function. This option
207
+ # is only used in the `legacy` retry mode.
175
208
  #
176
209
  # @option options [Symbol] :retry_jitter (:none)
177
- # A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number.
210
+ # A delay randomiser function used by the default backoff function.
211
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
212
+ # otherwise a Proc that takes and returns a number. This option is only used
213
+ # in the `legacy` retry mode.
178
214
  #
179
215
  # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
180
216
  #
@@ -182,11 +218,30 @@ module Aws::Transfer
182
218
  # The maximum number of times to retry failed requests. Only
183
219
  # ~ 500 level server errors and certain ~ 400 level client errors
184
220
  # are retried. Generally, these are throttling errors, data
185
- # checksum errors, networking errors, timeout errors and auth
186
- # errors from expired credentials.
221
+ # checksum errors, networking errors, timeout errors, auth errors,
222
+ # endpoint discovery, and errors from expired credentials.
223
+ # This option is only used in the `legacy` retry mode.
187
224
  #
188
225
  # @option options [Integer] :retry_max_delay (0)
189
- # The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function.
226
+ # The maximum number of seconds to delay between retries (0 for no limit)
227
+ # used by the default backoff function. This option is only used in the
228
+ # `legacy` retry mode.
229
+ #
230
+ # @option options [String] :retry_mode ("legacy")
231
+ # Specifies which retry algorithm to use. Values are:
232
+ #
233
+ # * `legacy` - The pre-existing retry behavior. This is default value if
234
+ # no retry mode is provided.
235
+ #
236
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
237
+ # This includes support for retry quotas, which limit the number of
238
+ # unsuccessful retries a client can make.
239
+ #
240
+ # * `adaptive` - An experimental retry mode that includes all the
241
+ # functionality of `standard` mode along with automatic client side
242
+ # throttling. This is a provisional mode that may change behavior
243
+ # in the future.
244
+ #
190
245
  #
191
246
  # @option options [String] :secret_access_key
192
247
  #
@@ -219,16 +274,15 @@ module Aws::Transfer
219
274
  # requests through. Formatted like 'http://proxy.com:123'.
220
275
  #
221
276
  # @option options [Float] :http_open_timeout (15) The number of
222
- # seconds to wait when opening a HTTP session before rasing a
277
+ # seconds to wait when opening a HTTP session before raising a
223
278
  # `Timeout::Error`.
224
279
  #
225
280
  # @option options [Integer] :http_read_timeout (60) The default
226
281
  # number of seconds to wait for response data. This value can
227
- # safely be set
228
- # per-request on the session yeidled by {#session_for}.
282
+ # safely be set per-request on the session.
229
283
  #
230
284
  # @option options [Float] :http_idle_timeout (5) The number of
231
- # seconds a connection is allowed to sit idble before it is
285
+ # seconds a connection is allowed to sit idle before it is
232
286
  # considered stale. Stale connections are closed and removed
233
287
  # from the pool before making a request.
234
288
  #
@@ -237,7 +291,7 @@ module Aws::Transfer
237
291
  # request body. This option has no effect unless the request has
238
292
  # "Expect" header set to "100-continue". Defaults to `nil` which
239
293
  # disables this behaviour. This value can safely be set per
240
- # request on the session yeidled by {#session_for}.
294
+ # request on the session.
241
295
  #
242
296
  # @option options [Boolean] :http_wire_trace (false) When `true`,
243
297
  # HTTP debug output will be sent to the `:logger`.
@@ -264,55 +318,81 @@ module Aws::Transfer
264
318
 
265
319
  # @!group API Operations
266
320
 
267
- # Instantiates an autoscaling virtual server based on Secure File
268
- # Transfer Protocol (SFTP) in AWS. When you make updates to your server
269
- # or when you work with users, use the service-generated `ServerId`
270
- # property that is assigned to the newly created server.
321
+ # Instantiates an autoscaling virtual server based on the selected file
322
+ # transfer protocol in AWS. When you make updates to your file transfer
323
+ # protocol-enabled server or when you work with users, use the
324
+ # service-generated `ServerId` property that is assigned to the newly
325
+ # created server.
326
+ #
327
+ # @option params [String] :certificate
328
+ # The Amazon Resource Name (ARN) of the AWS Certificate Manager (ACM)
329
+ # certificate. Required when `Protocols` is set to `FTPS`.
271
330
  #
272
331
  # @option params [Types::EndpointDetails] :endpoint_details
273
- # The virtual private cloud (VPC) endpoint settings that you want to
274
- # configure for your SFTP server. This parameter is required when you
275
- # specify a value for the `EndpointType` parameter.
332
+ # The virtual private cloud (VPC) endpoint settings that are configured
333
+ # for your file transfer protocol-enabled server. When you host your
334
+ # endpoint within your VPC, you can make it accessible only to resources
335
+ # within your VPC, or you can attach Elastic IPs and make it accessible
336
+ # to clients over the internet. Your VPC's default security groups are
337
+ # automatically assigned to your endpoint.
276
338
  #
277
339
  # @option params [String] :endpoint_type
278
- # The type of VPC endpoint that you want your SFTP server to connect to.
279
- # If you connect to a VPC endpoint, your SFTP server isn't accessible
280
- # over the public internet.
340
+ # The type of VPC endpoint that you want your file transfer
341
+ # protocol-enabled server to connect to. You can choose to connect to
342
+ # the public internet or a virtual private cloud (VPC) endpoint. With a
343
+ # VPC endpoint, you can restrict access to your server and resources
344
+ # only within your VPC.
281
345
  #
282
346
  # @option params [String] :host_key
283
347
  # The RSA private key as generated by the `ssh-keygen -N "" -f
284
348
  # my-new-server-key` command.
285
349
  #
286
350
  # If you aren't planning to migrate existing users from an existing
287
- # SFTP server to a new AWS SFTP server, don't update the host key.
351
+ # SFTP-enabled server to a new server, don't update the host key.
288
352
  # Accidentally changing a server's host key can be disruptive.
289
353
  #
290
- # For more information, see
291
- # "https://alpha-docs-aws.amazon.com/transfer/latest/userguide/configuring-servers.html#change-host-key"
292
- # in the *AWS SFTP User Guide.*
354
+ # For more information, see [Changing the Host Key for Your AWS Transfer
355
+ # Family Server][1] in the *AWS Transfer Family User Guide*.
356
+ #
357
+ #
358
+ #
359
+ # [1]: https://docs.aws.amazon.com/transfer/latest/userguide/configuring-servers.html#change-host-key
293
360
  #
294
361
  # @option params [Types::IdentityProviderDetails] :identity_provider_details
295
- # This parameter is required when the `IdentityProviderType` is set to
296
- # `API_GATEWAY`. Accepts an array containing all of the information
297
- # required to call a customer-supplied authentication API, including the
298
- # API Gateway URL. This property is not required when the
299
- # `IdentityProviderType` is set to `SERVICE_MANAGED`.
362
+ # Required when `IdentityProviderType` is set to `API_GATEWAY`. Accepts
363
+ # an array containing all of the information required to call a
364
+ # customer-supplied authentication API, including the API Gateway URL.
365
+ # Not required when `IdentityProviderType` is set to `SERVICE_MANAGED`.
300
366
  #
301
367
  # @option params [String] :identity_provider_type
302
- # Specifies the mode of authentication for the SFTP server. The default
303
- # value is `SERVICE_MANAGED`, which allows you to store and access SFTP
304
- # user credentials within the AWS Transfer for SFTP service. Use the
305
- # `API_GATEWAY` value to integrate with an identity provider of your
306
- # choosing. The `API_GATEWAY` setting requires you to provide an API
307
- # Gateway endpoint URL to call for authentication using the
308
- # `IdentityProviderDetails` parameter.
368
+ # Specifies the mode of authentication for a file transfer
369
+ # protocol-enabled server. The default value is `SERVICE_MANAGED`, which
370
+ # allows you to store and access user credentials within the AWS
371
+ # Transfer Family service. Use the `API_GATEWAY` value to integrate with
372
+ # an identity provider of your choosing. The `API_GATEWAY` setting
373
+ # requires you to provide an API Gateway endpoint URL to call for
374
+ # authentication using the `IdentityProviderDetails` parameter.
309
375
  #
310
376
  # @option params [String] :logging_role
311
- # A value that allows the service to write your SFTP users' activity to
312
- # your Amazon CloudWatch logs for monitoring and auditing purposes.
377
+ # Allows the service to write your users' activity to your Amazon
378
+ # CloudWatch logs for monitoring and auditing purposes.
379
+ #
380
+ # @option params [Array<String>] :protocols
381
+ # Specifies the file transfer protocol or protocols over which your file
382
+ # transfer protocol client can connect to your server's endpoint. The
383
+ # available protocols are:
384
+ #
385
+ # * Secure Shell (SSH) File Transfer Protocol (SFTP): File transfer over
386
+ # SSH
387
+ #
388
+ # * File Transfer Protocol Secure (FTPS): File transfer with TLS
389
+ # encryption
390
+ #
391
+ # * File Transfer Protocol (FTP): Unencrypted file transfer
313
392
  #
314
393
  # @option params [Array<Types::Tag>] :tags
315
- # Key-value pairs that can be used to group and search for servers.
394
+ # Key-value pairs that can be used to group and search for file transfer
395
+ # protocol-enabled servers.
316
396
  #
317
397
  # @return [Types::CreateServerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
318
398
  #
@@ -321,10 +401,14 @@ module Aws::Transfer
321
401
  # @example Request syntax with placeholder values
322
402
  #
323
403
  # resp = client.create_server({
404
+ # certificate: "Certificate",
324
405
  # endpoint_details: {
406
+ # address_allocation_ids: ["AddressAllocationId"],
407
+ # subnet_ids: ["SubnetId"],
325
408
  # vpc_endpoint_id: "VpcEndpointId",
409
+ # vpc_id: "VpcId",
326
410
  # },
327
- # endpoint_type: "PUBLIC", # accepts PUBLIC, VPC_ENDPOINT
411
+ # endpoint_type: "PUBLIC", # accepts PUBLIC, VPC, VPC_ENDPOINT
328
412
  # host_key: "HostKey",
329
413
  # identity_provider_details: {
330
414
  # url: "Url",
@@ -332,6 +416,7 @@ module Aws::Transfer
332
416
  # },
333
417
  # identity_provider_type: "SERVICE_MANAGED", # accepts SERVICE_MANAGED, API_GATEWAY
334
418
  # logging_role: "Role",
419
+ # protocols: ["SFTP"], # accepts SFTP, FTP, FTPS
335
420
  # tags: [
336
421
  # {
337
422
  # key: "TagKey", # required
@@ -353,47 +438,59 @@ module Aws::Transfer
353
438
  req.send_request(options)
354
439
  end
355
440
 
356
- # Creates a user and associates them with an existing Secure File
357
- # Transfer Protocol (SFTP) server. You can only create and associate
358
- # users with SFTP servers that have the `IdentityProviderType` set to
359
- # `SERVICE_MANAGED`. Using parameters for `CreateUser`, you can specify
360
- # the user name, set the home directory, store the user's public key,
361
- # and assign the user's AWS Identity and Access Management (IAM) role.
362
- # You can also optionally add a scope-down policy, and assign metadata
363
- # with tags that can be used to group and search for users.
441
+ # Creates a user and associates them with an existing file transfer
442
+ # protocol-enabled server. You can only create and associate users with
443
+ # servers that have the `IdentityProviderType` set to `SERVICE_MANAGED`.
444
+ # Using parameters for `CreateUser`, you can specify the user name, set
445
+ # the home directory, store the user's public key, and assign the
446
+ # user's AWS Identity and Access Management (IAM) role. You can also
447
+ # optionally add a scope-down policy, and assign metadata with tags that
448
+ # can be used to group and search for users.
364
449
  #
365
450
  # @option params [String] :home_directory
366
- # The landing directory (folder) for a user when they log in to the
367
- # server using their SFTP client.
451
+ # The landing directory (folder) for a user when they log in to the file
452
+ # transfer protocol-enabled server using the client.
368
453
  #
369
- # An example is &lt;`your-Amazon-S3-bucket-name>/home/username`.
454
+ # An example is `your-Amazon-S3-bucket-name>/home/username`.
370
455
  #
371
456
  # @option params [String] :home_directory_type
372
457
  # The type of landing directory (folder) you want your users' home
373
- # directory to be when they log into the SFTP server. If you set it to
374
- # `PATH`, the user will see the absolute Amazon S3 bucket paths as is in
375
- # their SFTP clients. If you set it `LOGICAL`, you will need to provide
376
- # mappings in the `HomeDirectoryMappings` for how you want to make S3
377
- # paths visible to your user.
458
+ # directory to be when they log into the file transfer protocol-enabled
459
+ # server. If you set it to `PATH`, the user will see the absolute Amazon
460
+ # S3 bucket paths as is in their file transfer protocol clients. If you
461
+ # set it `LOGICAL`, you will need to provide mappings in the
462
+ # `HomeDirectoryMappings` for how you want to make Amazon S3 paths
463
+ # visible to your users.
378
464
  #
379
465
  # @option params [Array<Types::HomeDirectoryMapEntry>] :home_directory_mappings
380
- # Logical directory mappings that specify what S3 paths and keys should
381
- # be visible to your user and how you want to make them visible. You
382
- # will need to specify the "`Entry`" and "`Target`" pair, where
466
+ # Logical directory mappings that specify what Amazon S3 paths and keys
467
+ # should be visible to your user and how you want to make them visible.
468
+ # You will need to specify the "`Entry`" and "`Target`" pair, where
383
469
  # `Entry` shows how the path is made visible and `Target` is the actual
384
- # S3 path. If you only specify a target, it will be displayed as is. You
385
- # will need to also make sure that your AWS IAM Role provides access to
386
- # paths in `Target`. The following is an example.
470
+ # Amazon S3 path. If you only specify a target, it will be displayed as
471
+ # is. You will need to also make sure that your AWS IAM Role provides
472
+ # access to paths in `Target`. The following is an example.
387
473
  #
388
474
  # `'[ "/bucket2/documentation", \{ "Entry": "your-personal-report.pdf",
389
475
  # "Target": "/bucket3/customized-reports/$\{transfer:UserName\}.pdf" \}
390
476
  # ]'`
391
477
  #
392
- # In most cases, you can use this value instead of the scope down policy
478
+ # In most cases, you can use this value instead of the scope-down policy
393
479
  # to lock your user down to the designated home directory ("chroot").
394
480
  # To do this, you can set `Entry` to '/' and set `Target` to the
395
481
  # HomeDirectory parameter value.
396
482
  #
483
+ # <note markdown="1"> If the target of a logical directory entry does not exist in Amazon
484
+ # S3, the entry will be ignored. As a workaround, you can use the Amazon
485
+ # S3 api to create 0 byte objects as place holders for your directory.
486
+ # If using the CLI, use the `s3api` call instead of `s3` so you can use
487
+ # the put-object operation. For example, you use the following: `aws
488
+ # s3api put-object --bucket bucketname --key path/to/folder/`. Make sure
489
+ # that the end of the key name ends in a '/' for it to be considered a
490
+ # folder.
491
+ #
492
+ # </note>
493
+ #
397
494
  # @option params [String] :policy
398
495
  # A scope-down policy for your user so you can use the same IAM role
399
496
  # across multiple users. This policy scopes down user access to portions
@@ -401,47 +498,52 @@ module Aws::Transfer
401
498
  # policy include `$\{Transfer:UserName\}`,
402
499
  # `$\{Transfer:HomeDirectory\}`, and `$\{Transfer:HomeBucket\}`.
403
500
  #
404
- # <note markdown="1"> For scope-down policies, AWS Transfer for SFTP stores the policy as a
501
+ # <note markdown="1"> For scope-down policies, AWS Transfer Family stores the policy as a
405
502
  # JSON blob, instead of the Amazon Resource Name (ARN) of the policy.
406
503
  # You save the policy as a JSON blob and pass it in the `Policy`
407
504
  # argument.
408
505
  #
409
- # For an example of a scope-down policy, see
410
- # "https://docs.aws.amazon.com/transfer/latest/userguide/users.html#users-policies-scope-down"&gt;Creating
411
- # a Scope-Down Policy.
506
+ # For an example of a scope-down policy, see [Creating a Scope-Down
507
+ # Policy][1].
412
508
  #
413
- # For more information, see
414
- # "https://docs.aws.amazon.com/STS/latest/APIReference/API\_AssumeRole.html"
415
- # in the *AWS Security Token Service API Reference*.
509
+ # For more information, see [AssumeRole][2] in the *AWS Security Token
510
+ # Service API Reference*.
416
511
  #
417
512
  # </note>
418
513
  #
514
+ #
515
+ #
516
+ # [1]: https://docs.aws.amazon.com/transfer/latest/userguide/users.html#users-policies-scope-down
517
+ # [2]: https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html
518
+ #
419
519
  # @option params [required, String] :role
420
- # The IAM role that controls your user's access to your Amazon S3
520
+ # The IAM role that controls your users' access to your Amazon S3
421
521
  # bucket. The policies attached to this role will determine the level of
422
522
  # access you want to provide your users when transferring files into and
423
523
  # out of your Amazon S3 bucket or buckets. The IAM role should also
424
- # contain a trust relationship that allows the SFTP server to access
425
- # your resources when servicing your SFTP user's transfer requests.
524
+ # contain a trust relationship that allows the file transfer
525
+ # protocol-enabled server to access your resources when servicing your
526
+ # users' transfer requests.
426
527
  #
427
528
  # @option params [required, String] :server_id
428
- # A system-assigned unique identifier for an SFTP server instance. This
429
- # is the specific SFTP server that you added your user to.
529
+ # A system-assigned unique identifier for a file transfer
530
+ # protocol-enabled server instance. This is the specific server that you
531
+ # added your user to.
430
532
  #
431
533
  # @option params [String] :ssh_public_key_body
432
534
  # The public portion of the Secure Shell (SSH) key used to authenticate
433
- # the user to the SFTP server.
535
+ # the user to the file transfer protocol-enabled server.
434
536
  #
435
537
  # @option params [Array<Types::Tag>] :tags
436
538
  # Key-value pairs that can be used to group and search for users. Tags
437
539
  # are metadata attached to users for any purpose.
438
540
  #
439
541
  # @option params [required, String] :user_name
440
- # A unique string that identifies a user and is associated with a server
441
- # as specified by the `ServerId`. This user name must be a minimum of 3
442
- # and a maximum of 32 characters long. The following are valid
443
- # characters: a-z, A-Z, 0-9, underscore, and hyphen. The user name
444
- # can't start with a hyphen.
542
+ # A unique string that identifies a user and is associated with a file
543
+ # transfer protocol-enabled server as specified by the `ServerId`. This
544
+ # user name must be a minimum of 3 and a maximum of 32 characters long.
545
+ # The following are valid characters: a-z, A-Z, 0-9, underscore, and
546
+ # hyphen. The user name can't start with a hyphen.
445
547
  #
446
548
  # @return [Types::CreateUserResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
447
549
  #
@@ -486,13 +588,13 @@ module Aws::Transfer
486
588
  req.send_request(options)
487
589
  end
488
590
 
489
- # Deletes the Secure File Transfer Protocol (SFTP) server that you
490
- # specify.
591
+ # Deletes the file transfer protocol-enabled server that you specify.
491
592
  #
492
593
  # No response returns from this operation.
493
594
  #
494
595
  # @option params [required, String] :server_id
495
- # A unique system-assigned identifier for an SFTP server instance.
596
+ # A unique system-assigned identifier for a file transfer
597
+ # protocol-enabled server instance.
496
598
  #
497
599
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
498
600
  #
@@ -516,8 +618,8 @@ module Aws::Transfer
516
618
  # No response is returned from this operation.
517
619
  #
518
620
  # @option params [required, String] :server_id
519
- # A system-assigned unique identifier for a Secure File Transfer
520
- # Protocol (SFTP) server instance that has the user assigned to it.
621
+ # A system-assigned unique identifier for a file transfer
622
+ # protocol-enabled server instance that has the user assigned to it.
521
623
  #
522
624
  # @option params [required, String] :ssh_public_key_id
523
625
  # A unique identifier used to reference your user's specific SSH key.
@@ -545,7 +647,8 @@ module Aws::Transfer
545
647
  req.send_request(options)
546
648
  end
547
649
 
548
- # Deletes the user belonging to the server you specify.
650
+ # Deletes the user belonging to a file transfer protocol-enabled server
651
+ # you specify.
549
652
  #
550
653
  # No response returns from this operation.
551
654
  #
@@ -554,12 +657,12 @@ module Aws::Transfer
554
657
  # </note>
555
658
  #
556
659
  # @option params [required, String] :server_id
557
- # A system-assigned unique identifier for an SFTP server instance that
558
- # has the user assigned to it.
660
+ # A system-assigned unique identifier for a file transfer
661
+ # protocol-enabled server instance that has the user assigned to it.
559
662
  #
560
663
  # @option params [required, String] :user_name
561
- # A unique string that identifies a user that is being deleted from the
562
- # server.
664
+ # A unique string that identifies a user that is being deleted from a
665
+ # file transfer protocol-enabled server.
563
666
  #
564
667
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
565
668
  #
@@ -579,13 +682,16 @@ module Aws::Transfer
579
682
  req.send_request(options)
580
683
  end
581
684
 
582
- # Describes the server that you specify by passing the `ServerId`
583
- # parameter.
685
+ # Describes a file transfer protocol-enabled server that you specify by
686
+ # passing the `ServerId` parameter.
584
687
  #
585
- # The response contains a description of the server's properties.
688
+ # The response contains a description of a server's properties. When
689
+ # you set `EndpointType` to VPC, the response will contain the
690
+ # `EndpointDetails`.
586
691
  #
587
692
  # @option params [required, String] :server_id
588
- # A system-assigned unique identifier for an SFTP server.
693
+ # A system-assigned unique identifier for a file transfer
694
+ # protocol-enabled server.
589
695
  #
590
696
  # @return [Types::DescribeServerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
591
697
  #
@@ -600,13 +706,21 @@ module Aws::Transfer
600
706
  # @example Response structure
601
707
  #
602
708
  # resp.server.arn #=> String
709
+ # resp.server.certificate #=> String
710
+ # resp.server.endpoint_details.address_allocation_ids #=> Array
711
+ # resp.server.endpoint_details.address_allocation_ids[0] #=> String
712
+ # resp.server.endpoint_details.subnet_ids #=> Array
713
+ # resp.server.endpoint_details.subnet_ids[0] #=> String
603
714
  # resp.server.endpoint_details.vpc_endpoint_id #=> String
604
- # resp.server.endpoint_type #=> String, one of "PUBLIC", "VPC_ENDPOINT"
715
+ # resp.server.endpoint_details.vpc_id #=> String
716
+ # resp.server.endpoint_type #=> String, one of "PUBLIC", "VPC", "VPC_ENDPOINT"
605
717
  # resp.server.host_key_fingerprint #=> String
606
718
  # resp.server.identity_provider_details.url #=> String
607
719
  # resp.server.identity_provider_details.invocation_role #=> String
608
720
  # resp.server.identity_provider_type #=> String, one of "SERVICE_MANAGED", "API_GATEWAY"
609
721
  # resp.server.logging_role #=> String
722
+ # resp.server.protocols #=> Array
723
+ # resp.server.protocols[0] #=> String, one of "SFTP", "FTP", "FTPS"
610
724
  # resp.server.server_id #=> String
611
725
  # resp.server.state #=> String, one of "OFFLINE", "ONLINE", "STARTING", "STOPPING", "START_FAILED", "STOP_FAILED"
612
726
  # resp.server.tags #=> Array
@@ -623,20 +737,21 @@ module Aws::Transfer
623
737
  req.send_request(options)
624
738
  end
625
739
 
626
- # Describes the user assigned to a specific server, as identified by its
627
- # `ServerId` property.
740
+ # Describes the user assigned to the specific file transfer
741
+ # protocol-enabled server, as identified by its `ServerId` property.
628
742
  #
629
743
  # The response from this call returns the properties of the user
630
744
  # associated with the `ServerId` value that was specified.
631
745
  #
632
746
  # @option params [required, String] :server_id
633
- # A system-assigned unique identifier for an SFTP server that has this
634
- # user assigned.
747
+ # A system-assigned unique identifier for a file transfer
748
+ # protocol-enabled server that has this user assigned.
635
749
  #
636
750
  # @option params [required, String] :user_name
637
- # The name of the user assigned to one or more servers. User names are
638
- # part of the sign-in credentials to use the AWS Transfer for SFTP
639
- # service and perform file transfer tasks.
751
+ # The name of the user assigned to one or more file transfer
752
+ # protocol-enabled servers. User names are part of the sign-in
753
+ # credentials to use the AWS Transfer Family service and perform file
754
+ # transfer tasks.
640
755
  #
641
756
  # @return [Types::DescribeUserResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
642
757
  #
@@ -680,20 +795,22 @@ module Aws::Transfer
680
795
  end
681
796
 
682
797
  # Adds a Secure Shell (SSH) public key to a user account identified by a
683
- # `UserName` value assigned to a specific server, identified by
684
- # `ServerId`.
798
+ # `UserName` value assigned to the specific file transfer
799
+ # protocol-enabled server, identified by `ServerId`.
685
800
  #
686
801
  # The response returns the `UserName` value, the `ServerId` value, and
687
802
  # the name of the `SshPublicKeyId`.
688
803
  #
689
804
  # @option params [required, String] :server_id
690
- # A system-assigned unique identifier for an SFTP server.
805
+ # A system-assigned unique identifier for a file transfer
806
+ # protocol-enabled server.
691
807
  #
692
808
  # @option params [required, String] :ssh_public_key_body
693
809
  # The public key portion of an SSH key pair.
694
810
  #
695
811
  # @option params [required, String] :user_name
696
- # The name of the user account that is assigned to one or more servers.
812
+ # The name of the user account that is assigned to one or more file
813
+ # transfer protocol-enabled servers.
697
814
  #
698
815
  # @return [Types::ImportSshPublicKeyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
699
816
  #
@@ -724,24 +841,26 @@ module Aws::Transfer
724
841
  req.send_request(options)
725
842
  end
726
843
 
727
- # Lists the Secure File Transfer Protocol (SFTP) servers that are
728
- # associated with your AWS account.
844
+ # Lists the file transfer protocol-enabled servers that are associated
845
+ # with your AWS account.
729
846
  #
730
847
  # @option params [Integer] :max_results
731
- # Specifies the number of servers to return as a response to the
732
- # `ListServers` query.
848
+ # Specifies the number of file transfer protocol-enabled servers to
849
+ # return as a response to the `ListServers` query.
733
850
  #
734
851
  # @option params [String] :next_token
735
- # When additional results are obtained from the `ListServers` command, a
852
+ # When additional results are obtained from the`ListServers` command, a
736
853
  # `NextToken` parameter is returned in the output. You can then pass the
737
854
  # `NextToken` parameter in a subsequent command to continue listing
738
- # additional servers.
855
+ # additional file transfer protocol-enabled servers.
739
856
  #
740
857
  # @return [Types::ListServersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
741
858
  #
742
859
  # * {Types::ListServersResponse#next_token #next_token} => String
743
860
  # * {Types::ListServersResponse#servers #servers} => Array&lt;Types::ListedServer&gt;
744
861
  #
862
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
863
+ #
745
864
  # @example Request syntax with placeholder values
746
865
  #
747
866
  # resp = client.list_servers({
@@ -755,7 +874,7 @@ module Aws::Transfer
755
874
  # resp.servers #=> Array
756
875
  # resp.servers[0].arn #=> String
757
876
  # resp.servers[0].identity_provider_type #=> String, one of "SERVICE_MANAGED", "API_GATEWAY"
758
- # resp.servers[0].endpoint_type #=> String, one of "PUBLIC", "VPC_ENDPOINT"
877
+ # resp.servers[0].endpoint_type #=> String, one of "PUBLIC", "VPC", "VPC_ENDPOINT"
759
878
  # resp.servers[0].logging_role #=> String
760
879
  # resp.servers[0].server_id #=> String
761
880
  # resp.servers[0].state #=> String, one of "OFFLINE", "ONLINE", "STARTING", "STOPPING", "START_FAILED", "STOP_FAILED"
@@ -794,6 +913,8 @@ module Aws::Transfer
794
913
  # * {Types::ListTagsForResourceResponse#next_token #next_token} => String
795
914
  # * {Types::ListTagsForResourceResponse#tags #tags} => Array&lt;Types::Tag&gt;
796
915
  #
916
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
917
+ #
797
918
  # @example Request syntax with placeholder values
798
919
  #
799
920
  # resp = client.list_tags_for_resource({
@@ -819,8 +940,8 @@ module Aws::Transfer
819
940
  req.send_request(options)
820
941
  end
821
942
 
822
- # Lists the users for the server that you specify by passing the
823
- # `ServerId` parameter.
943
+ # Lists the users for a file transfer protocol-enabled server that you
944
+ # specify by passing the `ServerId` parameter.
824
945
  #
825
946
  # @option params [Integer] :max_results
826
947
  # Specifies the number of users to return as a response to the
@@ -833,8 +954,8 @@ module Aws::Transfer
833
954
  # additional users.
834
955
  #
835
956
  # @option params [required, String] :server_id
836
- # A system-assigned unique identifier for a Secure File Transfer
837
- # Protocol (SFTP) server that has users assigned to it.
957
+ # A system-assigned unique identifier for a file transfer
958
+ # protocol-enabled server that has users assigned to it.
838
959
  #
839
960
  # @return [Types::ListUsersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
840
961
  #
@@ -842,6 +963,8 @@ module Aws::Transfer
842
963
  # * {Types::ListUsersResponse#server_id #server_id} => String
843
964
  # * {Types::ListUsersResponse#users #users} => Array&lt;Types::ListedUser&gt;
844
965
  #
966
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
967
+ #
845
968
  # @example Request syntax with placeholder values
846
969
  #
847
970
  # resp = client.list_users({
@@ -871,10 +994,10 @@ module Aws::Transfer
871
994
  req.send_request(options)
872
995
  end
873
996
 
874
- # Changes the state of a Secure File Transfer Protocol (SFTP) server
875
- # from `OFFLINE` to `ONLINE`. It has no impact on an SFTP server that is
876
- # already `ONLINE`. An `ONLINE` server can accept and process file
877
- # transfer jobs.
997
+ # Changes the state of a file transfer protocol-enabled server from
998
+ # `OFFLINE` to `ONLINE`. It has no impact on a server that is already
999
+ # `ONLINE`. An `ONLINE` server can accept and process file transfer
1000
+ # jobs.
878
1001
  #
879
1002
  # The state of `STARTING` indicates that the server is in an
880
1003
  # intermediate state, either not fully able to respond, or not fully
@@ -883,7 +1006,8 @@ module Aws::Transfer
883
1006
  # No response is returned from this call.
884
1007
  #
885
1008
  # @option params [required, String] :server_id
886
- # A system-assigned unique identifier for an SFTP server that you start.
1009
+ # A system-assigned unique identifier for a file transfer
1010
+ # protocol-enabled server that you start.
887
1011
  #
888
1012
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
889
1013
  #
@@ -902,12 +1026,12 @@ module Aws::Transfer
902
1026
  req.send_request(options)
903
1027
  end
904
1028
 
905
- # Changes the state of an SFTP server from `ONLINE` to `OFFLINE`. An
906
- # `OFFLINE` server cannot accept and process file transfer jobs.
907
- # Information tied to your server such as server and user properties are
908
- # not affected by stopping your server. Stopping a server will not
909
- # reduce or impact your Secure File Transfer Protocol (SFTP) endpoint
910
- # billing.
1029
+ # Changes the state of a file transfer protocol-enabled server from
1030
+ # `ONLINE` to `OFFLINE`. An `OFFLINE` server cannot accept and process
1031
+ # file transfer jobs. Information tied to your server, such as server
1032
+ # and user properties, are not affected by stopping your server.
1033
+ # Stopping the server will not reduce or impact your file transfer
1034
+ # protocol endpoint billing.
911
1035
  #
912
1036
  # The state of `STOPPING` indicates that the server is in an
913
1037
  # intermediate state, either not fully able to respond, or not fully
@@ -916,8 +1040,8 @@ module Aws::Transfer
916
1040
  # No response is returned from this call.
917
1041
  #
918
1042
  # @option params [required, String] :server_id
919
- # A system-assigned unique identifier for an SFTP server that you
920
- # stopped.
1043
+ # A system-assigned unique identifier for a file transfer
1044
+ # protocol-enabled server that you stopped.
921
1045
  #
922
1046
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
923
1047
  #
@@ -974,23 +1098,35 @@ module Aws::Transfer
974
1098
  req.send_request(options)
975
1099
  end
976
1100
 
977
- # If the `IdentityProviderType` of the server is `API_Gateway`, tests
978
- # whether your API Gateway is set up successfully. We highly recommend
979
- # that you call this operation to test your authentication method as
980
- # soon as you create your server. By doing so, you can troubleshoot
981
- # issues with the API Gateway integration to ensure that your users can
982
- # successfully use the service.
1101
+ # If the `IdentityProviderType` of a file transfer protocol-enabled
1102
+ # server is `API_Gateway`, tests whether your API Gateway is set up
1103
+ # successfully. We highly recommend that you call this operation to test
1104
+ # your authentication method as soon as you create your server. By doing
1105
+ # so, you can troubleshoot issues with the API Gateway integration to
1106
+ # ensure that your users can successfully use the service.
983
1107
  #
984
1108
  # @option params [required, String] :server_id
985
- # A system-assigned identifier for a specific server. That server's
986
- # user authentication method is tested with a user name and password.
1109
+ # A system-assigned identifier for a specific file transfer
1110
+ # protocol-enabled server. That server's user authentication method is
1111
+ # tested with a user name and password.
987
1112
  #
988
1113
  # @option params [required, String] :user_name
989
- # This request parameter is the name of the user account to be tested.
1114
+ # The name of the user account to be tested.
990
1115
  #
991
1116
  # @option params [String] :user_password
992
1117
  # The password of the user account to be tested.
993
1118
  #
1119
+ # @option params [String] :server_protocol
1120
+ # The type of file transfer protocol to be tested.
1121
+ #
1122
+ # The available protocols are:
1123
+ #
1124
+ # * Secure Shell (SSH) File Transfer Protocol (SFTP)
1125
+ #
1126
+ # * File Transfer Protocol Secure (FTPS)
1127
+ #
1128
+ # * File Transfer Protocol (FTP)
1129
+ #
994
1130
  # @return [Types::TestIdentityProviderResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
995
1131
  #
996
1132
  # * {Types::TestIdentityProviderResponse#response #response} => String
@@ -1004,6 +1140,7 @@ module Aws::Transfer
1004
1140
  # server_id: "ServerId", # required
1005
1141
  # user_name: "UserName", # required
1006
1142
  # user_password: "UserPassword",
1143
+ # server_protocol: "SFTP", # accepts SFTP, FTP, FTPS
1007
1144
  # })
1008
1145
  #
1009
1146
  # @example Response structure
@@ -1029,9 +1166,9 @@ module Aws::Transfer
1029
1166
  # No response is returned from this call.
1030
1167
  #
1031
1168
  # @option params [required, String] :arn
1032
- # This is the value of the resource that will have the tag removed. An
1033
- # Amazon Resource Name (ARN) is an identifier for a specific AWS
1034
- # resource, such as a server, user, or role.
1169
+ # The value of the resource that will have the tag removed. An Amazon
1170
+ # Resource Name (ARN) is an identifier for a specific AWS resource, such
1171
+ # as a server, user, or role.
1035
1172
  #
1036
1173
  # @option params [required, Array<String>] :tag_keys
1037
1174
  # TagKeys are key-value pairs assigned to ARNs that can be used to group
@@ -1056,46 +1193,70 @@ module Aws::Transfer
1056
1193
  req.send_request(options)
1057
1194
  end
1058
1195
 
1059
- # Updates the server properties after that server has been created.
1196
+ # Updates the file transfer protocol-enabled server's properties after
1197
+ # that server has been created.
1198
+ #
1199
+ # The `UpdateServer` call returns the `ServerId` of the server you
1200
+ # updated.
1060
1201
  #
1061
- # The `UpdateServer` call returns the `ServerId` of the Secure File
1062
- # Transfer Protocol (SFTP) server you updated.
1202
+ # @option params [String] :certificate
1203
+ # The Amazon Resource Name (ARN) of the AWS Certificate Manager (ACM)
1204
+ # certificate. Required when `Protocols` is set to `FTPS`.
1063
1205
  #
1064
1206
  # @option params [Types::EndpointDetails] :endpoint_details
1065
1207
  # The virtual private cloud (VPC) endpoint settings that are configured
1066
- # for your SFTP server. With a VPC endpoint, your SFTP server isn't
1067
- # accessible over the public internet.
1208
+ # for your file transfer protocol-enabled server. With a VPC endpoint,
1209
+ # you can restrict access to your server to resources only within your
1210
+ # VPC. To control incoming internet traffic, you will need to associate
1211
+ # one or more Elastic IP addresses with your server's endpoint.
1068
1212
  #
1069
1213
  # @option params [String] :endpoint_type
1070
- # The type of endpoint that you want your SFTP server to connect to. You
1071
- # can choose to connect to the public internet or a virtual private
1072
- # cloud (VPC) endpoint. With a VPC endpoint, your SFTP server isn't
1073
- # accessible over the public internet.
1214
+ # The type of endpoint that you want your file transfer protocol-enabled
1215
+ # server to connect to. You can choose to connect to the public internet
1216
+ # or a VPC endpoint. With a VPC endpoint, your server isn't accessible
1217
+ # over the public internet.
1074
1218
  #
1075
1219
  # @option params [String] :host_key
1076
1220
  # The RSA private key as generated by `ssh-keygen -N "" -f
1077
1221
  # my-new-server-key`.
1078
1222
  #
1079
1223
  # If you aren't planning to migrate existing users from an existing
1080
- # SFTP server to a new AWS SFTP server, don't update the host key.
1081
- # Accidentally changing a server's host key can be disruptive.
1224
+ # file transfer protocol-enabled server to a new server, don't update
1225
+ # the host key. Accidentally changing a server's host key can be
1226
+ # disruptive.
1227
+ #
1228
+ # For more information, see [Changing the Host Key for Your AWS Transfer
1229
+ # Family Server][1] in the *AWS Transfer Family User Guide*.
1082
1230
  #
1083
- # For more information, see
1084
- # "https://docs.aws.amazon.com/transfer/latest/userguide/configuring-servers.html#change-host-key"
1085
- # in the *AWS SFTP User Guide.*
1231
+ #
1232
+ #
1233
+ # [1]: https://docs.aws.amazon.com/transfer/latest/userguide/configuring-servers.html#change-host-key
1086
1234
  #
1087
1235
  # @option params [Types::IdentityProviderDetails] :identity_provider_details
1088
- # This response parameter is an array containing all of the information
1089
- # required to call a customer's authentication API method.
1236
+ # An array containing all of the information required to call a
1237
+ # customer's authentication API method.
1090
1238
  #
1091
1239
  # @option params [String] :logging_role
1092
- # A value that changes the AWS Identity and Access Management (IAM) role
1093
- # that allows Amazon S3 events to be logged in Amazon CloudWatch,
1094
- # turning logging on or off.
1240
+ # Changes the AWS Identity and Access Management (IAM) role that allows
1241
+ # Amazon S3 events to be logged in Amazon CloudWatch, turning logging on
1242
+ # or off.
1243
+ #
1244
+ # @option params [Array<String>] :protocols
1245
+ # Specifies the file transfer protocol or protocols over which your file
1246
+ # transfer protocol client can connect to your server's endpoint. The
1247
+ # available protocols are:
1248
+ #
1249
+ # * Secure Shell (SSH) File Transfer Protocol (SFTP): File transfer over
1250
+ # SSH
1251
+ #
1252
+ # * File Transfer Protocol Secure (FTPS): File transfer with TLS
1253
+ # encryption
1254
+ #
1255
+ # * File Transfer Protocol (FTP): Unencrypted file transfer
1095
1256
  #
1096
1257
  # @option params [required, String] :server_id
1097
- # A system-assigned unique identifier for an SFTP server instance that
1098
- # the user account is assigned to.
1258
+ # A system-assigned unique identifier for a file transfer
1259
+ # protocol-enabled server instance that the user account is assigned to.
1099
1260
  #
1100
1261
  # @return [Types::UpdateServerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1101
1262
  #
@@ -1104,16 +1265,21 @@ module Aws::Transfer
1104
1265
  # @example Request syntax with placeholder values
1105
1266
  #
1106
1267
  # resp = client.update_server({
1268
+ # certificate: "Certificate",
1107
1269
  # endpoint_details: {
1270
+ # address_allocation_ids: ["AddressAllocationId"],
1271
+ # subnet_ids: ["SubnetId"],
1108
1272
  # vpc_endpoint_id: "VpcEndpointId",
1273
+ # vpc_id: "VpcId",
1109
1274
  # },
1110
- # endpoint_type: "PUBLIC", # accepts PUBLIC, VPC_ENDPOINT
1275
+ # endpoint_type: "PUBLIC", # accepts PUBLIC, VPC, VPC_ENDPOINT
1111
1276
  # host_key: "HostKey",
1112
1277
  # identity_provider_details: {
1113
1278
  # url: "Url",
1114
1279
  # invocation_role: "Role",
1115
1280
  # },
1116
1281
  # logging_role: "NullableRole",
1282
+ # protocols: ["SFTP"], # accepts SFTP, FTP, FTPS
1117
1283
  # server_id: "ServerId", # required
1118
1284
  # })
1119
1285
  #
@@ -1138,37 +1304,50 @@ module Aws::Transfer
1138
1304
  # user.
1139
1305
  #
1140
1306
  # @option params [String] :home_directory
1141
- # A parameter that specifies the landing directory (folder) for a user
1142
- # when they log in to the server using their client.
1307
+ # Specifies the landing directory (folder) for a user when they log in
1308
+ # to the file transfer protocol-enabled server using their file transfer
1309
+ # protocol client.
1143
1310
  #
1144
- # An example is `<your-Amazon-S3-bucket-name>/home/username`.
1311
+ # An example is `your-Amazon-S3-bucket-name>/home/username`.
1145
1312
  #
1146
1313
  # @option params [String] :home_directory_type
1147
1314
  # The type of landing directory (folder) you want your users' home
1148
- # directory to be when they log into the SFTP serve. If you set it to
1149
- # `PATH`, the user will see the absolute Amazon S3 bucket paths as is in
1150
- # their SFTP clients. If you set it `LOGICAL`, you will need to provide
1151
- # mappings in the `HomeDirectoryMappings` for how you want to make S3
1152
- # paths visible to your user.
1315
+ # directory to be when they log into the file transfer protocol-enabled
1316
+ # server. If you set it to `PATH`, the user will see the absolute Amazon
1317
+ # S3 bucket paths as is in their file transfer protocol clients. If you
1318
+ # set it `LOGICAL`, you will need to provide mappings in the
1319
+ # `HomeDirectoryMappings` for how you want to make Amazon S3 paths
1320
+ # visible to your users.
1153
1321
  #
1154
1322
  # @option params [Array<Types::HomeDirectoryMapEntry>] :home_directory_mappings
1155
- # Logical directory mappings that specify what S3 paths and keys should
1156
- # be visible to your user and how you want to make them visible. You
1157
- # will need to specify the "`Entry`" and "`Target`" pair, where
1323
+ # Logical directory mappings that specify what Amazon S3 paths and keys
1324
+ # should be visible to your user and how you want to make them visible.
1325
+ # You will need to specify the "`Entry`" and "`Target`" pair, where
1158
1326
  # `Entry` shows how the path is made visible and `Target` is the actual
1159
- # S3 path. If you only specify a target, it will be displayed as is. You
1160
- # will need to also make sure that your AWS IAM Role provides access to
1161
- # paths in `Target`. The following is an example.
1327
+ # Amazon S3 path. If you only specify a target, it will be displayed as
1328
+ # is. You will need to also make sure that your AWS IAM Role provides
1329
+ # access to paths in `Target`. The following is an example.
1162
1330
  #
1163
1331
  # `'[ "/bucket2/documentation", \{ "Entry": "your-personal-report.pdf",
1164
1332
  # "Target": "/bucket3/customized-reports/$\{transfer:UserName\}.pdf" \}
1165
1333
  # ]'`
1166
1334
  #
1167
- # In most cases, you can use this value instead of the scope down policy
1335
+ # In most cases, you can use this value instead of the scope-down policy
1168
1336
  # to lock your user down to the designated home directory ("chroot").
1169
1337
  # To do this, you can set `Entry` to '/' and set `Target` to the
1170
1338
  # HomeDirectory parameter value.
1171
1339
  #
1340
+ # <note markdown="1"> If the target of a logical directory entry does not exist in Amazon
1341
+ # S3, the entry will be ignored. As a workaround, you can use the Amazon
1342
+ # S3 api to create 0 byte objects as place holders for your directory.
1343
+ # If using the CLI, use the `s3api` call instead of `s3` so you can use
1344
+ # the put-object operation. For example, you use the following: `aws
1345
+ # s3api put-object --bucket bucketname --key path/to/folder/`. Make sure
1346
+ # that the end of the key name ends in a / for it to be considered a
1347
+ # folder.
1348
+ #
1349
+ # </note>
1350
+ #
1172
1351
  # @option params [String] :policy
1173
1352
  # Allows you to supply a scope-down policy for your user so you can use
1174
1353
  # the same AWS Identity and Access Management (IAM) role across multiple
@@ -1177,41 +1356,44 @@ module Aws::Transfer
1177
1356
  # `$\{Transfer:UserName\}`, `$\{Transfer:HomeDirectory\}`, and
1178
1357
  # `$\{Transfer:HomeBucket\}`.
1179
1358
  #
1180
- # <note markdown="1"> For scope-down policies, AWS Transfer for SFTP stores the policy as a
1359
+ # <note markdown="1"> For scope-down policies, AWS Transfer Family stores the policy as a
1181
1360
  # JSON blob, instead of the Amazon Resource Name (ARN) of the policy.
1182
1361
  # You save the policy as a JSON blob and pass it in the `Policy`
1183
1362
  # argument.
1184
1363
  #
1185
- # For an example of a scope-down policy, see
1186
- # "https://docs.aws.amazon.com/transfer/latest/userguide/users.html#users-policies-scope-down"&gt;Creating
1187
- # a Scope-Down Policy.
1364
+ # For an example of a scope-down policy, see [Creating a Scope-Down
1365
+ # Policy][1].
1188
1366
  #
1189
- # For more information, see
1190
- # "https://docs.aws.amazon.com/STS/latest/APIReference/API\_AssumeRole.html"
1191
- # in the *AWS Security Token Service API Reference*.
1367
+ # For more information, see [AssumeRole][2] in the *AWS Security Token
1368
+ # Service API Reference*.
1192
1369
  #
1193
1370
  # </note>
1194
1371
  #
1372
+ #
1373
+ #
1374
+ # [1]: https://docs.aws.amazon.com/transfer/latest/userguide/users.html#users-policies-scope-down
1375
+ # [2]: https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html
1376
+ #
1195
1377
  # @option params [String] :role
1196
- # The IAM role that controls your user's access to your Amazon S3
1378
+ # The IAM role that controls your users' access to your Amazon S3
1197
1379
  # bucket. The policies attached to this role will determine the level of
1198
1380
  # access you want to provide your users when transferring files into and
1199
1381
  # out of your Amazon S3 bucket or buckets. The IAM role should also
1200
- # contain a trust relationship that allows the Secure File Transfer
1201
- # Protocol (SFTP) server to access your resources when servicing your
1202
- # SFTP user's transfer requests.
1382
+ # contain a trust relationship that allows the file transfer
1383
+ # protocol-enabled server to access your resources when servicing your
1384
+ # users' transfer requests.
1203
1385
  #
1204
1386
  # @option params [required, String] :server_id
1205
- # A system-assigned unique identifier for an SFTP server instance that
1206
- # the user account is assigned to.
1387
+ # A system-assigned unique identifier for a file transfer
1388
+ # protocol-enabled server instance that the user account is assigned to.
1207
1389
  #
1208
1390
  # @option params [required, String] :user_name
1209
- # A unique string that identifies a user and is associated with a server
1210
- # as specified by the `ServerId`. This is the string that will be used
1211
- # by your user when they log in to your SFTP server. This user name is a
1212
- # minimum of 3 and a maximum of 32 characters long. The following are
1213
- # valid characters: a-z, A-Z, 0-9, underscore, and hyphen. The user name
1214
- # can't start with a hyphen.
1391
+ # A unique string that identifies a user and is associated with a file
1392
+ # transfer protocol-enabled server as specified by the `ServerId`. This
1393
+ # is the string that will be used by your user when they log in to your
1394
+ # server. This user name is a minimum of 3 and a maximum of 32
1395
+ # characters long. The following are valid characters: a-z, A-Z, 0-9,
1396
+ # underscore, and hyphen. The user name can't start with a hyphen.
1215
1397
  #
1216
1398
  # @return [Types::UpdateUserResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1217
1399
  #
@@ -1262,7 +1444,7 @@ module Aws::Transfer
1262
1444
  params: params,
1263
1445
  config: config)
1264
1446
  context[:gem_name] = 'aws-sdk-transfer'
1265
- context[:gem_version] = '1.15.0'
1447
+ context[:gem_version] = '1.20.0'
1266
1448
  Seahorse::Client::Request.new(handlers, context)
1267
1449
  end
1268
1450