aws-sdk-transfer 1.15.0 → 1.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/lib/aws-sdk-transfer.rb +8 -5
- data/lib/aws-sdk-transfer/client.rb +385 -203
- data/lib/aws-sdk-transfer/client_api.rb +38 -1
- data/lib/aws-sdk-transfer/errors.rb +61 -7
- data/lib/aws-sdk-transfer/resource.rb +1 -0
- data/lib/aws-sdk-transfer/types.rb +508 -307
- metadata +5 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 90dc7322cdebf9a63dc91e89550505d8602b4ecc4d9a25ae5985158aa165991f
|
4
|
+
data.tar.gz: b73403e5937ceb79803af79f963586e73b3be59c2696ae9d5b1a23afaf85ff76
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3ac272cd20b7cf50e64aaf28e5cc7e8755c23572f4b53891358d279ee8bba3189078f7ded09f1618e227a537eb05a9c5d55dc5ddbce181e6f1334ee679695249
|
7
|
+
data.tar.gz: a7818347b0fe6a3763c4859604fec3755d245c99c7946e7a30f457e5201c4d6f4a20f8f0664a9046171cd95b8719b50f6d21a62fc7c53f4b50b67d22294bad95
|
data/lib/aws-sdk-transfer.rb
CHANGED
@@ -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
|
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
|
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
|
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.
|
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
|
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
|
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.
|
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.
|
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
|
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)
|
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
|
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
|
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
|
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
|
268
|
-
#
|
269
|
-
# or when you work with users, use the
|
270
|
-
# property that is assigned to the newly
|
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
|
274
|
-
#
|
275
|
-
#
|
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
|
279
|
-
#
|
280
|
-
#
|
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
|
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
|
-
#
|
292
|
-
#
|
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
|
-
#
|
296
|
-
#
|
297
|
-
#
|
298
|
-
#
|
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
|
303
|
-
# value is `SERVICE_MANAGED`, which
|
304
|
-
#
|
305
|
-
# `API_GATEWAY` value to integrate with
|
306
|
-
# choosing. The `API_GATEWAY` setting
|
307
|
-
# Gateway endpoint URL to call for
|
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
|
-
#
|
312
|
-
#
|
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
|
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
|
357
|
-
#
|
358
|
-
#
|
359
|
-
#
|
360
|
-
# the
|
361
|
-
#
|
362
|
-
#
|
363
|
-
#
|
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
|
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
|
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
|
374
|
-
# `PATH`, the user will see the absolute Amazon
|
375
|
-
#
|
376
|
-
#
|
377
|
-
#
|
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
|
381
|
-
# be visible to your user and how you want to make them visible.
|
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
|
385
|
-
# will need to also make sure that your AWS IAM Role provides
|
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
|
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
|
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
|
-
#
|
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
|
-
#
|
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
|
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
|
425
|
-
# your resources when servicing your
|
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
|
429
|
-
# is the specific
|
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
|
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
|
441
|
-
# as specified by the `ServerId`. This
|
442
|
-
# and a maximum of 32 characters long.
|
443
|
-
# characters: a-z, A-Z, 0-9, underscore, and
|
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
|
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
|
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
|
520
|
-
#
|
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
|
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
|
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
|
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
|
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
|
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
|
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.
|
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
|
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
|
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
|
638
|
-
# part of the sign-in
|
639
|
-
# service and perform file
|
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
|
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
|
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
|
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
|
728
|
-
#
|
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
|
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
|
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<Types::ListedServer>
|
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<Types::Tag>
|
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
|
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
|
837
|
-
#
|
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<Types::ListedUser>
|
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
|
875
|
-
#
|
876
|
-
#
|
877
|
-
#
|
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
|
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
|
906
|
-
# `OFFLINE` server cannot accept and process
|
907
|
-
# Information tied to your server such as server
|
908
|
-
# not affected by stopping your server.
|
909
|
-
# reduce or impact your
|
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
|
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
|
978
|
-
# whether your API Gateway is set up
|
979
|
-
# that you call this operation to test
|
980
|
-
# soon as you create your server. By doing
|
981
|
-
# issues with the API Gateway integration to
|
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
|
986
|
-
#
|
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
|
-
#
|
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
|
-
#
|
1033
|
-
#
|
1034
|
-
#
|
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
|
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
|
-
#
|
1062
|
-
#
|
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
|
1067
|
-
#
|
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
|
1071
|
-
# can choose to connect to the public internet
|
1072
|
-
#
|
1073
|
-
#
|
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
|
-
#
|
1081
|
-
# Accidentally changing a server's host key can be
|
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
|
-
#
|
1084
|
-
#
|
1085
|
-
#
|
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
|
-
#
|
1089
|
-
#
|
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
|
-
#
|
1093
|
-
#
|
1094
|
-
#
|
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
|
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
|
-
#
|
1142
|
-
#
|
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
|
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
|
1149
|
-
# `PATH`, the user will see the absolute Amazon
|
1150
|
-
#
|
1151
|
-
#
|
1152
|
-
#
|
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
|
1156
|
-
# be visible to your user and how you want to make them visible.
|
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
|
1160
|
-
# will need to also make sure that your AWS IAM Role provides
|
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
|
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
|
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
|
-
#
|
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
|
-
#
|
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
|
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
|
1201
|
-
#
|
1202
|
-
#
|
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
|
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
|
1210
|
-
# as specified by the `ServerId`. This
|
1211
|
-
# by your user when they log in to your
|
1212
|
-
# minimum of 3 and a maximum of 32
|
1213
|
-
# valid characters: a-z, A-Z, 0-9,
|
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.
|
1447
|
+
context[:gem_version] = '1.20.0'
|
1266
1448
|
Seahorse::Client::Request.new(handlers, context)
|
1267
1449
|
end
|
1268
1450
|
|