aws-sdk-transfer 1.146.0 → 1.147.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0ba2122544e8d5692d74be6edd3d2c1149e250d9edd3b5a776876ae575925d1e
4
- data.tar.gz: ec351a563779bb118038714ab3409cdee6653f5f5575e8c1a2a50d7be5d5ebb4
3
+ metadata.gz: a9cbb63695e95961f0e2be8a88cd0919d888d70ab1fab4f12039ec9a5d9d5755
4
+ data.tar.gz: 52443d5846e6f00571aa3d05773124986fcf2294209517f83f242fb36b49b29a
5
5
  SHA512:
6
- metadata.gz: 44b030b474ee2aaffd926cc978a3d21449269be1337edd9dceffa7d7909166abc169a9ca81164870ca6ff998297e2d33d3498a7859362f2ccec2e58903785e30
7
- data.tar.gz: 89c1207925a726583458e2b7ee787907ceae8781b72a902fb69aa6896b5e86f3040620cde885b4b81fcf0ab5df707368e47664856c8cc0b084f6446cad3dad37
6
+ metadata.gz: 5aafb54d26c091bbe835da563b9ce828f4675a29b4f7b069f770dc2768796b071728fc7f2deb142c524f5e6138f225b6f3b454226f4371e28ee83266fee28eda
7
+ data.tar.gz: c33270ca2ff7a7d6a76093d69c94b88642ee367bd4262fd1a2abfde0775602caf897ff02a5e4fca96f5245837f1fbc8169d680714d2f14c30545f15bb86a619d
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.147.0 (2026-09-29)
5
+ ------------------
6
+
7
+ * Feature - AWS Transfer Family now supports configuring up to three custom ports on public SFTP servers, instead of the single default port 22. You can also set each port's communication mode (server-talk-first or client-talk-first) so legacy and modern SFTP clients connect reliably.
8
+
4
9
  1.146.0 (2026-09-15)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.146.0
1
+ 1.147.0
@@ -1269,6 +1269,9 @@ module Aws::Transfer
1269
1269
  # CloudWatch Logs, so that you can determine when the client is making
1270
1270
  # a `SETSTAT` call.
1271
1271
  #
1272
+ # * To specify which ports your Transfer Family server listens to, use
1273
+ # the `SftpPorts` parameter.
1274
+ #
1272
1275
  # * To determine whether your Transfer Family server resumes recent,
1273
1276
  # negotiated sessions through a unique session ID, use the
1274
1277
  # `TlsSessionResumptionMode` parameter.
@@ -1384,6 +1387,12 @@ module Aws::Transfer
1384
1387
  # passive_ip: "PassiveIp",
1385
1388
  # tls_session_resumption_mode: "DISABLED", # accepts DISABLED, ENABLED, ENFORCED
1386
1389
  # set_stat_option: "DEFAULT", # accepts DEFAULT, ENABLE_NO_OP
1390
+ # sftp_ports: [
1391
+ # {
1392
+ # sftp_port: 1, # required
1393
+ # communication_mode: "CLIENT_TALK_FIRST", # accepts CLIENT_TALK_FIRST, SERVER_TALK_FIRST
1394
+ # },
1395
+ # ],
1387
1396
  # as_2_transports: ["HTTP"], # accepts HTTP
1388
1397
  # proxy_config: {
1389
1398
  # sftp_mode: "NONE", # accepts NONE, PROXY_PROTOCOL_V2_ENFORCED
@@ -2695,6 +2704,9 @@ module Aws::Transfer
2695
2704
  # resp.server.protocol_details.passive_ip #=> String
2696
2705
  # resp.server.protocol_details.tls_session_resumption_mode #=> String, one of "DISABLED", "ENABLED", "ENFORCED"
2697
2706
  # resp.server.protocol_details.set_stat_option #=> String, one of "DEFAULT", "ENABLE_NO_OP"
2707
+ # resp.server.protocol_details.sftp_ports #=> Array
2708
+ # resp.server.protocol_details.sftp_ports[0].sftp_port #=> Integer
2709
+ # resp.server.protocol_details.sftp_ports[0].communication_mode #=> String, one of "CLIENT_TALK_FIRST", "SERVER_TALK_FIRST"
2698
2710
  # resp.server.protocol_details.as_2_transports #=> Array
2699
2711
  # resp.server.protocol_details.as_2_transports[0] #=> String, one of "HTTP"
