aws-sdk-transfer 1.34.0 → 1.35.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.
@@ -83,10 +83,12 @@ module Aws::Transfer
83
83
  Message = Shapes::StringShape.new(name: 'Message')
84
84
  NextToken = Shapes::StringShape.new(name: 'NextToken')
85
85
  NullableRole = Shapes::StringShape.new(name: 'NullableRole')
86
+ PassiveIp = Shapes::StringShape.new(name: 'PassiveIp')
86
87
  Policy = Shapes::StringShape.new(name: 'Policy')
87
88
  PosixId = Shapes::IntegerShape.new(name: 'PosixId')
88
89
  PosixProfile = Shapes::StructureShape.new(name: 'PosixProfile')
89
90
  Protocol = Shapes::StringShape.new(name: 'Protocol')
91
+ ProtocolDetails = Shapes::StructureShape.new(name: 'ProtocolDetails')
90
92
  Protocols = Shapes::ListShape.new(name: 'Protocols')
91
93
  Resource = Shapes::StringShape.new(name: 'Resource')
92
94
  ResourceExistsException = Shapes::StructureShape.new(name: 'ResourceExistsException')
@@ -257,6 +259,7 @@ module Aws::Transfer
257
259
 
258
260
  DescribedServer.add_member(:arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "Arn"))
259
261
  DescribedServer.add_member(:certificate, Shapes::ShapeRef.new(shape: Certificate, location_name: "Certificate"))
262
+ DescribedServer.add_member(:protocol_details, Shapes::ShapeRef.new(shape: ProtocolDetails, location_name: "ProtocolDetails"))
260
263
  DescribedServer.add_member(:domain, Shapes::ShapeRef.new(shape: Domain, location_name: "Domain"))
261
264
  DescribedServer.add_member(:endpoint_details, Shapes::ShapeRef.new(shape: EndpointDetails, location_name: "EndpointDetails"))
262
265
  DescribedServer.add_member(:endpoint_type, Shapes::ShapeRef.new(shape: EndpointType, location_name: "EndpointType"))
@@ -402,6 +405,9 @@ module Aws::Transfer
402
405
  PosixProfile.add_member(:secondary_gids, Shapes::ShapeRef.new(shape: SecondaryGids, location_name: "SecondaryGids"))
403
406
  PosixProfile.struct_class = Types::PosixProfile
404
407
 
408
+ ProtocolDetails.add_member(:passive_ip, Shapes::ShapeRef.new(shape: PassiveIp, location_name: "PassiveIp"))
409
+ ProtocolDetails.struct_class = Types::ProtocolDetails
410
+
405
411
  Protocols.member = Shapes::ShapeRef.new(shape: Protocol)
406
412
 
407
413
  ResourceExistsException.add_member(:message, Shapes::ShapeRef.new(shape: Message, required: true, location_name: "Message"))
@@ -487,6 +493,7 @@ module Aws::Transfer
487
493
  UpdateAccessResponse.struct_class = Types::UpdateAccessResponse
488
494
 
489
495
  UpdateServerRequest.add_member(:certificate, Shapes::ShapeRef.new(shape: Certificate, location_name: "Certificate"))
496
+ UpdateServerRequest.add_member(:protocol_details, Shapes::ShapeRef.new(shape: ProtocolDetails, location_name: "ProtocolDetails"))
490
497
  UpdateServerRequest.add_member(:endpoint_details, Shapes::ShapeRef.new(shape: EndpointDetails, location_name: "EndpointDetails"))
491
498
  UpdateServerRequest.add_member(:endpoint_type, Shapes::ShapeRef.new(shape: EndpointType, location_name: "EndpointType"))
492
499
  UpdateServerRequest.add_member(:host_key, Shapes::ShapeRef.new(shape: HostKey, location_name: "HostKey"))
@@ -84,10 +84,10 @@ module Aws::Transfer
84
84
  # make them visible. You must specify the `Entry` and `Target` pair,
85
85
  # where `Entry` shows how the path is made visible and `Target` is the
86
86
  # actual Amazon S3 or Amazon EFS path. If you only specify a target,
87
- # it will be displayed as is. You also must ensure that your AWS
88
- # Identity and Access Management (IAM) role provides access to paths
89
- # in `Target`. This value can only be set when `HomeDirectoryType` is
90
- # set to *LOGICAL*.
87
+ # it is displayed as is. You also must ensure that your Amazon Web
88
+ # Services Identity and Access Management (IAM) role provides access
89
+ # to paths in `Target`. This value can only be set when
90
+ # `HomeDirectoryType` is set to *LOGICAL*.
91
91
  #
92
92
  # The following is an `Entry` and `Target` pair example.
93
93
  #
@@ -101,19 +101,16 @@ module Aws::Transfer
101
101
  #
102
102
  # The following is an `Entry` and `Target` pair example for `chroot`.
103
103
  #
104
- # `[ \{ "Entry": "/", "Target": "/bucket_name/home/mydirectory" \} ]`
104
+ # `[ \{ "Entry:": "/", "Target": "/bucket_name/home/mydirectory" \} ]`
105
105
  #
106
106
  # <note markdown="1"> If the target of a logical directory entry does not exist in Amazon
107
- # S3 or Amazon EFS, the entry will be ignored. As a workaround, you
108
- # can use the Amazon S3 API or EFS API to create 0-byte objects as
109
- # place holders for your directory. If using the AWS CLI, use the
110
- # `s3api` or `efsapi` call instead of `s3` or `efs` so you can use the
111
- # `put-object` operation. For example, you can use the following.
112
- #
113
- # `aws s3api put-object --bucket bucketname --key path/to/folder/`
114
- #
115
- # The end of the key name must end in a `/` for it to be considered a
116
- # folder.
107
+ # S3 or EFS, the entry is ignored. As a workaround, you can use the
108
+ # Amazon S3 API or EFS API to create 0 byte objects as place holders
109
+ # for your directory. If using the CLI, use the `s3api` or `efsapi`
110
+ # call instead of `s3` or `efs` so you can use the put-object
111
+ # operation. For example, you use the following: `aws s3api put-object
112
+ # --bucket bucketname --key path/to/folder/`. Make sure that the end
113
+ # of the key name ends in a `/` for it to be considered a folder.
117
114
  #
118
115
  # </note>
119
116
  # @return [Array<Types::HomeDirectoryMapEntry>]
@@ -128,16 +125,16 @@ module Aws::Transfer
128
125
  # <note markdown="1"> This only applies when domain of `ServerId` is S3. Amazon EFS does
129
126
  # not use scope-down policies.
130
127
  #
131
- # For scope-down policies, AWS Transfer Family stores the policy as a
132
- # JSON blob, instead of the Amazon Resource Name (ARN) of the policy.
133
- # You save the policy as a JSON blob and pass it in the `Policy`
134
- # argument.
128
+ # For scope-down policies, Amazon Web Services Transfer Family stores
129
+ # the policy as a JSON blob, instead of the Amazon Resource Name (ARN)
130
+ # of the policy. You save the policy as a JSON blob and pass it in the
131
+ # `Policy` argument.
135
132
  #
136
133
  # For an example of a scope-down policy, see [Example scope-down
