aws-sdk-transfer 1.19.0 → 1.24.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
2
  SHA256:
3
- metadata.gz: dde682003e74678622f1fd6ae5dcd739d8b2478d5ae4c75c09ff4aa806628eb7
4
- data.tar.gz: 66f9b6808e404b0519bf94d9ac2baafe942c4c3d9f960d3eabea060833b28566
3
+ metadata.gz: 03e1a4abc91b069cf39b2b826e011e017d6b138598b7031e02378fee7cc69396
4
+ data.tar.gz: 93c6c9c172fdfe1f8c6543ed04a0e03d314b60b5a4d3968481ef23125c705160
5
5
  SHA512:
6
- metadata.gz: 9f3f787a5aa0511e3bd882a082d19091c903c84a027612c8b7fcbd7f7f687e988daeb466d7f3f82d2974a7a80d914f7df33e1022fcf859d6c11fb490100a3a90
7
- data.tar.gz: 5e7db0995baf2140beee3c5bd15d9b29397e2b30b60bd59d70af96abaeba21a0cc1a7bb80daddfb17976d78481e248211db4b7fe3f84806a0943f9804c3c8f52
6
+ metadata.gz: 1a342863445121f5dd5093a840db57f70d3bf4f6657bd63898dbb537bc1c4f37523dd90aea1958b2a48b3e635b32e4e86b161206c2a4a38b91bf32a34a778653
7
+ data.tar.gz: 663b7d41858f0ec0a5b740e6c2560bb1de2884bf24cade3b647b2964c8b644ffb1f7d9a0c85217077e82f2b87d514880a4e37626c0aba48f92938d18aed0a717
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -45,6 +47,6 @@ require_relative 'aws-sdk-transfer/customizations'
45
47
  # @service
46
48
  module Aws::Transfer
47
49
 
48
- GEM_VERSION = '1.19.0'
50
+ GEM_VERSION = '1.24.0'
49
51
 
50
52
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -24,6 +26,7 @@ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
24
26
  require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
25
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
26
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
+ require 'aws-sdk-core/plugins/http_checksum.rb'
27
30
  require 'aws-sdk-core/plugins/signature_v4.rb'
28
31
  require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
29
32
 
@@ -69,6 +72,7 @@ module Aws::Transfer
69
72
  add_plugin(Aws::Plugins::ClientMetricsPlugin)
70
73
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
71
74
  add_plugin(Aws::Plugins::TransferEncoding)
75
+ add_plugin(Aws::Plugins::HttpChecksum)
72
76
  add_plugin(Aws::Plugins::SignatureV4)
73
77
  add_plugin(Aws::Plugins::Protocols::JsonRpc)
74
78
 
@@ -161,7 +165,7 @@ module Aws::Transfer
161
165
  # @option options [String] :endpoint
162
166
  # The client endpoint is normally constructed from the `:region`
163
167
  # option. You should only configure an `:endpoint` when connecting
164
- # to test endpoints. This should be a valid HTTP(S) URI.
168
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
165
169
  #
166
170
  # @option options [Integer] :endpoint_cache_max_entries (1000)
167
171
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -176,7 +180,7 @@ module Aws::Transfer
176
180
  # requests fetching endpoints information. Defaults to 60 sec.
177
181
  #
178
182
  # @option options [Boolean] :endpoint_discovery (false)
179
- # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
183
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
180
184
  #
181
185
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
182
186
  # The log formatter.
@@ -328,6 +332,41 @@ module Aws::Transfer
328
332
  # The Amazon Resource Name (ARN) of the AWS Certificate Manager (ACM)
329
333
  # certificate. Required when `Protocols` is set to `FTPS`.
330
334
  #