2700
2712
  # resp.server.protocol_details.proxy_config.sftp_mode #=> String, one of "NONE", "PROXY_PROTOCOL_V2_ENFORCED"
@@ -5154,6 +5166,9 @@ module Aws::Transfer
5154
5166
  # CloudWatch Logs, so that you can determine when the client is making
5155
5167
  # a `SETSTAT` call.
5156
5168
  #
5169
+ # * To specify which ports your Transfer Family server listens to, use
5170
+ # the `SftpPorts` parameter.
5171
+ #
5157
5172
  # * To determine whether your Transfer Family server resumes recent,
5158
5173
  # negotiated sessions through a unique session ID, use the
5159
5174
  # `TlsSessionResumptionMode` parameter.
@@ -5416,6 +5431,12 @@ module Aws::Transfer
5416
5431
  # passive_ip: "PassiveIp",
5417
5432
  # tls_session_resumption_mode: "DISABLED", # accepts DISABLED, ENABLED, ENFORCED
5418
5433
  # set_stat_option: "DEFAULT", # accepts DEFAULT, ENABLE_NO_OP
5434
+ # sftp_ports: [
5435
+ # {
5436
+ # sftp_port: 1, # required
5437
+ # communication_mode: "CLIENT_TALK_FIRST", # accepts CLIENT_TALK_FIRST, SERVER_TALK_FIRST
5438
+ # },
5439
+ # ],
5419
5440
  # as_2_transports: ["HTTP"], # accepts HTTP
5420
5441
  # proxy_config: {
5421
5442
  # sftp_mode: "NONE", # accepts NONE, PROXY_PROTOCOL_V2_ENFORCED
@@ -5780,7 +5801,7 @@ module Aws::Transfer
5780
5801
  tracer: tracer
5781
5802
  )
5782
5803
  context[:gem_name] = 'aws-sdk-transfer'
5783
- context[:gem_version] = '1.146.0'
5804
+ context[:gem_version] = '1.147.0'
5784
5805
  Seahorse::Client::Request.new(handlers, context)
5785
5806
  end
5786
5807
 
@@ -38,6 +38,7 @@ module Aws::Transfer
38
38
  CertificateStatusType = Shapes::StringShape.new(name: 'CertificateStatusType')
39
39
  CertificateType = Shapes::StringShape.new(name: 'CertificateType')
40
40
  CertificateUsageType = Shapes::StringShape.new(name: 'CertificateUsageType')
41
+ CommunicationMode = Shapes::StringShape.new(name: 'CommunicationMode')
41
42
  CompressionEnum = Shapes::StringShape.new(name: 'CompressionEnum')
42
43
  ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
43
44
  ConnectorEgressConfig = Shapes::UnionShape.new(name: 'ConnectorEgressConfig')
@@ -323,6 +324,8 @@ module Aws::Transfer
323
324
  SftpConnectorTrustedHostKey = Shapes::StringShape.new(name: 'SftpConnectorTrustedHostKey')
324
325
  SftpConnectorTrustedHostKeyList = Shapes::ListShape.new(name: 'SftpConnectorTrustedHostKeyList')
325
326
  SftpPort = Shapes::IntegerShape.new(name: 'SftpPort')
327
+ SftpPortWithOptions = Shapes::StructureShape.new(name: 'SftpPortWithOptions')
328
+ SftpPorts = Shapes::ListShape.new(name: 'SftpPorts')
326
329
  SigningAlg = Shapes::StringShape.new(name: 'SigningAlg')
327
330
  SourceFileLocation = Shapes::StringShape.new(name: 'SourceFileLocation')
328
331
  SourceIp = Shapes::StringShape.new(name: 'SourceIp')
@@ -1277,6 +1280,7 @@ module Aws::Transfer
1277
1280
  ProtocolDetails.add_member(:passive_ip, Shapes::ShapeRef.new(shape: PassiveIp, location_name: "PassiveIp"))
1278
1281
  ProtocolDetails.add_member(:tls_session_resumption_mode, Shapes::ShapeRef.new(shape: TlsSessionResumptionMode, location_name: "TlsSessionResumptionMode"))
1279
1282
  ProtocolDetails.add_member(:set_stat_option, Shapes::ShapeRef.new(shape: SetStatOption, location_name: "SetStatOption"))
1283
+ ProtocolDetails.add_member(:sftp_ports, Shapes::ShapeRef.new(shape: SftpPorts, location_name: "SftpPorts"))
1280
1284
  ProtocolDetails.add_member(:as_2_transports, Shapes::ShapeRef.new(shape: As2Transports, location_name: "As2Transports"))