137
134
  # policy][1].
138
135
  #
139
- # For more information, see [AssumeRole][2] in the *AWS Security Token
140
- # Service API Reference*.
136
+ # For more information, see [AssumeRole][2] in the *Amazon Web
137
+ # Services Security Token Service API Reference*.
141
138
  #
142
139
  # </note>
143
140
  #
@@ -176,9 +173,9 @@ module Aws::Transfer
176
173
  # A unique identifier that is required to identify specific groups
177
174
  # within your directory. The users of the group that you associate
178
175
  # have access to your Amazon S3 or Amazon EFS resources over the
179
- # enabled protocols using AWS Transfer Family. If you know the group
180
- # name, you can view the SID values by running the following command
181
- # using Windows PowerShell.
176
+ # enabled protocols using Amazon Web Services Transfer Family. If you
177
+ # know the group name, you can view the SID values by running the
178
+ # following command using Windows PowerShell.
182
179
  #
183
180
  # `Get-ADGroup -Filter \{samAccountName -like "YourGroupName*"\}
184
181
  # -Properties * | Select SamAccountName,ObjectSid`
@@ -213,8 +210,8 @@ module Aws::Transfer
213
210
  #
214
211
  # @!attribute [rw] external_id
215
212
  # The external ID of the group whose users have access to your Amazon
216
- # S3 or Amazon EFS resources over the enabled protocols using AWS
217
- # Transfer Family.
213
+ # S3 or Amazon EFS resources over the enabled protocols using Amazon
214
+ # Web Services Transfer Family.
218
215
  # @return [String]
219
216
  #
220
217
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateAccessResponse AWS API Documentation
@@ -259,19 +256,21 @@ module Aws::Transfer
259
256
  # }
260
257
  #
261
258
  # @!attribute [rw] certificate
262
- # The Amazon Resource Name (ARN) of the AWS Certificate Manager (ACM)
263
- # certificate. Required when `Protocols` is set to `FTPS`.
259
+ # The Amazon Resource Name (ARN) of the Amazon Web Services
260
+ # Certificate Manager (ACM) certificate. Required when `Protocols` is
261
+ # set to `FTPS`.
264
262
  #
265
263
  # To request a new public certificate, see [Request a public
266
- # certificate][1] in the <i> AWS Certificate Manager User Guide</i>.
264
+ # certificate][1] in the <i> Amazon Web Services Certificate Manager
265
+ # User Guide</i>.
267
266
  #
268
267
  # To import an existing certificate into ACM, see [Importing
269
- # certificates into ACM][2] in the <i> AWS Certificate Manager User
270
- # Guide</i>.
268
+ # certificates into ACM][2] in the <i> Amazon Web Services Certificate
269
+ # Manager User Guide</i>.
271
270
  #
272
271
  # To request a private certificate to use FTPS through private IP
273
- # addresses, see [Request a private certificate][3] in the <i> AWS
274
- # Certificate Manager User Guide</i>.
272
+ # addresses, see [Request a private certificate][3] in the <i> Amazon
273
+ # Web Services Certificate Manager User Guide</i>.
275
274
  #
276
275
  # Certificates with the following cryptographic algorithms and key
277
276
  # sizes are supported:
@@ -327,11 +326,11 @@ module Aws::Transfer
327
326
  # Elastic IP addresses directly to it.
328
327
  #
329
328
  # <note markdown="1"> After May 19, 2021, you won't be able to create a server using
330
- # `EndpointType=VPC_ENDPOINT` in your AWS account if your account
331
- # hasn't already done so before May 19, 2021. If you have already
332
- # created servers with `EndpointType=VPC_ENDPOINT` in your AWS account
333
- # on or before May 19, 2021, you will not be affected. After this
334
- # date, use `EndpointType`=`VPC`.
329
+ # `EndpointType=VPC_ENDPOINT` in your Amazon Web Services account if
330
+ # your account hasn't already done so before May 19, 2021. If you
331
+ # have already created servers with `EndpointType=VPC_ENDPOINT` in
332
+ # your Amazon Web Services account on or before May 19, 2021, you will
333
+ # not be affected. After this date, use `EndpointType`=`VPC`.
335
334
  #
336
335
  # For more information, see
337
336
  # https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
@@ -355,7 +354,7 @@ module Aws::Transfer
355
354
  # Accidentally changing a server's host key can be disruptive.
356
355
  #
357
356
  # For more information, see [Change the host key for your SFTP-enabled
358
- # server][1] in the *AWS Transfer Family User Guide*.
357
+ # server][1] in the *Amazon Web Services Transfer Family User Guide*.
359
358
  #
360
359
  #
361
360
  #
@@ -374,21 +373,27 @@ module Aws::Transfer
374
373
  # @!attribute [rw] identity_provider_type
375
374
  # Specifies the mode of authentication for a server. The default value
376
375
  # is `SERVICE_MANAGED`, which allows you to store and access user
377
- # credentials within the AWS Transfer Family service. Use
378
- # `AWS_DIRECTORY_SERVICE` to provide access to Active Directory groups
379
- # in AWS Managed Active Directory or Microsoft Active Directory in
380
- # your on-premises environment or in AWS using AD Connectors. This
381
- # option also requires you to provide a Directory ID using the
382
- # `IdentityProviderDetails` parameter. Use the `API_GATEWAY` value to
383
- # integrate with an identity provider of your choosing. The
384
- # `API_GATEWAY` setting requires you to provide an API Gateway
385
- # endpoint URL to call for authentication using the
376
+ # credentials within the Amazon Web Services Transfer Family service.
377
+ #
378
+ # Use `AWS_DIRECTORY_SERVICE` to provide access to Active Directory
379
+ # groups in Amazon Web Services Managed Active Directory or Microsoft
380
+ # Active Directory in your on-premises environment or in Amazon Web
381
+ # Services using AD Connectors. This option also requires you to
382
+ # provide a Directory ID using the `IdentityProviderDetails`
383
+ # parameter.
384
+ #
385
+ # Use the `API_GATEWAY` value to integrate with an identity provider
386
+ # of your choosing. The `API_GATEWAY` setting requires you to provide
387
+ # an API Gateway endpoint URL to call for authentication using the
386
388
  # `IdentityProviderDetails` parameter.
387
389
  # @return [String]
388
390
  #
389
391
  # @!attribute [rw] logging_role
390
- # Allows the service to write your users' activity to your Amazon
391
- # CloudWatch logs for monitoring and auditing purposes.
392
+ # Specifies the Amazon Resource Name (ARN) of the Amazon Web Services
393
+ # Identity and Access Management (IAM) role that allows a server to
394
+ # turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFS
395
+ # events. When set, user activity can be viewed in your CloudWatch
396
+ # logs.
392
397
  # @return [String]
393
398
  #
394
399
  # @!attribute [rw] protocols
@@ -404,9 +409,9 @@ module Aws::Transfer
404
409
  #
405
410
  # * `FTP` (File Transfer Protocol): Unencrypted file transfer
406
411
  #