335
+ # To request a new public certificate, see [Request a public
336
+ # certificate][1] in the <i> AWS Certificate Manager User Guide</i>.
337
+ #
338
+ # To import an existing certificate into ACM, see [Importing
339
+ # certificates into ACM][2] in the <i> AWS Certificate Manager User
340
+ # Guide</i>.
341
+ #
342
+ # To request a private certificate to use FTPS through private IP
343
+ # addresses, see [Request a private certificate][3] in the <i> AWS
344
+ # Certificate Manager User Guide</i>.
345
+ #
346
+ # Certificates with the following cryptographic algorithms and key sizes
347
+ # are supported:
348
+ #
349
+ # * 2048-bit RSA (RSA\_2048)
350
+ #
351
+ # * 4096-bit RSA (RSA\_4096)
352
+ #
353
+ # * Elliptic Prime Curve 256 bit (EC\_prime256v1)
354
+ #
355
+ # * Elliptic Prime Curve 384 bit (EC\_secp384r1)
356
+ #
357
+ # * Elliptic Prime Curve 521 bit (EC\_secp521r1)
358
+ #
359
+ # <note markdown="1"> The certificate must be a valid SSL/TLS X.509 version 3 certificate
360
+ # with FQDN or IP address specified and information about the issuer.
361
+ #
362
+ # </note>
363
+ #
364
+ #
365
+ #
366
+ # [1]: https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request-public.html
367
+ # [2]: https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html
368
+ # [3]: https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request-private.html
369
+ #
331
370
  # @option params [Types::EndpointDetails] :endpoint_details
332
371
  # The virtual private cloud (VPC) endpoint settings that are configured
333
372
  # for your file transfer protocol-enabled server. When you host your
@@ -339,24 +378,32 @@ module Aws::Transfer
339
378
  # @option params [String] :endpoint_type
340
379
  # The type of VPC endpoint that you want your file transfer
341
380
  # 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.
381
+ # the public internet or a VPC endpoint. With a VPC endpoint, you can
382
+ # restrict access to your server and resources only within your VPC.
383
+ #
384
+ # <note markdown="1"> It is recommended that you use `VPC` as the `EndpointType`. With this
385
+ # endpoint type, you have the option to directly associate up to three
386
+ # Elastic IPv4 addresses (BYO IP included) with your server's endpoint
387
+ # and use VPC security groups to restrict traffic by the client's
388
+ # public IP address. This is not possible with `EndpointType` set to
389
+ # `VPC_ENDPOINT`.
390
+ #
391
+ # </note>
345
392
  #
346
393
  # @option params [String] :host_key
347
- # The RSA private key as generated by the `ssh-keygen -N "" -f
394
+ # The RSA private key as generated by the `ssh-keygen -N "" -m PEM -f
348
395
  # my-new-server-key` command.
349
396
  #
350
397
  # If you aren't planning to migrate existing users from an existing
351
398
  # SFTP-enabled server to a new server, don't update the host key.
352
399
  # Accidentally changing a server's host key can be disruptive.
353
400
  #
354
- # For more information, see [Changing the Host Key for Your AWS Transfer
355
- # Family Server][1] in the *AWS Transfer Family User Guide*.
401
+ # For more information, see [Change the host key for your SFTP-enabled
402
+ # server][1] in the *AWS Transfer Family User Guide*.
356
403
  #
357
404
  #
358
405
  #
359
- # [1]: https://docs.aws.amazon.com/transfer/latest/userguide/configuring-servers.html#change-host-key
406
+ # [1]: https://docs.aws.amazon.com/transfer/latest/userguide/edit-server-config.html#configuring-servers-change-host-key
360
407
  #
361
408
  # @option params [Types::IdentityProviderDetails] :identity_provider_details
362
409
  # Required when `IdentityProviderType` is set to `API_GATEWAY`. Accepts
@@ -382,13 +429,33 @@ module Aws::Transfer
382
429
  # transfer protocol client can connect to your server's endpoint. The
383
430
  # available protocols are:
384
431
  #
385
- # * Secure Shell (SSH) File Transfer Protocol (SFTP): File transfer over
386
- # SSH
432
+ # * `SFTP` (Secure Shell (SSH) File Transfer Protocol): File transfer
433
+ # over SSH
387
434
  #
388
- # * File Transfer Protocol Secure (FTPS): File transfer with TLS
435
+ # * `FTPS` (File Transfer Protocol Secure): File transfer with TLS
389
436
  # encryption
390
437
  #