1281
1285
  ProtocolDetails.add_member(:proxy_config, Shapes::ShapeRef.new(shape: ProxyConfig, location_name: "ProxyConfig"))
1282
1286
  ProtocolDetails.struct_class = Types::ProtocolDetails
@@ -1354,6 +1358,12 @@ module Aws::Transfer
1354
1358
 
1355
1359
  SftpConnectorTrustedHostKeyList.member = Shapes::ShapeRef.new(shape: SftpConnectorTrustedHostKey)
1356
1360
 
1361
+ SftpPortWithOptions.add_member(:sftp_port, Shapes::ShapeRef.new(shape: SftpPort, required: true, location_name: "SftpPort"))
1362
+ SftpPortWithOptions.add_member(:communication_mode, Shapes::ShapeRef.new(shape: CommunicationMode, location_name: "CommunicationMode"))
1363
+ SftpPortWithOptions.struct_class = Types::SftpPortWithOptions
1364
+
1365
+ SftpPorts.member = Shapes::ShapeRef.new(shape: SftpPortWithOptions)
1366
+
1357
1367
  SshPublicKey.add_member(:date_imported, Shapes::ShapeRef.new(shape: DateImported, required: true, location_name: "DateImported"))
1358
1368
  SshPublicKey.add_member(:ssh_public_key_body, Shapes::ShapeRef.new(shape: SshPublicKeyBody, required: true, location_name: "SshPublicKeyBody"))
1359
1369
  SshPublicKey.add_member(:ssh_public_key_id, Shapes::ShapeRef.new(shape: SshPublicKeyId, required: true, location_name: "SshPublicKeyId"))
@@ -1075,6 +1075,9 @@ module Aws::Transfer
1075
1075
  # to Amazon CloudWatch Logs, so that you can determine when the
1076
1076
  # client is making a `SETSTAT` call.
1077
1077
  #
1078
+ # * To specify which ports your Transfer Family server listens to, use
1079
+ # the `SftpPorts` parameter.
1080
+ #
1078
1081
  # * To determine whether your Transfer Family server resumes recent,
1079
1082
  # negotiated sessions through a unique session ID, use the
1080
1083
  # `TlsSessionResumptionMode` parameter.
@@ -3160,6 +3163,9 @@ module Aws::Transfer
3160
3163
  # to Amazon CloudWatch Logs, so that you can determine when the
3161
3164
  # client is making a `SETSTAT` call.
3162
3165
  #
3166
+ # * To specify which ports your Transfer Family server listens to, use
3167
+ # the `SftpPorts` parameter.
3168
+ #
3163
3169
  # * To determine whether your Transfer Family server resumes recent,
3164
3170
  # negotiated sessions through a unique session ID, use the
3165
3171
  # `TlsSessionResumptionMode` parameter.
@@ -5868,6 +5874,37 @@ module Aws::Transfer
5868
5874
  # </note>
5869
5875
  # @return [String]
5870
5876
  #
5877
+ # @!attribute [rw] sftp_ports
5878
+ # A property used with Transfer Family servers that use the SFTP
5879
+ # protocol and have `PUBLIC` endpoints. This property accepts a list
5880
+ # of up to three port configurations that the service opens on the
5881
+ # server endpoint.
5882
+ #
5883
+ # Each entry in the list consists of two parameters, the `SftpPort`
5884
+ # and the `CommunicationMode`. The `SftpPort` takes any integer from
5885
+ # 2000 to 65535, or 22. `CommunicationMode` can be one of the
5886
+ # following options:
5887
+ #
5888
+ # * `SERVER_TALK_FIRST`: The server responds to initial TCP
5889
+ # connections first. Many older clients expect that an SFTP server
5890
+ # responds with its server string before starting SSH negotiations.
5891
+ #
5892
+ # * `CLIENT_TALK_FIRST`: The server responds to the initial TCP
5893
+ # connection only after receiving a data packet. Most modern clients
5894
+ # support this behavior and send their client string along with the
5895
+ # initial data packets for SSH negotiation. Additionally, this mode
5896
+ # is more resilient to TCP retransmissions that can occur during the
5897
+ # initial TCP connection.
5898
+ #
5899
+ # The following is an `SftpPorts` example for port 2222 with
5900
+ # `CLIENT_TALK_FIRST`.
5901
+ #
5902
+ # `[ { "SftpPort": 2222, "CommunicationMode": "CLIENT_TALK_FIRST" } ]`
5903
+ #
5904
+ # If you don't specify any configurations during `CreateServer`, the
5905
+ # service uses port 22 with `SERVER_TALK_FIRST` by default.
5906
+ # @return [Array<Types::SftpPortWithOptions>]
5907
+ #
5871
5908
  # @!attribute [rw] as_2_transports