407
- # <note markdown="1"> If you select `FTPS`, you must choose a certificate stored in AWS
408
- # Certificate Manager (ACM) which will be used to identify your server
409
- # when clients connect to it over FTPS.
412
+ # <note markdown="1"> If you select `FTPS`, you must choose a certificate stored in Amazon
413
+ # Web Services Certificate Manager (ACM) which is used to identify
414
+ # your server when clients connect to it over FTPS.
410
415
  #
411
416
  # If `Protocol` includes either `FTP` or `FTPS`, then the
412
417
  # `EndpointType` must be `VPC` and the `IdentityProviderType` must be
@@ -509,14 +514,15 @@ module Aws::Transfer
509
514
  # @return [String]
510
515
  #
511
516
  # @!attribute [rw] home_directory_mappings
512
- # Logical directory mappings that specify what Amazon S3 or EFS paths
513
- # and keys should be visible to your user and how you want to make
514
- # them visible. You will need to specify the `Entry` and `Target`
515
- # pair, where `Entry` shows how the path is made visible and `Target`
516
- # is the actual Amazon S3 or EFS path. If you only specify a target,
517
- # it will be displayed as is. You will need to also make sure that
518
- # your IAM role provides access to paths in `Target`. This value can
519
- # only be set when `HomeDirectoryType` is set to `LOGICAL`.
517
+ # Logical directory mappings that specify what Amazon S3 or Amazon EFS
518
+ # paths and keys should be visible to your user and how you want to
519
+ # make them visible. You must specify the `Entry` and `Target` pair,
520
+ # where `Entry` shows how the path is made visible and `Target` is the
521
+ # actual Amazon S3 or Amazon EFS path. If you only specify a target,
522
+ # it is displayed as is. You also must ensure that your Amazon Web
523
+ # Services Identity and Access Management (IAM) role provides access
524
+ # to paths in `Target`. This value can only be set when
525
+ # `HomeDirectoryType` is set to *LOGICAL*.
520
526
  #
521
527
  # The following is an `Entry` and `Target` pair example.
522
528
  #
@@ -530,13 +536,13 @@ module Aws::Transfer
530
536
  #
531
537
  # The following is an `Entry` and `Target` pair example for `chroot`.
532
538
  #
533
- # `[ \{ "Entry": "/", "Target": "/bucket_name/home/mydirectory" \} ]`
539
+ # `[ \{ "Entry:": "/", "Target": "/bucket_name/home/mydirectory" \} ]`
534
540
  #
535
541
  # <note markdown="1"> If the target of a logical directory entry does not exist in Amazon
536
- # S3 or EFS, the entry will be ignored. As a workaround, you can use
537
- # the Amazon S3 API or EFS API to create 0 byte objects as place
538
- # holders for your directory. If using the CLI, use the `s3api` or
539
- # `efsapi` call instead of `s3` or `efs` so you can use the put-object
542
+ # S3 or EFS, the entry is ignored. As a workaround, you can use the
543
+ # Amazon S3 API or EFS API to create 0 byte objects as place holders
544
+ # for your directory. If using the CLI, use the `s3api` or `efsapi`
545
+ # call instead of `s3` or `efs` so you can use the put-object
540
546
  # operation. For example, you use the following: `aws s3api put-object
541
547
  # --bucket bucketname --key path/to/folder/`. Make sure that the end
542
548
  # of the key name ends in a `/` for it to be considered a folder.
@@ -554,16 +560,16 @@ module Aws::Transfer
554
560
  # <note markdown="1"> This only applies when domain of ServerId is S3. EFS does not use
555
561
  # scope down policy.
556
562
  #
557
- # For scope-down policies, AWS Transfer Family stores the policy as a
558
- # JSON blob, instead of the Amazon Resource Name (ARN) of the policy.
559
- # You save the policy as a JSON blob and pass it in the `Policy`
560
- # argument.
563
+ # For scope-down policies, Amazon Web Services Transfer Family stores
564
+ # the policy as a JSON blob, instead of the Amazon Resource Name (ARN)
565
+ # of the policy. You save the policy as a JSON blob and pass it in the
566
+ # `Policy` argument.
561
567
  #
562
568
  # For an example of a scope-down policy, see [Example scope-down
563
569
  # policy][1].
564
570
  #
565
- # For more information, see [AssumeRole][2] in the *AWS Security Token
566
- # Service API Reference*.
571
+ # For more information, see [AssumeRole][2] in the *Amazon Web
572
+ # Services Security Token Service API Reference*.
567
573
  #
568
574
  # </note>
569
575
  #
@@ -669,9 +675,9 @@ module Aws::Transfer
669
675
  # A unique identifier that is required to identify specific groups
670
676
  # within your directory. The users of the group that you associate
671
677
  # have access to your Amazon S3 or Amazon EFS resources over the
672
- # enabled protocols using AWS Transfer Family. If you know the group
673
- # name, you can view the SID values by running the following command
674
- # using Windows PowerShell.
678
+ # enabled protocols using Amazon Web Services Transfer Family. If you
679
+ # know the group name, you can view the SID values by running the
680
+ # following command using Windows PowerShell.
675
681
  #
676
682
  # `Get-ADGroup -Filter \{samAccountName -like "YourGroupName*"\}
677
683
  # -Properties * | Select SamAccountName,ObjectSid`
@@ -790,9 +796,9 @@ module Aws::Transfer
790
796
  # A unique identifier that is required to identify specific groups
791
797
  # within your directory. The users of the group that you associate
792
798
  # have access to your Amazon S3 or Amazon EFS resources over the
793
- # enabled protocols using AWS Transfer Family. If you know the group
794
- # name, you can view the SID values by running the following command
795
- # using Windows PowerShell.
799
+ # enabled protocols using Amazon Web Services Transfer Family. If you
800
+ # know the group name, you can view the SID values by running the
801
+ # following command using Windows PowerShell.
796
802
  #
797
803
  # `Get-ADGroup -Filter \{samAccountName -like "YourGroupName*"\}
798
804
  # -Properties * | Select SamAccountName,ObjectSid`
@@ -912,8 +918,8 @@ module Aws::Transfer
912
918
  #
913
919
  # @!attribute [rw] user_name
914
920
  # The name of the user assigned to one or more servers. User names are
915
- # part of the sign-in credentials to use the AWS Transfer Family
916
- # service and perform file transfer tasks.
921
+ # part of the sign-in credentials to use the Amazon Web Services
922
+ # Transfer Family service and perform file transfer tasks.
917
923
  # @return [String]
918
924
  #
919
925
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeUserRequest AWS API Documentation
@@ -954,14 +960,15 @@ module Aws::Transfer
954
960
  # @return [String]
955
961
  #
956
962
  # @!attribute [rw] home_directory_mappings