391
- # * File Transfer Protocol (FTP): Unencrypted file transfer
438
+ # * `FTP` (File Transfer Protocol): Unencrypted file transfer
439
+ #
440
+ # <note markdown="1"> If you select `FTPS`, you must choose a certificate stored in AWS
441
+ # Certificate Manager (ACM) which will be used to identify your file
442
+ # transfer protocol-enabled server when clients connect to it over FTPS.
443
+ #
444
+ # If `Protocol` includes either `FTP` or `FTPS`, then the `EndpointType`
445
+ # must be `VPC` and the `IdentityProviderType` must be `API_GATEWAY`.
446
+ #
447
+ # If `Protocol` includes `FTP`, then `AddressAllocationIds` cannot be
448
+ # associated.
449
+ #
450
+ # If `Protocol` is set only to `SFTP`, the `EndpointType` can be set to
451
+ # `PUBLIC` and the `IdentityProviderType` can be set to
452
+ # `SERVICE_MANAGED`.
453
+ #
454
+ # </note>
455
+ #
456
+ # @option params [String] :security_policy_name
457
+ # Specifies the name of the security policy that is attached to the
458
+ # server.
392
459
  #
393
460
  # @option params [Array<Types::Tag>] :tags
394
461
  # Key-value pairs that can be used to group and search for file transfer
@@ -417,6 +484,7 @@ module Aws::Transfer
417
484
  # identity_provider_type: "SERVICE_MANAGED", # accepts SERVICE_MANAGED, API_GATEWAY
418
485
  # logging_role: "Role",
419
486
  # protocols: ["SFTP"], # accepts SFTP, FTP, FTPS
487
+ # security_policy_name: "SecurityPolicyName",
420
488
  # tags: [
421
489
  # {
422
490
  # key: "TagKey", # required
@@ -451,7 +519,8 @@ module Aws::Transfer
451
519
  # The landing directory (folder) for a user when they log in to the file
452
520
  # transfer protocol-enabled server using the client.
453
521
  #
454
- # An example is `your-Amazon-S3-bucket-name>/home/username`.
522
+ # An example is <i>
523
+ # <code>your-Amazon-S3-bucket-name&gt;/home/username</code> </i>.
455
524
  #
456
525
  # @option params [String] :home_directory_type
457
526
  # The type of landing directory (folder) you want your users' home
@@ -468,8 +537,8 @@ module Aws::Transfer
468
537
  # You will need to specify the "`Entry`" and "`Target`" pair, where
469
538
  # `Entry` shows how the path is made visible and `Target` is the actual
470
539
  # 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.
540
+ # is. You will need to also make sure that your IAM role provides access
541
+ # to paths in `Target`. The following is an example.
473
542
  #
474
543
  # `'[ "/bucket2/documentation", \{ "Entry": "your-personal-report.pdf",
475
544
  # "Target": "/bucket3/customized-reports/$\{transfer:UserName\}.pdf" \}
@@ -482,7 +551,7 @@ module Aws::Transfer
482
551
  #
483
552
  # <note markdown="1"> If the target of a logical directory entry does not exist in Amazon
484
553
  # 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.
554
+ # S3 API to create 0 byte objects as place holders for your directory.
486
555
  # If using the CLI, use the `s3api` call instead of `s3` so you can use
487
556
  # the put-object operation. For example, you use the following: `aws
488
557
  # s3api put-object --bucket bucketname --key path/to/folder/`. Make sure
@@ -503,8 +572,8 @@ module Aws::Transfer
503
572
  # You save the policy as a JSON blob and pass it in the `Policy`
504
573
  # argument.
505
574
  #
506
- # For an example of a scope-down policy, see [Creating a Scope-Down
507
- # Policy][1].
575
+ # For an example of a scope-down policy, see [Creating a scope-down
576
+ # policy][1].
508
577
  #
509
578
  # For more information, see [AssumeRole][2] in the *AWS Security Token
510
579
  # Service API Reference*.
@@ -541,9 +610,10 @@ module Aws::Transfer
541
610
  # @option params [required, String] :user_name
542
611
  # A unique string that identifies a user and is associated with a file
543
612
  # 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.
613
+ # user name must be a minimum of 3 and a maximum of 100 characters long.
614
+ # The following are valid characters: a-z, A-Z, 0-9, underscore '\_',
615
+ # hyphen '-', period '.', and at sign '@'. The user name can't
616
+ # start with a hyphen, period, and at sign.
547
617
  #
548
618
  # @return [Types::CreateUserResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
549
619
  #
@@ -682,6 +752,51 @@ module Aws::Transfer
682
752
  req.send_request(options)
683
753
  end