5872
5909
  # Indicates the transport method for the AS2 messages. Currently, only
5873
5910
  # HTTP is supported.
@@ -5889,6 +5926,7 @@ module Aws::Transfer
5889
5926
  :passive_ip,
5890
5927
  :tls_session_resumption_mode,
5891
5928
  :set_stat_option,
5929
+ :sftp_ports,
5892
5930
  :as_2_transports,
5893
5931
  :proxy_config)
5894
5932
  SENSITIVE = []
@@ -5897,8 +5935,8 @@ module Aws::Transfer
5897
5935
 
5898
5936
  # Contains configuration for PROXY protocol version 2 (PPv2) support on
5899
5937
  # an Transfer Family server. When enabled, Transfer Family reads the
5900
- # added PPv2 header from incoming connections to extract the original
5901
- # client IP address. This address is then available in Amazon CloudWatch
5938
+ # added PPv2 header from incoming connections to extract the client's
5939
+ # source IP address. This address is then available in Amazon CloudWatch
5902
5940
  # Logs entries and is passed to custom identity providers during
5903
5941
  # authentication, enabling IP-based access policies. For more
5904
5942
  # information, see [Working with Network Load Balancers][1].
@@ -5909,29 +5947,28 @@ module Aws::Transfer
5909
5947
  #
5910
5948
  # @!attribute [rw] sftp_mode
5911
5949
  # Specifies whether the Transfer Family server requires or ignores a
5912
- # PPv2 header containing the original client IP address on incoming
5950
+ # PPv2 header containing the client's source IP address on incoming
5913
5951
  # SFTP connections. If you don't specify a value, the default is
5914
5952
  # `NONE`
5915
5953
  #
5916
5954
  # * `NONE`: the server reads and ignores any PPv2 header on incoming
5917
5955
  # SFTP connections. This is the default value. Use this value when
5918
5956
  # your SFTP server is not behind an NLB, or when you do not need to
5919
- # preserve client source IP addresses through an NLB.
5957
+ # preserve the client's source IP address through an NLB.
5920
5958
  #
5921
5959
  # * `PROXY_PROTOCOL_V2_ENFORCED`: the server requires a valid PPv2
5922
5960
  # header on every incoming SFTP connection. When a valid header is
5923
- # present, the server applies it and uses the client IP address from
5961
+ # present, the server applies it and uses the source IP address from
5924
5962
  # the header. If a connection arrives without a PPv2 header, the
5925
5963
  # server refuses the connection and logs an error to Amazon
5926
5964
  # CloudWatch Logs indicating that the expected PPv2 header was
5927
5965
  # missing. Use this value when your SFTP server is behind an NLB
5928
5966
  # with PPv2 enabled on the target group.
5929
5967
  #
5930
- # When you enable `PROXY_PROTOCOL_V2_ENFORCED`, the server trusts
5931
- # the source IP address in the PPv2 header. You must configure
5932
- # security groups on your server's VPC endpoint to restrict inbound
5933
- # traffic to only the NLB's private IP addresses. For the full
5934
- # requirements, see [Working with Network Load Balancers][1].
5968
+ # With `PROXY_PROTOCOL_V2_ENFORCED` you must restrict the server's
5969
+ # VPC endpoint security group to allow inbound traffic only via the
5970
+ # trusted NLB. For more information, see [Working with Network Load
5971
+ # Balancers][1].
5935
5972
  #
5936
5973
  #
5937
5974
  #
@@ -6289,6 +6326,33 @@ module Aws::Transfer
6289
6326
  include Aws::Structure
6290
6327
  end
6291
6328
 