957
- # Specifies the logical directory mappings that specify what Amazon S3
958
- # or Amazon EFS paths and keys should be visible to the associated
959
- # access and how you want to make them visible. You must specify the
960
- # "`Entry`" and "`Target`" pair, where `Entry` shows how the path
961
- # is made visible and `Target` is the actual Amazon S3 or EFS path. If
962
- # you only specify a target, it will be displayed as is. You also must
963
- # ensure that your AWS Identity and Access Management (IAM) role
964
- # provides access to paths in `Target`.
963
+ # Logical directory mappings that specify what Amazon S3 or Amazon EFS
964
+ # paths and keys should be visible to your user and how you want to
965
+ # make them visible. You must specify the `Entry` and `Target` pair,
966
+ # where `Entry` shows how the path is made visible and `Target` is the
967
+ # actual Amazon S3 or Amazon EFS path. If you only specify a target,
968
+ # it is displayed as is. You also must ensure that your Amazon Web
969
+ # Services Identity and Access Management (IAM) role provides access
970
+ # to paths in `Target`. This value can only be set when
971
+ # `HomeDirectoryType` is set to *LOGICAL*.
965
972
  #
966
973
  # In most cases, you can use this value instead of the scope-down
967
974
  # policy to lock down the associated access to the designated home
@@ -1011,9 +1018,9 @@ module Aws::Transfer
1011
1018
  # A unique identifier that is required to identify specific groups
1012
1019
  # within your directory. The users of the group that you associate
1013
1020
  # have access to your Amazon S3 or Amazon EFS resources over the
1014
- # enabled protocols using AWS Transfer Family. If you know the group
1015
- # name, you can view the SID values by running the following command
1016
- # using Windows PowerShell.
1021
+ # enabled protocols using Amazon Web Services Transfer Family. If you
1022
+ # know the group name, you can view the SID values by running the
1023
+ # following command using Windows PowerShell.
1017
1024
  #
1018
1025
  # `Get-ADGroup -Filter \{samAccountName -like "YourGroupName*"\}
1019
1026
  # -Properties * | Select SamAccountName,ObjectSid`
@@ -1102,18 +1109,30 @@ module Aws::Transfer
1102
1109
  # @return [String]
1103
1110
  #
1104
1111
  # @!attribute [rw] certificate
1105
- # Specifies the ARN of the AWS Certificate Manager (ACM) certificate.
1106
- # Required when `Protocols` is set to `FTPS`.
1112
+ # Specifies the ARN of the Amazon Web ServicesCertificate Manager
1113
+ # (ACM) certificate. Required when `Protocols` is set to `FTPS`.
1107
1114
  # @return [String]
1108
1115
  #
1116
+ # @!attribute [rw] protocol_details
1117
+ # The protocol settings that are configured for your server.
1118
+ #
1119
+ # Use the `PassiveIp` parameter to indicate passive mode. Enter a
1120
+ # single dotted-quad IPv4 address, such as the external IP address of
1121
+ # a firewall, router, or load balancer.
1122
+ # @return [Types::ProtocolDetails]
1123
+ #
1109
1124
  # @!attribute [rw] domain
1110
1125
  # Specifies the domain of the storage system that is used for file
1111
1126
  # transfers.
1112
1127
  # @return [String]
1113
1128
  #
1114
1129
  # @!attribute [rw] endpoint_details
1115
- # Specifies the virtual private cloud (VPC) endpoint settings that you
1116
- # configured for your server.
1130
+ # The virtual private cloud (VPC) endpoint settings that are
1131
+ # configured for your server. When you host your endpoint within your
1132
+ # VPC, you can make it accessible only to resources within your VPC,
1133
+ # or you can attach Elastic IP addresses and make it accessible to
1134
+ # clients over the internet. Your VPC's default security groups are
1135
+ # automatically assigned to your endpoint.
1117
1136
  # @return [Types::EndpointDetails]
1118
1137
  #
1119
1138
  # @!attribute [rw] endpoint_type
@@ -1135,22 +1154,29 @@ module Aws::Transfer
1135
1154
  # @return [Types::IdentityProviderDetails]
1136
1155
  #
1137
1156
  # @!attribute [rw] identity_provider_type
1138
- # Specifies the mode of authentication method enabled for this
1139
- # service. A value of `AWS_DIRECTORY_SERVICE` means that you are
1140
- # providing access to Active Directory groups in AWS Managed Active
1141
- # Directory or Microsoft Active Directory in your on-premises
1142
- # environment or in AWS using AD Connectors. A value of
1143
- # `SERVICE_MANAGED` means that you are using this server to store and
1144
- # access user credentials within the service. A value of `API_GATEWAY`
1145
- # indicates that you have integrated an API Gateway endpoint that will
1146
- # be invoked for authenticating your user into the service.
1157
+ # Specifies the mode of authentication for a server. The default value
1158
+ # is `SERVICE_MANAGED`, which allows you to store and access user
1159
+ # credentials within the Amazon Web Services Transfer Family service.
1160
+ #
1161
+ # Use `AWS_DIRECTORY_SERVICE` to provide access to Active Directory
1162
+ # groups in Amazon Web Services Managed Active Directory or Microsoft
1163
+ # Active Directory in your on-premises environment or in Amazon Web
1164
+ # Services using AD Connectors. This option also requires you to
1165
+ # provide a Directory ID using the `IdentityProviderDetails`
1166
+ # parameter.
1167
+ #
1168
+ # Use the `API_GATEWAY` value to integrate with an identity provider
1169
+ # of your choosing. The `API_GATEWAY` setting requires you to provide
1170
+ # an API Gateway endpoint URL to call for authentication using the
1171
+ # `IdentityProviderDetails` parameter.
1147
1172
  # @return [String]
1148
1173
  #
1149
1174
  # @!attribute [rw] logging_role
1150
- # Specifies the AWS Identity and Access Management (IAM) role that
1151
- # allows a server to turn on Amazon CloudWatch logging for Amazon S3
1152
- # or Amazon EFS events. When set, user activity can be viewed in your
1153
- # CloudWatch logs.
1175
+ # Specifies the Amazon Resource Name (ARN) of the Amazon Web Services
1176
+ # Identity and Access Management (IAM) role that allows a server to
1177
+ # turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFS
1178
+ # events. When set, user activity can be viewed in your CloudWatch
1179
+ # logs.
1154
1180
  # @return [String]
1155
1181
  #
1156
1182
  # @!attribute [rw] protocols