684
754
 
755
+ # Describes the security policy that is attached to your file transfer
756
+ # protocol-enabled server. The response contains a description of the
757
+ # security policy's properties. For more information about security
758
+ # policies, see [Working with security policies][1].
759
+ #
760
+ #
761
+ #
762
+ # [1]: https://docs.aws.amazon.com/transfer/latest/userguide/security-policies.html
763
+ #
764
+ # @option params [required, String] :security_policy_name
765
+ # Specifies the name of the security policy that is attached to the
766
+ # server.
767
+ #
768
+ # @return [Types::DescribeSecurityPolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
769
+ #
770
+ # * {Types::DescribeSecurityPolicyResponse#security_policy #security_policy} => Types::DescribedSecurityPolicy
771
+ #
772
+ # @example Request syntax with placeholder values
773
+ #
774
+ # resp = client.describe_security_policy({
775
+ # security_policy_name: "SecurityPolicyName", # required
776
+ # })
777
+ #
778
+ # @example Response structure
779
+ #
780
+ # resp.security_policy.fips #=> Boolean
781
+ # resp.security_policy.security_policy_name #=> String
782
+ # resp.security_policy.ssh_ciphers #=> Array
783
+ # resp.security_policy.ssh_ciphers[0] #=> String
784
+ # resp.security_policy.ssh_kexs #=> Array
785
+ # resp.security_policy.ssh_kexs[0] #=> String
786
+ # resp.security_policy.ssh_macs #=> Array
787
+ # resp.security_policy.ssh_macs[0] #=> String
788
+ # resp.security_policy.tls_ciphers #=> Array
789
+ # resp.security_policy.tls_ciphers[0] #=> String
790
+ #
791
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeSecurityPolicy AWS API Documentation
792
+ #
793
+ # @overload describe_security_policy(params = {})
794
+ # @param [Hash] params ({})
795
+ def describe_security_policy(params = {}, options = {})
796
+ req = build_request(:describe_security_policy, params)
797
+ req.send_request(options)
798
+ end
799
+
685
800
  # Describes a file transfer protocol-enabled server that you specify by
686
801
  # passing the `ServerId` parameter.
687
802
  #
@@ -721,6 +836,7 @@ module Aws::Transfer
721
836
  # resp.server.logging_role #=> String
722
837
  # resp.server.protocols #=> Array
723
838
  # resp.server.protocols[0] #=> String, one of "SFTP", "FTP", "FTPS"
839
+ # resp.server.security_policy_name #=> String
724
840
  # resp.server.server_id #=> String
725
841
  # resp.server.state #=> String, one of "OFFLINE", "ONLINE", "STARTING", "STOPPING", "START_FAILED", "STOP_FAILED"
726
842
  # resp.server.tags #=> Array
@@ -841,6 +957,48 @@ module Aws::Transfer
841
957
  req.send_request(options)
842
958
  end
843
959
 
960
+ # Lists the security policies that are attached to your file transfer
961
+ # protocol-enabled servers.
962
+ #
963
+ # @option params [Integer] :max_results
964
+ # Specifies the number of security policies to return as a response to
965
+ # the `ListSecurityPolicies` query.
966
+ #
967
+ # @option params [String] :next_token
968
+ # When additional results are obtained from the `ListSecurityPolicies`
969
+ # command, a `NextToken` parameter is returned in the output. You can
970
+ # then pass the `NextToken` parameter in a subsequent command to
971
+ # continue listing additional security policies.
972
+ #
973
+ # @return [Types::ListSecurityPoliciesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
974
+ #
975
+ # * {Types::ListSecurityPoliciesResponse#next_token #next_token} => String
976
+ # * {Types::ListSecurityPoliciesResponse#security_policy_names #security_policy_names} => Array&lt;String&gt;
977
+ #
978
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
979
+ #
980
+ # @example Request syntax with placeholder values
981
+ #
982
+ # resp = client.list_security_policies({
983
+ # max_results: 1,
984
+ # next_token: "NextToken",
985
+ # })
986
+ #
987
+ # @example Response structure
988
+ #
989
+ # resp.next_token #=> String
990
+ # resp.security_policy_names #=> Array
991
+ # resp.security_policy_names[0] #=> String
992
+ #
993
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListSecurityPolicies AWS API Documentation
994
+ #
995
+ # @overload list_security_policies(params = {})
996
+ # @param [Hash] params ({})
997
+ def list_security_policies(params = {}, options = {})
998
+ req = build_request(:list_security_policies, params)
999
+ req.send_request(options)
1000
+ end
1001
+
844
1002
  # Lists the file transfer protocol-enabled servers that are associated