6329
+ # Specifies the configuration for a single SFTP port on a Transfer
6330
+ # Family server that uses the SFTP protocol and has a `PUBLIC` endpoint.
6331
+ # Each entry in the `SftpPorts` list is an `SftpPortWithOptions` object
6332
+ # that pairs a port number with a communication mode.
6333
+ #
6334
+ # @!attribute [rw] sftp_port
6335
+ # The port on which the Transfer Family server listens for SFTP
6336
+ # connections. Specify any integer from 2000 to 65535, or 22. This
6337
+ # value is required for each entry in the `SftpPorts` list.
6338
+ # @return [Integer]
6339
+ #
6340
+ # @!attribute [rw] communication_mode
6341
+ # Determines whether the server or the client sends data first when a
6342
+ # client establishes an SFTP connection on this port. Valid values are
6343
+ # `SERVER_TALK_FIRST` and `CLIENT_TALK_FIRST`. For a description of
6344
+ # each mode, see the `SftpPorts` property. This value is optional.
6345
+ # @return [String]
6346
+ #
6347
+ # @see http://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/SftpPortWithOptions AWS API Documentation
6348
+ #
6349
+ class SftpPortWithOptions < Struct.new(
6350
+ :sftp_port,
6351
+ :communication_mode)
6352
+ SENSITIVE = []
6353
+ include Aws::Structure
6354
+ end
6355
+
6292
6356
  # Provides information about the public Secure Shell (SSH) key that is
6293
6357
  # associated with a Transfer Family user for the specific file transfer
6294
6358
  # protocol-enabled server (as identified by `ServerId`). The information
@@ -7427,6 +7491,9 @@ module Aws::Transfer
7427
7491
  # to Amazon CloudWatch Logs, so that you can determine when the
7428
7492
  # client is making a `SETSTAT` call.
7429
7493
  #
7494
+ # * To specify which ports your Transfer Family server listens to, use
7495
+ # the `SftpPorts` parameter.
7496
+ #
7430
7497
  # * To determine whether your Transfer Family server resumes recent,
7431
7498
  # negotiated sessions through a unique session ID, use the
7432
7499
  # `TlsSessionResumptionMode` parameter.
@@ -55,7 +55,7 @@ module Aws::Transfer
55
55
  autoload :EndpointProvider, 'aws-sdk-transfer/endpoint_provider'
56
56
  autoload :Endpoints, 'aws-sdk-transfer/endpoints'
57
57
 
58
- GEM_VERSION = '1.146.0'
58
+ GEM_VERSION = '1.147.0'
59
59
 
60
60
  end
61
61
 
data/sig/params.rbs CHANGED
@@ -29,6 +29,12 @@ module Aws
29
29
  passive_ip: ::String?,
30
30
  tls_session_resumption_mode: ("DISABLED" | "ENABLED" | "ENFORCED")?,
31
31
  set_stat_option: ("DEFAULT" | "ENABLE_NO_OP")?,
32
+ sftp_ports: Array[
33
+ {
34
+ sftp_port: ::Integer,
35
+ communication_mode: ("CLIENT_TALK_FIRST" | "SERVER_TALK_FIRST")?
36
+ }
37
+ ]?,
32
38
  as_2_transports: Array[("HTTP")]?,
33
39
  proxy_config: {
34
40
  sftp_mode: ("NONE" | "PROXY_PROTOCOL_V2_ENFORCED")?
data/sig/types.rbs CHANGED
@@ -1125,6 +1125,7 @@ module Aws::Transfer
1125
1125
  attr_accessor passive_ip: ::String
1126
1126
  attr_accessor tls_session_resumption_mode: ("DISABLED" | "ENABLED" | "ENFORCED")
1127
1127
  attr_accessor set_stat_option: ("DEFAULT" | "ENABLE_NO_OP")
1128
+ attr_accessor sftp_ports: ::Array[Types::SftpPortWithOptions]
1128
1129
  attr_accessor as_2_transports: ::Array[("HTTP")]
1129
1130
  attr_accessor proxy_config: Types::ProxyConfig
1130
1131
  SENSITIVE: []
@@ -1208,6 +1209,12 @@ module Aws::Transfer
1208
1209
  SENSITIVE: []
1209
1210
  end
1210
1211
 
1212
+ class SftpPortWithOptions
1213
+ attr_accessor sftp_port: ::Integer
1214
+ attr_accessor communication_mode: ("CLIENT_TALK_FIRST" | "SERVER_TALK_FIRST")
1215
+ SENSITIVE: []
1216
+ end
1217
+
1211
1218
  class SshPublicKey
1212
1219
  attr_accessor date_imported: ::Time
1213
1220
  attr_accessor ssh_public_key_body: ::String
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-transfer
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.146.0
4
+ version: 1.147.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services