@@ -1204,6 +1230,7 @@ module Aws::Transfer
1204
1230
  class DescribedServer < Struct.new(
1205
1231
  :arn,
1206
1232
  :certificate,
1233
+ :protocol_details,
1207
1234
  :domain,
1208
1235
  :endpoint_details,
1209
1236
  :endpoint_type,
@@ -1236,14 +1263,15 @@ module Aws::Transfer
1236
1263
  # @return [String]
1237
1264
  #
1238
1265
  # @!attribute [rw] home_directory_mappings
1239
- # Specifies the logical directory mappings that specify what Amazon S3
1240
- # or EFS paths and keys should be visible to your user and how you
1241
- # want to make them visible. You will need to specify the "`Entry`"
1242
- # and "`Target`" pair, where `Entry` shows how the path is made
1243
- # visible and `Target` is the actual Amazon S3 or EFS path. If you
1244
- # only specify a target, it will be displayed as is. You will need to
1245
- # also make sure that your AWS Identity and Access Management (IAM)
1246
- # role provides access to paths in `Target`.
1266
+ # Logical directory mappings that specify what Amazon S3 or Amazon EFS
1267
+ # paths and keys should be visible to your user and how you want to
1268
+ # make them visible. You must specify the `Entry` and `Target` pair,
1269
+ # where `Entry` shows how the path is made visible and `Target` is the
1270
+ # actual Amazon S3 or Amazon EFS path. If you only specify a target,
1271
+ # it is displayed as is. You also must ensure that your Amazon Web
1272
+ # Services Identity and Access Management (IAM) role provides access
1273
+ # to paths in `Target`. This value can only be set when
1274
+ # `HomeDirectoryType` is set to *LOGICAL*.
1247
1275
  #
1248
1276
  # In most cases, you can use this value instead of the scope-down
1249
1277
  # policy to lock your user down to the designated home directory
@@ -1330,11 +1358,11 @@ module Aws::Transfer
1330
1358
  # API and attach an Elastic IP address to your server's endpoint.
1331
1359
  #
1332
1360
  # <note markdown="1"> After May 19, 2021, you won't be able to create a server using
1333
- # `EndpointType=VPC_ENDPOINT` in your AWS account if your account
1334
- # hasn't already done so before May 19, 2021. If you have already
1335
- # created servers with `EndpointType=VPC_ENDPOINT` in your AWS account
1336
- # on or before May 19, 2021, you will not be affected. After this date,
1337
- # use `EndpointType`=`VPC`.
1361
+ # `EndpointType=VPC_ENDPOINT` in your Amazon Web Servicesaccount if your
1362
+ # account hasn't already done so before May 19, 2021. If you have
1363
+ # already created servers with `EndpointType=VPC_ENDPOINT` in your
1364
+ # Amazon Web Servicesaccount on or before May 19, 2021, you will not be
1365
+ # affected. After this date, use `EndpointType`=`VPC`.
1338
1366
  #
1339
1367
  # For more information, see
1340
1368
  # https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
@@ -1426,6 +1454,21 @@ module Aws::Transfer
1426
1454
  # Represents an object that contains entries and targets for
1427
1455
  # `HomeDirectoryMappings`.
1428
1456
  #
1457
+ # The following is an `Entry` and `Target` pair example for `chroot`.
1458
+ #
1459
+ # `[ \{ "Entry:": "/", "Target": "/bucket_name/home/mydirectory" \} ]`
1460
+ #
1461
+ # <note markdown="1"> If the target of a logical directory entry does not exist in Amazon S3
1462
+ # or EFS, the entry is ignored. As a workaround, you can use the Amazon
1463
+ # S3 API or EFS API to create 0 byte objects as place holders for your
1464
+ # directory. If using the CLI, use the `s3api` or `efsapi` call instead
1465
+ # of `s3` or `efs` so you can use the put-object operation. For example,
1466
+ # you use the following: `aws s3api put-object --bucket bucketname --key
1467
+ # path/to/folder/`. Make sure that the end of the key name ends in a `/`
1468
+ # for it to be considered a folder.
1469
+ #
1470
+ # </note>
1471
+ #
1429
1472
  # @note When making an API call, you may pass HomeDirectoryMapEntry
1430
1473
  # data as a hash:
1431
1474
  #
@@ -1435,7 +1478,7 @@ module Aws::Transfer
1435
1478
  # }
1436
1479
  #
1437
1480
  # @!attribute [rw] entry
1438
- # Represents an entry and a target for `HomeDirectoryMappings`.
1481
+ # Represents an entry for `HomeDirectoryMappings`.
1439
1482
  # @return [String]
1440
1483
  #
1441
1484
  # @!attribute [rw] target
@@ -1475,8 +1518,8 @@ module Aws::Transfer
1475
1518
  # @return [String]
1476
1519
  #
1477
1520
  # @!attribute [rw] directory_id
1478
- # The identifier of the AWS Directory Service directory that you want
1479
- # to stop sharing.
1521
+ # The identifier of the Amazon Web ServicesDirectory Service directory
1522
+ # that you want to stop sharing.
1480
1523
  # @return [String]
1481
1524
  #
1482
1525
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/IdentityProviderDetails AWS API Documentation
@@ -1547,8 +1590,8 @@ module Aws::Transfer
1547
1590
  include Aws::Structure
1548
1591
  end
1549
1592
 
1550
- # This exception is thrown when an error occurs in the AWS Transfer
1551
- # Family service.
1593
+ # This exception is thrown when an error occurs in the Amazon Web
1594
+ # ServicesTransfer Family service.
1552
1595
  #
1553
1596
  # @!attribute [rw] message
1554
1597
  # @return [String]
@@ -1758,8 +1801,8 @@ module Aws::Transfer
1758
1801
  #
1759
1802
  # @!attribute [rw] arn
1760
1803
  # Requests the tags associated with a particular Amazon Resource Name
1761
- # (ARN). An ARN is an identifier for a specific AWS resource, such as
1762
- # a server, user, or role.
1804
+ # (ARN). An ARN is an identifier for a specific Amazon Web Services
1805
+ # resource, such as a server, user, or role.
1763
1806
  # @return [String]
1764
1807
  #
1765
1808
  # @!attribute [rw] max_results
@@ -1908,9 +1951,9 @@ module Aws::Transfer
1908
1951
  # A unique identifier that is required to identify specific groups
1909
1952
  # within your directory. The users of the group that you associate
1910
1953
  # have access to your Amazon S3 or Amazon EFS resources over the
1911
- # enabled protocols using AWS Transfer Family. If you know the group
1912
- # name, you can view the SID values by running the following command
1913
- # using Windows PowerShell.
1954
+ # enabled protocols using Amazon Web Services Transfer Family. If you
1955
+ # know the group name, you can view the SID values by running the
1956
+ # following command using Windows PowerShell.
1914
1957
  #
1915
1958
  # `Get-ADGroup -Filter \{samAccountName -like "YourGroupName*"\}
1916
1959
  # -Properties * | Select SamAccountName,ObjectSid`
@@ -1949,10 +1992,21 @@ module Aws::Transfer
1949
1992
  # @return [String]
1950
1993
  #
1951
1994
  # @!attribute [rw] identity_provider_type
1952
- # Specifies the authentication method used to validate a user for a
1953
- # server that was specified. This can include Secure Shell (SSH),
1954
- # Active Directory groups, user name and password combinations, or
1955
- # your own custom authentication method.
1995
+ # Specifies the mode of authentication for a server. The default value
1996
+ # is `SERVICE_MANAGED`, which allows you to store and access user
1997
+ # credentials within the Amazon Web Services Transfer Family service.
1998
+ #
1999
+ # Use `AWS_DIRECTORY_SERVICE` to provide access to Active Directory
2000
+ # groups in Amazon Web Services Managed Active Directory or Microsoft
2001
+ # Active Directory in your on-premises environment or in Amazon Web
2002
+ # Services using AD Connectors. This option also requires you to
2003
+ # provide a Directory ID using the `IdentityProviderDetails`
2004
+ # parameter.
2005
+ #
2006
+ # Use the `API_GATEWAY` value to integrate with an identity provider
2007
+ # of your choosing. The `API_GATEWAY` setting requires you to provide
2008
+ # an API Gateway endpoint URL to call for authentication using the
2009
+ # `IdentityProviderDetails` parameter.
1956
2010
  # @return [String]
1957
2011
  #
1958
2012
  # @!attribute [rw] endpoint_type
@@ -1962,8 +2016,11 @@ module Aws::Transfer
1962
2016
  # @return [String]
1963
2017
  #
1964
2018
  # @!attribute [rw] logging_role
1965
- # Specifies the AWS Identity and Access Management (IAM) role that
1966
- # allows a server to turn on Amazon CloudWatch logging.
2019
+ # Specifies the Amazon Resource Name (ARN) of the Amazon Web Services
2020
+ # Identity and Access Management (IAM) role that allows a server to
2021
+ # turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFS
2022
+ # events. When set, user activity can be viewed in your CloudWatch
2023
+ # logs.
1967
2024
  # @return [String]
1968
2025
  #
1969
2026
  # @!attribute [rw] server_id
@@ -2110,6 +2167,38 @@ module Aws::Transfer
2110
2167
  include Aws::Structure
2111
2168
  end
2112
2169
 
2170
+ # The protocol settings that are configured for your server.
2171
+ #
2172
+ # <note markdown="1"> This type is only valid in the `UpdateServer` API.
2173
+ #
2174
+ # </note>
2175
+ #
2176
+ # @note When making an API call, you may pass ProtocolDetails
2177
+ # data as a hash:
2178
+ #
2179
+ # {
2180
+ # passive_ip: "PassiveIp",
2181
+ # }
2182
+ #
2183
+ # @!attribute [rw] passive_ip
2184
+ # Indicates passive mode, for FTP and FTPS protocols. Enter a single
2185
+ # dotted-quad IPv4 address, such as the external IP address of a
2186
+ # firewall, router, or load balancer. For example:
2187
+ #
2188
+ # ` aws transfer update-server --protocol-details PassiveIp=0.0.0.0 `
2189
+ #
2190
+ # Replace ` 0.0.0.0 ` in the example above with the actual IP address
2191
+ # you want to use.
2192
+ # @return [String]
2193
+ #
2194
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ProtocolDetails AWS API Documentation
2195
+ #
2196
+ class ProtocolDetails < Struct.new(
2197
+ :passive_ip)
2198
+ SENSITIVE = []
2199
+ include Aws::Structure
2200
+ end
2201
+
2113
2202
  # The requested resource does not exist.
2114
2203
  #
2115
2204
  # @!attribute [rw] message
@@ -2131,8 +2220,8 @@ module Aws::Transfer
2131
2220
  include Aws::Structure
2132
2221
  end
2133
2222
 
2134
- # This exception is thrown when a resource is not found by the AWS
2135
- # Transfer Family service.
2223
+ # This exception is thrown when a resource is not found by the Amazon
2224
+ # Web ServicesTransfer Family service.
2136
2225
  #
2137
2226
  # @!attribute [rw] message
2138
2227
  # @return [String]
@@ -2153,8 +2242,8 @@ module Aws::Transfer
2153
2242
  include Aws::Structure
2154
2243
  end
2155
2244
 
2156
- # The request has failed because the AWS Transfer Family service is not
2157
- # available.
2245
+ # The request has failed because the Amazon Web ServicesTransfer Family
2246
+ # service is not available.
2158
2247
  #
2159
2248
  # @!attribute [rw] message
2160
2249
  # @return [String]
@@ -2284,8 +2373,8 @@ module Aws::Transfer
2284
2373
  # }
2285
2374
  #
2286
2375
  # @!attribute [rw] arn
2287
- # An Amazon Resource Name (ARN) for a specific AWS resource, such as a
2288
- # server, user, or role.
2376
+ # An Amazon Resource Name (ARN) for a specific Amazon Web Services
2377
+ # resource, such as a server, user, or role.
2289
2378
  # @return [String]
2290
2379
  #
2291
2380
  # @!attribute [rw] tags
@@ -2407,8 +2496,8 @@ module Aws::Transfer
2407
2496
  #
2408
2497
  # @!attribute [rw] arn
2409
2498
  # The value of the resource that will have the tag removed. An Amazon
2410
- # Resource Name (ARN) is an identifier for a specific AWS resource,
2411
- # such as a server, user, or role.
2499
+ # Resource Name (ARN) is an identifier for a specific Amazon Web
2500
+ # Services resource, such as a server, user, or role.
2412
2501
  # @return [String]
2413
2502
  #
2414
2503
  # @!attribute [rw] tag_keys
@@ -2472,10 +2561,10 @@ module Aws::Transfer
2472
2561
  # make them visible. You must specify the `Entry` and `Target` pair,
2473
2562
  # where `Entry` shows how the path is made visible and `Target` is the
2474
2563
  # actual Amazon S3 or Amazon EFS path. If you only specify a target,
2475
- # it will be displayed as is. You also must ensure that your AWS
2476
- # Identity and Access Management (IAM) role provides access to paths
2477
- # in `Target`. This value can only be set when `HomeDirectoryType` is
2478
- # set to *LOGICAL*.
2564
+ # it is displayed as is. You also must ensure that your Amazon Web
2565
+ # Services Identity and Access Management (IAM) role provides access
2566
+ # to paths in `Target`. This value can only be set when
2567
+ # `HomeDirectoryType` is set to *LOGICAL*.
2479
2568
  #
2480
2569
  # The following is an `Entry` and `Target` pair example.
2481
2570
  #
@@ -2489,19 +2578,16 @@ module Aws::Transfer
2489
2578
  #
2490
2579
  # The following is an `Entry` and `Target` pair example for `chroot`.
2491
2580
  #
2492
- # `[ \{ "Entry": "/", "Target": "/bucket_name/home/mydirectory" \} ]`
2581
+ # `[ \{ "Entry:": "/", "Target": "/bucket_name/home/mydirectory" \} ]`
2493
2582
  #
2494
2583
  # <note markdown="1"> If the target of a logical directory entry does not exist in Amazon
2495
- # S3 or Amazon EFS, the entry will be ignored. As a workaround, you
2496
- # can use the Amazon S3 API or EFS API to create 0-byte objects as
2497
- # place holders for your directory. If using the AWS CLI, use the
2498
- # `s3api` or `efsapi` call instead of `s3` or `efs` so you can use the
2499
- # `put-object` operation. For example, you can use the following.
2500
- #
2501
- # `aws s3api put-object --bucket bucketname --key path/to/folder/`
2502
- #
2503
- # The end of the key name must end in a `/` for it to be considered a
2504
- # folder.
2584
+ # S3 or EFS, the entry is ignored. As a workaround, you can use the
2585
+ # Amazon S3 API or EFS API to create 0 byte objects as place holders
2586
+ # for your directory. If using the CLI, use the `s3api` or `efsapi`
2587
+ # call instead of `s3` or `efs` so you can use the put-object
2588
+ # operation. For example, you use the following: `aws s3api put-object
2589
+ # --bucket bucketname --key path/to/folder/`. Make sure that the end
2590
+ # of the key name ends in a `/` for it to be considered a folder.
2505
2591
  #
2506
2592
  # </note>
2507
2593
  # @return [Array<Types::HomeDirectoryMapEntry>]
@@ -2516,16 +2602,16 @@ module Aws::Transfer
2516
2602
  # <note markdown="1"> This only applies when domain of `ServerId` is S3. Amazon EFS does
2517
2603
  # not use scope down policy.
2518
2604
  #
2519
- # For scope-down policies, AWS Transfer Family stores the policy as a
2520
- # JSON blob, instead of the Amazon Resource Name (ARN) of the policy.
2521
- # You save the policy as a JSON blob and pass it in the `Policy`
2522
- # argument.
2605
+ # For scope-down policies, Amazon Web ServicesTransfer Family stores
2606
+ # the policy as a JSON blob, instead of the Amazon Resource Name (ARN)
2607
+ # of the policy. You save the policy as a JSON blob and pass it in the
2608
+ # `Policy` argument.
2523
2609
  #
2524
2610
  # For an example of a scope-down policy, see [Example scope-down
2525
2611
  # policy][1].
2526
2612
  #
2527
- # For more information, see [AssumeRole][2] in the *AWS Security Token
2528
- # Service API Reference*.
2613
+ # For more information, see [AssumeRole][2] in the *Amazon Web
2614
+ # ServicesSecurity Token Service API Reference*.
2529
2615
  #
2530
2616
  # </note>
2531
2617
  #
@@ -2564,9 +2650,9 @@ module Aws::Transfer
2564
2650
  # A unique identifier that is required to identify specific groups
2565
2651
  # within your directory. The users of the group that you associate
2566
2652
  # have access to your Amazon S3 or Amazon EFS resources over the
2567
- # enabled protocols using AWS Transfer Family. If you know the group
2568
- # name, you can view the SID values by running the following command
2569
- # using Windows PowerShell.
2653
+ # enabled protocols using Amazon Web Services Transfer Family. If you
2654
+ # know the group name, you can view the SID values by running the
2655
+ # following command using Windows PowerShell.
2570
2656
  #
2571
2657
  # `Get-ADGroup -Filter \{samAccountName -like "YourGroupName*"\}
2572
2658
  # -Properties * | Select SamAccountName,ObjectSid`
@@ -2601,8 +2687,8 @@ module Aws::Transfer
2601
2687
  #
2602
2688
  # @!attribute [rw] external_id
2603
2689
  # The external ID of the group whose users have access to your Amazon
2604
- # S3 or Amazon EFS resources over the enabled protocols using AWS
2605
- # Transfer Family.
2690
+ # S3 or Amazon EFS resources over the enabled protocols using Amazon
2691
+ # Web ServicesTransfer Family.
2606
2692
  # @return [String]
2607
2693
  #
2608
2694
  # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateAccessResponse AWS API Documentation
@@ -2619,6 +2705,9 @@ module Aws::Transfer
2619
2705
  #
2620
2706
  # {
2621
2707
  # certificate: "Certificate",
2708
+ # protocol_details: {
2709
+ # passive_ip: "PassiveIp",
2710
+ # },
2622
2711
  # endpoint_details: {
2623
2712
  # address_allocation_ids: ["AddressAllocationId"],
2624
2713
  # subnet_ids: ["SubnetId"],
@@ -2640,19 +2729,21 @@ module Aws::Transfer
2640
2729
  # }
2641
2730
  #
2642
2731
  # @!attribute [rw] certificate
2643
- # The Amazon Resource Name (ARN) of the AWS Certificate Manager (ACM)
2644
- # certificate. Required when `Protocols` is set to `FTPS`.
2732
+ # The Amazon Resource Name (ARN) of the Amazon Web ServicesCertificate
2733
+ # Manager (ACM) certificate. Required when `Protocols` is set to
2734
+ # `FTPS`.
2645
2735
  #
2646
2736
  # To request a new public certificate, see [Request a public
2647
- # certificate][1] in the <i> AWS Certificate Manager User Guide</i>.
2737
+ # certificate][1] in the <i> Amazon Web ServicesCertificate Manager
2738
+ # User Guide</i>.
2648
2739
  #
2649
2740
  # To import an existing certificate into ACM, see [Importing
2650
- # certificates into ACM][2] in the <i> AWS Certificate Manager User
2651
- # Guide</i>.
2741
+ # certificates into ACM][2] in the <i> Amazon Web ServicesCertificate
2742
+ # Manager User Guide</i>.
2652
2743
  #
2653
2744
  # To request a private certificate to use FTPS through private IP
2654
- # addresses, see [Request a private certificate][3] in the <i> AWS
2655
- # Certificate Manager User Guide</i>.
2745
+ # addresses, see [Request a private certificate][3] in the <i> Amazon
2746
+ # Web ServicesCertificate Manager User Guide</i>.
2656
2747
  #
2657
2748
  # Certificates with the following cryptographic algorithms and key
2658
2749
  # sizes are supported:
@@ -2679,12 +2770,21 @@ module Aws::Transfer
2679
2770
  # [3]: https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request-private.html
2680
2771
  # @return [String]
2681
2772
  #
2773
+ # @!attribute [rw] protocol_details
2774
+ # The protocol settings that are configured for your server.
2775
+ #
2776
+ # Use the `PassiveIp` parameter to indicate passive mode (for FTP and
2777
+ # FTPS protocols). Enter a single dotted-quad IPv4 address, such as
2778
+ # the external IP address of a firewall, router, or load balancer.
2779
+ # @return [Types::ProtocolDetails]
2780
+ #
2682
2781
  # @!attribute [rw] endpoint_details
2683
2782
  # The virtual private cloud (VPC) endpoint settings that are
2684
- # configured for your server. With a VPC endpoint, you can restrict
2685
- # access to your server to resources only within your VPC. To control
2686
- # incoming internet traffic, you will need to associate one or more
2687
- # Elastic IP addresses with your server's endpoint.
2783
+ # configured for your server. When you host your endpoint within your
2784
+ # VPC, you can make it accessible only to resources within your VPC,
2785
+ # or you can attach Elastic IP addresses and make it accessible to
2786
+ # clients over the internet. Your VPC's default security groups are
2787
+ # automatically assigned to your endpoint.
2688
2788
  # @return [Types::EndpointDetails]
2689
2789
  #
2690
2790
  # @!attribute [rw] endpoint_type
@@ -2696,11 +2796,11 @@ module Aws::Transfer
2696
2796
  # Elastic IP addresses directly to it.
2697
2797
  #
2698
2798
  # <note markdown="1"> After May 19, 2021, you won't be able to create a server using
2699
- # `EndpointType=VPC_ENDPOINT` in your AWS account if your account
2700
- # hasn't already done so before May 19, 2021. If you have already
2701
- # created servers with `EndpointType=VPC_ENDPOINT` in your AWS account
2702
- # on or before May 19, 2021, you will not be affected. After this
2703
- # date, use `EndpointType`=`VPC`.
2799
+ # `EndpointType=VPC_ENDPOINT` in your Amazon Web Servicesaccount if
2800
+ # your account hasn't already done so before May 19, 2021. If you
2801
+ # have already created servers with `EndpointType=VPC_ENDPOINT` in
2802
+ # your Amazon Web Servicesaccount on or before May 19, 2021, you will
2803
+ # not be affected. After this date, use `EndpointType`=`VPC`.
2704
2804
  #
2705
2805
  # For more information, see
2706
2806
  # https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint.
@@ -2724,7 +2824,7 @@ module Aws::Transfer
2724
2824
  # changing a server's host key can be disruptive.
2725
2825
  #
2726
2826
  # For more information, see [Change the host key for your SFTP-enabled
2727
- # server][1] in the *AWS Transfer Family User Guide*.
2827
+ # server][1] in the *Amazon Web ServicesTransfer Family User Guide*.
2728
2828
  #
2729
2829
  #
2730
2830
  #
@@ -2737,9 +2837,11 @@ module Aws::Transfer
2737
2837
  # @return [Types::IdentityProviderDetails]
2738
2838
  #
2739
2839
  # @!attribute [rw] logging_role
2740
- # Changes the AWS Identity and Access Management (IAM) role that
2741
- # allows Amazon S3 or Amazon EFS events to be logged in Amazon
2742
- # CloudWatch, turning logging on or off.
2840
+ # Specifies the Amazon Resource Name (ARN) of the Amazon Web Services
2841
+ # Identity and Access Management (IAM) role that allows a server to
2842
+ # turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFS
2843
+ # events. When set, user activity can be viewed in your CloudWatch
2844
+ # logs.
2743
2845
  # @return [String]
2744
2846
  #
2745
2847
  # @!attribute [rw] protocols
@@ -2755,9 +2857,9 @@ module Aws::Transfer
2755
2857
  #
2756
2858
  # * File Transfer Protocol (FTP): Unencrypted file transfer
2757
2859
  #
2758
- # <note markdown="1"> If you select `FTPS`, you must choose a certificate stored in AWS
2759
- # Certificate Manager (ACM) which will be used to identify your server
2760
- # when clients connect to it over FTPS.
2860
+ # <note markdown="1"> If you select `FTPS`, you must choose a certificate stored in Amazon
2861
+ # Web ServicesCertificate Manager (ACM) which will be used to identify
2862
+ # your server when clients connect to it over FTPS.
2761
2863
  #
2762
2864
  # If `Protocol` includes either `FTP` or `FTPS`, then the
2763
2865
  # `EndpointType` must be `VPC` and the `IdentityProviderType` must be
@@ -2787,6 +2889,7 @@ module Aws::Transfer
2787
2889
  #
2788
2890
  class UpdateServerRequest < Struct.new(
2789
2891
  :certificate,
2892
+ :protocol_details,
2790
2893
  :endpoint_details,
2791
2894
  :endpoint_type,
2792
2895
  :host_key,
@@ -2855,30 +2958,36 @@ module Aws::Transfer
2855
2958
  # @!attribute [rw] home_directory_mappings
2856
2959
  # Logical directory mappings that specify what Amazon S3 or Amazon EFS
2857
2960
  # paths and keys should be visible to your user and how you want to
2858
- # make them visible. You will need to specify the "`Entry`" and
2859
- # "`Target`" pair, where `Entry` shows how the path is made visible
2860
- # and `Target` is the actual Amazon S3 or Amazon EFS path. If you only
2861
- # specify a target, it will be displayed as is. You will need to also
2862
- # make sure that your IAM role provides access to paths in `Target`.
2863
- # The following is an example.
2961
+ # make them visible. You must specify the `Entry` and `Target` pair,
2962
+ # where `Entry` shows how the path is made visible and `Target` is the
2963
+ # actual Amazon S3 or Amazon EFS path. If you only specify a target,
2964
+ # it is displayed as is. You also must ensure that your Amazon Web
2965
+ # Services Identity and Access Management (IAM) role provides access
2966
+ # to paths in `Target`. This value can only be set when
2967
+ # `HomeDirectoryType` is set to *LOGICAL*.
2864
2968
  #
2865
- # `'[ "/bucket2/documentation", \{ "Entry":
2866
- # "your-personal-report.pdf", "Target":
2867
- # "/bucket3/customized-reports/$\{transfer:UserName\}.pdf" \} ]'`
2969
+ # The following is an `Entry` and `Target` pair example.
2970
+ #
2971
+ # `[ \{ "Entry": "your-personal-report.pdf", "Target":
2972
+ # "/bucket3/customized-reports/$\{transfer:UserName\}.pdf" \} ]`
2868
2973
  #
2869
2974
  # In most cases, you can use this value instead of the scope-down
2870
2975
  # policy to lock down your user to the designated home directory
2871
2976
  # ("`chroot`"). To do this, you can set `Entry` to '/' and set
2872
2977
  # `Target` to the HomeDirectory parameter value.
2873
2978
  #
2979
+ # The following is an `Entry` and `Target` pair example for `chroot`.
2980
+ #
2981
+ # `[ \{ "Entry:": "/", "Target": "/bucket_name/home/mydirectory" \} ]`
2982
+ #
2874
2983
  # <note markdown="1"> If the target of a logical directory entry does not exist in Amazon
2875
- # S3 or EFS, the entry will be ignored. As a workaround, you can use
2876
- # the Amazon S3 API or EFS API to create 0-byte objects as place
2877
- # holders for your directory. If using the AWS CLI, use the `s3api` or
2878
- # `efsapi` call instead of `s3` `efs` so you can use the put-object
2984
+ # S3 or EFS, the entry is ignored. As a workaround, you can use the
2985
+ # Amazon S3 API or EFS API to create 0 byte objects as place holders
2986
+ # for your directory. If using the CLI, use the `s3api` or `efsapi`
2987
+ # call instead of `s3` or `efs` so you can use the put-object
2879
2988
  # operation. For example, you use the following: `aws s3api put-object
2880
2989
  # --bucket bucketname --key path/to/folder/`. Make sure that the end
2881
- # of the key name ends in a / for it to be considered a folder.
2990
+ # of the key name ends in a `/` for it to be considered a folder.
2882
2991
  #
2883
2992
  # </note>
2884
2993
  # @return [Array<Types::HomeDirectoryMapEntry>]
@@ -2893,16 +3002,16 @@ module Aws::Transfer
2893
3002
  # <note markdown="1"> This only applies when domain of `ServerId` is S3. Amazon EFS does
2894
3003
  # not use scope-down policies.
2895
3004
  #
2896
- # For scope-down policies, AWS Transfer Family stores the policy as a
2897
- # JSON blob, instead of the Amazon Resource Name (ARN) of the policy.
2898
- # You save the policy as a JSON blob and pass it in the `Policy`
2899
- # argument.
3005
+ # For scope-down policies, Amazon Web ServicesTransfer Family stores
3006
+ # the policy as a JSON blob, instead of the Amazon Resource Name (ARN)
3007
+ # of the policy. You save the policy as a JSON blob and pass it in the
3008
+ # `Policy` argument.
2900
3009
  #
2901
3010
  # For an example of a scope-down policy, see [Creating a scope-down
2902
3011
  # policy][1].
2903
3012
  #
2904
- # For more information, see [AssumeRole][2] in the *AWS Security Token
2905
- # Service API Reference*.
3013
+ # For more information, see [AssumeRole][2] in the *Amazon Web
3014
+ # Services Security Token Service API Reference*.
2906
3015
  #
2907
3016
  # </note>
2908
3017
  #