845
1003
  # with your AWS account.
846
1004
  #
@@ -849,7 +1007,7 @@ module Aws::Transfer
849
1007
  # return as a response to the `ListServers` query.
850
1008
  #
851
1009
  # @option params [String] :next_token
852
- # When additional results are obtained from the`ListServers` command, a
1010
+ # When additional results are obtained from the `ListServers` command, a
853
1011
  # `NextToken` parameter is returned in the output. You can then pass the
854
1012
  # `NextToken` parameter in a subsequent command to continue listing
855
1013
  # additional file transfer protocol-enabled servers.
@@ -1110,12 +1268,6 @@ module Aws::Transfer
1110
1268
  # protocol-enabled server. That server's user authentication method is
1111
1269
  # tested with a user name and password.
1112
1270
  #
1113
- # @option params [required, String] :user_name
1114
- # The name of the user account to be tested.
1115
- #
1116
- # @option params [String] :user_password
1117
- # The password of the user account to be tested.
1118
- #
1119
1271
  # @option params [String] :server_protocol
1120
1272
  # The type of file transfer protocol to be tested.
1121
1273
  #
@@ -1127,6 +1279,15 @@ module Aws::Transfer
1127
1279
  #
1128
1280
  # * File Transfer Protocol (FTP)
1129
1281
  #
1282
+ # @option params [String] :source_ip
1283
+ # The source IP address of the user account to be tested.
1284
+ #
1285
+ # @option params [required, String] :user_name
1286
+ # The name of the user account to be tested.
1287
+ #
1288
+ # @option params [String] :user_password
1289
+ # The password of the user account to be tested.
1290
+ #
1130
1291
  # @return [Types::TestIdentityProviderResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1131
1292
  #
1132
1293
  # * {Types::TestIdentityProviderResponse#response #response} => String
@@ -1138,9 +1299,10 @@ module Aws::Transfer
1138
1299
  #
1139
1300
  # resp = client.test_identity_provider({
1140
1301
  # server_id: "ServerId", # required
1302
+ # server_protocol: "SFTP", # accepts SFTP, FTP, FTPS
1303
+ # source_ip: "SourceIp",
1141
1304
  # user_name: "UserName", # required
1142
1305
  # user_password: "UserPassword",
1143
- # server_protocol: "SFTP", # accepts SFTP, FTP, FTPS
1144
1306
  # })
1145
1307
  #
1146
1308
  # @example Response structure
@@ -1203,6 +1365,41 @@ module Aws::Transfer
1203
1365
  # The Amazon Resource Name (ARN) of the AWS Certificate Manager (ACM)
1204
1366
  # certificate. Required when `Protocols` is set to `FTPS`.
1205
1367
  #
1368
+ # To request a new public certificate, see [Request a public
1369
+ # certificate][1] in the <i> AWS Certificate Manager User Guide</i>.
1370
+ #
1371
+ # To import an existing certificate into ACM, see [Importing
1372
+ # certificates into ACM][2] in the <i> AWS Certificate Manager User
1373
+ # Guide</i>.
1374
+ #
1375
+ # To request a private certificate to use FTPS through private IP
1376
+ # addresses, see [Request a private certificate][3] in the <i> AWS
1377
+ # Certificate Manager User Guide</i>.
1378
+ #
1379
+ # Certificates with the following cryptographic algorithms and key sizes
1380
+ # are supported:
1381
+ #
1382
+ # * 2048-bit RSA (RSA\_2048)
1383
+ #
1384
+ # * 4096-bit RSA (RSA\_4096)
1385
+ #
1386
+ # * Elliptic Prime Curve 256 bit (EC\_prime256v1)
1387
+ #
1388
+ # * Elliptic Prime Curve 384 bit (EC\_secp384r1)
1389
+ #
1390
+ # * Elliptic Prime Curve 521 bit (EC\_secp521r1)
1391
+ #
1392
+ # <note markdown="1"> The certificate must be a valid SSL/TLS X.509 version 3 certificate
1393
+ # with FQDN or IP address specified and information about the issuer.
1394
+ #
1395
+ # </note>
1396
+ #
1397
+ #
1398
+ #
1399
+ # [1]: https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request-public.html
1400
+ # [2]: https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html
1401
+ # [3]: https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request-private.html
1402
+ #
1206
1403
  # @option params [Types::EndpointDetails] :endpoint_details
1207
1404
  # The virtual private cloud (VPC) endpoint settings that are configured
1208
1405
  # for your file transfer protocol-enabled server. With a VPC endpoint,
@@ -1213,11 +1410,20 @@ module Aws::Transfer
1213
1410
  # @option params [String] :endpoint_type
1214
1411
  # The type of endpoint that you want your file transfer protocol-enabled
1215
1412
  # 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.
1413
+ # or a VPC endpoint. With a VPC endpoint, you can restrict access to
1414
+ # your server and resources only within your VPC.
1415
+ #
1416
+ # <note markdown="1"> It is recommended that you use `VPC` as the `EndpointType`. With this
1417
+ # endpoint type, you have the option to directly associate up to three
1418
+ # Elastic IPv4 addresses (BYO IP included) with your server's endpoint
1419
+ # and use VPC security groups to restrict traffic by the client's
1420
+ # public IP address. This is not possible with `EndpointType` set to
1421
+ # `VPC_ENDPOINT`.
1422
+ #
1423
+ # </note>
1218
1424
  #
1219
1425
  # @option params [String] :host_key
1220
- # The RSA private key as generated by `ssh-keygen -N "" -f
1426
+ # The RSA private key as generated by `ssh-keygen -N "" -m PEM -f
1221
1427
  # my-new-server-key`.
1222
1428
  #
1223
1429
  # If you aren't planning to migrate existing users from an existing
@@ -1225,12 +1431,12 @@ module Aws::Transfer
1225
1431
  # the host key. Accidentally changing a server's host key can be
1226
1432
  # disruptive.
1227
1433
  #
1228
- # For more information, see [Changing the Host Key for Your AWS Transfer
1229
- # Family Server][1] in the *AWS Transfer Family User Guide*.
1434
+ # For more information, see [Change the host key for your SFTP-enabled
1435
+ # server][1] in the *AWS Transfer Family User Guide*.
1230
1436
  #
1231
1437
  #
1232
1438
  #
1233
- # [1]: https://docs.aws.amazon.com/transfer/latest/userguide/configuring-servers.html#change-host-key
1439
+ # [1]: https://docs.aws.amazon.com/transfer/latest/userguide/edit-server-config.html#configuring-servers-change-host-key
1234
1440
  #
1235
1441
  # @option params [Types::IdentityProviderDetails] :identity_provider_details
1236
1442
  # An array containing all of the information required to call a
@@ -1254,6 +1460,26 @@ module Aws::Transfer
1254
1460
  #
1255
1461
  # * File Transfer Protocol (FTP): Unencrypted file transfer
1256
1462
  #
1463
+ # <note markdown="1"> If you select `FTPS`, you must choose a certificate stored in AWS
1464
+ # Certificate Manager (ACM) which will be used to identify your server
1465
+ # when clients connect to it over FTPS.
1466
+ #
1467
+ # If `Protocol` includes either `FTP` or `FTPS`, then the `EndpointType`
1468
+ # must be `VPC` and the `IdentityProviderType` must be `API_GATEWAY`.
1469
+ #
1470
+ # If `Protocol` includes `FTP`, then `AddressAllocationIds` cannot be
1471
+ # associated.
1472
+ #
1473
+ # If `Protocol` is set only to `SFTP`, the `EndpointType` can be set to
1474
+ # `PUBLIC` and the `IdentityProviderType` can be set to
1475
+ # `SERVICE_MANAGED`.
1476
+ #
1477
+ # </note>
1478
+ #
1479
+ # @option params [String] :security_policy_name
1480
+ # Specifies the name of the security policy that is attached to the
1481
+ # server.
1482
+ #
1257
1483
  # @option params [required, String] :server_id
1258
1484
  # A system-assigned unique identifier for a file transfer
1259
1485
  # protocol-enabled server instance that the user account is assigned to.
@@ -1280,6 +1506,7 @@ module Aws::Transfer
1280
1506
  # },
1281
1507
  # logging_role: "NullableRole",
1282
1508
  # protocols: ["SFTP"], # accepts SFTP, FTP, FTPS
1509
+ # security_policy_name: "SecurityPolicyName",
1283
1510
  # server_id: "ServerId", # required
1284
1511
  # })
1285
1512
  #
@@ -1325,8 +1552,8 @@ module Aws::Transfer
1325
1552
  # You will need to specify the "`Entry`" and "`Target`" pair, where
1326
1553
  # `Entry` shows how the path is made visible and `Target` is the actual
1327
1554
  # 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.
1555
+ # is. You will need to also make sure that your IAM role provides access
1556
+ # to paths in `Target`. The following is an example.
1330
1557
  #
1331
1558
  # `'[ "/bucket2/documentation", \{ "Entry": "your-personal-report.pdf",
1332
1559
  # "Target": "/bucket3/customized-reports/$\{transfer:UserName\}.pdf" \}
@@ -1339,7 +1566,7 @@ module Aws::Transfer
1339
1566
  #
1340
1567
  # <note markdown="1"> If the target of a logical directory entry does not exist in Amazon
1341
1568
  # 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.
1569
+ # S3 API to create 0 byte objects as place holders for your directory.
1343
1570
  # If using the CLI, use the `s3api` call instead of `s3` so you can use
1344
1571
  # the put-object operation. For example, you use the following: `aws
1345
1572
  # s3api put-object --bucket bucketname --key path/to/folder/`. Make sure
@@ -1350,19 +1577,18 @@ module Aws::Transfer
1350
1577
  #
1351
1578
  # @option params [String] :policy
1352
1579
  # Allows you to supply a scope-down policy for your user so you can use
1353
- # the same AWS Identity and Access Management (IAM) role across multiple
1354
- # users. The policy scopes down user access to portions of your Amazon
1355
- # S3 bucket. Variables you can use inside this policy include
1356
- # `$\{Transfer:UserName\}`, `$\{Transfer:HomeDirectory\}`, and
1357
- # `$\{Transfer:HomeBucket\}`.
1580
+ # the same IAM role across multiple users. The policy scopes down user
1581
+ # access to portions of your Amazon S3 bucket. Variables you can use
1582
+ # inside this policy include `$\{Transfer:UserName\}`,
1583
+ # `$\{Transfer:HomeDirectory\}`, and `$\{Transfer:HomeBucket\}`.
1358
1584
  #
1359
1585
  # <note markdown="1"> For scope-down policies, AWS Transfer Family stores the policy as a
1360
1586
  # JSON blob, instead of the Amazon Resource Name (ARN) of the policy.
1361
1587
  # You save the policy as a JSON blob and pass it in the `Policy`
1362
1588
  # argument.
1363
1589
  #
1364
- # For an example of a scope-down policy, see [Creating a Scope-Down
1365
- # Policy][1].
1590
+ # For an example of a scope-down policy, see [Creating a scope-down
1591
+ # policy][1].
1366
1592
  #
1367
1593
  # For more information, see [AssumeRole][2] in the *AWS Security Token
1368
1594
  # Service API Reference*.
@@ -1390,10 +1616,10 @@ module Aws::Transfer
1390
1616
  # @option params [required, String] :user_name
1391
1617
  # A unique string that identifies a user and is associated with a file
1392
1618
  # 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.
1619
+ # user name must be a minimum of 3 and a maximum of 100 characters long.
1620
+ # The following are valid characters: a-z, A-Z, 0-9, underscore '\_',
1621
+ # hyphen '-', period '.', and at sign '@'. The user name can't
1622
+ # start with a hyphen, period, and at sign.
1397
1623
  #
1398
1624
  # @return [Types::UpdateUserResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1399
1625
  #
@@ -1444,7 +1670,7 @@ module Aws::Transfer
1444
1670
  params: params,
1445
1671
  config: config)
1446
1672
  context[:gem_name] = 'aws-sdk-transfer'
1447
- context[:gem_version] = '1.19.0'
1673
+ context[:gem_version] = '1.24.0'
1448
1674
  Seahorse::Client::Request.new(handlers, context)
1449
1675
  end
1450
1676