aws-sdk-iotsecuretunneling 1.20.0 → 1.22.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: 1b6b77ebcd2328535a2684a48891b77fd137736dc1023b7647669820b8b12fe1
4
- data.tar.gz: c0f6519a0959645a96961faec7d1a570a09d20a96fa6386c4d7e47bbde9fa618
3
+ metadata.gz: d9b1f1139753e440ff662e60091d4434a36e64d30de6e06b6249f0f92898b71b
4
+ data.tar.gz: dd6db9fde6b0651b4bfba6affdefa9253256a6b3bb6578e71bd2126a8109fb7d
5
5
  SHA512:
6
- metadata.gz: 82b44b4886398766f6fd213c3259e2391acdcfb7fd0b7e09b3d36dde64d16d1b24689f979554f05725606200c9b3891da993f4a969de9871cb81515dd4861ea8
7
- data.tar.gz: 3c37471f3e59b6eaaba8e1415854ca1073f825a810935e0d006c00464b83eb9323bc2cea3a6eace8873e7d880e2a1eac58602f0e0f4f5845ab95cd816db88d2a
6
+ metadata.gz: 2250193baeed9c6c993d9efb619d81c09a4d24327274e381f6aeb52854bfe55b3859c5917093c309dfcad4113f34b04ece79b71ad51554f43fe0a19b1dfe1316
7
+ data.tar.gz: 8095a9276d7b87c4c17e956874cd2539868df0d6391566c07d8e72853cfd8b209a12d879d1bcd01794bd3120e5d5fe12f7bc28dd083a658307ac189904cdc57a
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.22.0 (2022-10-25)
5
+ ------------------
6
+
7
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
8
+
9
+ 1.21.0 (2022-05-04)
10
+ ------------------
11
+
12
+ * Feature - This release introduces a new API RotateTunnelAccessToken that allow revoking the existing tokens and generate new tokens
13
+
4
14
  1.20.0 (2022-02-24)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.20.0
1
+ 1.22.0
@@ -30,7 +30,7 @@ require 'aws-sdk-core/plugins/http_checksum.rb'
30
30
  require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
31
  require 'aws-sdk-core/plugins/defaults_mode.rb'
32
32
  require 'aws-sdk-core/plugins/recursion_detection.rb'
33
- require 'aws-sdk-core/plugins/signature_v4.rb'
33
+ require 'aws-sdk-core/plugins/sign.rb'
34
34
  require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
35
35
 
36
36
  Aws::Plugins::GlobalConfiguration.add_identifier(:iotsecuretunneling)
@@ -79,8 +79,9 @@ module Aws::IoTSecureTunneling
79
79
  add_plugin(Aws::Plugins::ChecksumAlgorithm)
80
80
  add_plugin(Aws::Plugins::DefaultsMode)
81
81
  add_plugin(Aws::Plugins::RecursionDetection)
82
- add_plugin(Aws::Plugins::SignatureV4)
82
+ add_plugin(Aws::Plugins::Sign)
83
83
  add_plugin(Aws::Plugins::Protocols::JsonRpc)
84
+ add_plugin(Aws::IoTSecureTunneling::Plugins::Endpoints)
84
85
 
85
86
  # @overload initialize(options)
86
87
  # @param [Hash] options
@@ -297,6 +298,19 @@ module Aws::IoTSecureTunneling
297
298
  # ** Please note ** When response stubbing is enabled, no HTTP
298
299
  # requests are made, and retries are disabled.
299
300
  #
301
+ # @option options [Aws::TokenProvider] :token_provider
302
+ # A Bearer Token Provider. This can be an instance of any one of the
303
+ # following classes:
304
+ #
305
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
306
+ # tokens.
307
+ #
308
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
309
+ # access token generated from `aws login`.
310
+ #
311
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
312
+ # will be used to search for tokens configured for your profile in shared configuration files.
313
+ #
300
314
  # @option options [Boolean] :use_dualstack_endpoint
301
315
  # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
302
316
  # will be used if available.
@@ -310,6 +324,9 @@ module Aws::IoTSecureTunneling
310
324
  # When `true`, request parameters are validated before
311
325
  # sending the request.
312
326
  #
327
+ # @option options [Aws::IoTSecureTunneling::EndpointProvider] :endpoint_provider
328
+ # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::IoTSecureTunneling::EndpointParameters`
329
+ #
313
330
  # @option options [URI::HTTP,String] :http_proxy A proxy to send
314
331
  # requests through. Formatted like 'http://proxy.com:123'.
315
332
  #
@@ -365,11 +382,17 @@ module Aws::IoTSecureTunneling
365
382
  # `CloseTunnel` request is received, we close the WebSocket connections
366
383
  # between the client and proxy server so no data can be transmitted.
367
384
  #
385
+ # Requires permission to access the [CloseTunnel][1] action.
386
+ #
387
+ #
388
+ #
389
+ # [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
390
+ #
368
391
  # @option params [required, String] :tunnel_id
369
392
  # The ID of the tunnel to close.
370
393
  #
371
394
  # @option params [Boolean] :delete
372
- # When set to true, AWS IoT Secure Tunneling deletes the tunnel data
395
+ # When set to true, IoT Secure Tunneling deletes the tunnel data
373
396
  # immediately.
374
397
  #
375
398
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
@@ -390,6 +413,12 @@ module Aws::IoTSecureTunneling
390
413
 
391
414
  # Gets information about a tunnel identified by the unique tunnel id.
392
415
  #
416
+ # Requires permission to access the [DescribeTunnel][1] action.
417
+ #
418
+ #
419
+ #
420
+ # [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
421
+ #
393
422
  # @option params [required, String] :tunnel_id
394
423
  # The tunnel to describe.
395
424
  #
@@ -458,9 +487,15 @@ module Aws::IoTSecureTunneling
458
487
  req.send_request(options)
459
488
  end
460
489
 
461
- # List all tunnels for an AWS account. Tunnels are listed by creation
462
- # time in descending order, newer tunnels will be listed before older
463
- # tunnels.
490
+ # List all tunnels for an Amazon Web Services account. Tunnels are
491
+ # listed by creation time in descending order, newer tunnels will be
492
+ # listed before older tunnels.
493
+ #
494
+ # Requires permission to access the [ListTunnels][1] action.
495
+ #
496
+ #
497
+ #
498
+ # [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
464
499
  #
465
500
  # @option params [String] :thing_name
466
501
  # The name of the IoT thing associated with the destination device.
@@ -469,7 +504,8 @@ module Aws::IoTSecureTunneling
469
504
  # The maximum number of results to return at once.
470
505
  #
471
506
  # @option params [String] :next_token
472
- # A token to retrieve the next set of results.
507
+ # To retrieve the next set of results, the nextToken value from a
508
+ # previous response; otherwise null to receive the first set of results.
473
509
  #
474
510
  # @return [Types::ListTunnelsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
475
511
  #
@@ -505,7 +541,13 @@ module Aws::IoTSecureTunneling
505
541
  end
506
542
 
507
543
  # Creates a new tunnel, and returns two client access tokens for clients
508
- # to use to connect to the AWS IoT Secure Tunneling proxy server.
544
+ # to use to connect to the IoT Secure Tunneling proxy server.
545
+ #
546
+ # Requires permission to access the [OpenTunnel][1] action.
547
+ #
548
+ #
549
+ #
550
+ # [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
509
551
  #
510
552
  # @option params [String] :description
511
553
  # A short text description of the tunnel.
@@ -559,6 +601,63 @@ module Aws::IoTSecureTunneling
559
601
  req.send_request(options)
560
602
  end
561
603
 
604
+ # Revokes the current client access token (CAT) and returns new CAT for
605
+ # clients to use when reconnecting to secure tunneling to access the
606
+ # same tunnel.
607
+ #
608
+ # Requires permission to access the [RotateTunnelAccessToken][1] action.
609
+ #
610
+ # <note markdown="1"> Rotating the CAT doesn't extend the tunnel duration. For example, say
611
+ # the tunnel duration is 12 hours and the tunnel has already been open
612
+ # for 4 hours. When you rotate the access tokens, the new tokens that
613
+ # are generated can only be used for the remaining 8 hours.
614
+ #
615
+ # </note>
616
+ #
617
+ #
618
+ #
619
+ # [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
620
+ #
621
+ # @option params [required, String] :tunnel_id
622
+ # The tunnel for which you want to rotate the access tokens.
623
+ #
624
+ # @option params [required, String] :client_mode
625
+ # The mode of the client that will use the client token, which can be
626
+ # either the source or destination, or both source and destination.
627
+ #
628
+ # @option params [Types::DestinationConfig] :destination_config
629
+ # The destination configuration.
630
+ #
631
+ # @return [Types::RotateTunnelAccessTokenResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
632
+ #
633
+ # * {Types::RotateTunnelAccessTokenResponse#tunnel_arn #tunnel_arn} => String
634
+ # * {Types::RotateTunnelAccessTokenResponse#source_access_token #source_access_token} => String
635
+ # * {Types::RotateTunnelAccessTokenResponse#destination_access_token #destination_access_token} => String
636
+ #
637
+ # @example Request syntax with placeholder values
638
+ #
639
+ # resp = client.rotate_tunnel_access_token({
640
+ # tunnel_id: "TunnelId", # required
641
+ # client_mode: "SOURCE", # required, accepts SOURCE, DESTINATION, ALL
642
+ # destination_config: {
643
+ # thing_name: "ThingName",
644
+ # services: ["Service"], # required
645
+ # },
646
+ # })
647
+ #
648
+ # @example Response structure
649
+ #
650
+ # resp.tunnel_arn #=> String
651
+ # resp.source_access_token #=> String
652
+ # resp.destination_access_token #=> String
653
+ #
654
+ # @overload rotate_tunnel_access_token(params = {})
655
+ # @param [Hash] params ({})
656
+ def rotate_tunnel_access_token(params = {}, options = {})
657
+ req = build_request(:rotate_tunnel_access_token, params)
658
+ req.send_request(options)
659
+ end
660
+
562
661
  # A resource tag.
563
662
  #
564
663
  # @option params [required, String] :resource_arn
@@ -625,7 +724,7 @@ module Aws::IoTSecureTunneling
625
724
  params: params,
626
725
  config: config)
627
726
  context[:gem_name] = 'aws-sdk-iotsecuretunneling'
628
- context[:gem_version] = '1.20.0'
727
+ context[:gem_version] = '1.22.0'
629
728
  Seahorse::Client::Request.new(handlers, context)
630
729
  end
631
730
 
@@ -15,6 +15,7 @@ module Aws::IoTSecureTunneling
15
15
 
16
16
  AmazonResourceName = Shapes::StringShape.new(name: 'AmazonResourceName')
17
17
  ClientAccessToken = Shapes::StringShape.new(name: 'ClientAccessToken')
18
+ ClientMode = Shapes::StringShape.new(name: 'ClientMode')
18
19
  CloseTunnelRequest = Shapes::StructureShape.new(name: 'CloseTunnelRequest')
19
20
  CloseTunnelResponse = Shapes::StructureShape.new(name: 'CloseTunnelResponse')
20
21
  ConnectionState = Shapes::StructureShape.new(name: 'ConnectionState')
@@ -36,6 +37,8 @@ module Aws::IoTSecureTunneling
36
37
  OpenTunnelRequest = Shapes::StructureShape.new(name: 'OpenTunnelRequest')
37
38
  OpenTunnelResponse = Shapes::StructureShape.new(name: 'OpenTunnelResponse')
38
39
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
40
+ RotateTunnelAccessTokenRequest = Shapes::StructureShape.new(name: 'RotateTunnelAccessTokenRequest')
41
+ RotateTunnelAccessTokenResponse = Shapes::StructureShape.new(name: 'RotateTunnelAccessTokenResponse')
39
42
  Service = Shapes::StringShape.new(name: 'Service')
40
43
  ServiceList = Shapes::ListShape.new(name: 'ServiceList')
41
44
  Tag = Shapes::StructureShape.new(name: 'Tag')
@@ -110,6 +113,16 @@ module Aws::IoTSecureTunneling
110
113
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "message"))
111
114
  ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
112
115
 
116
+ RotateTunnelAccessTokenRequest.add_member(:tunnel_id, Shapes::ShapeRef.new(shape: TunnelId, required: true, location_name: "tunnelId"))
117
+ RotateTunnelAccessTokenRequest.add_member(:client_mode, Shapes::ShapeRef.new(shape: ClientMode, required: true, location_name: "clientMode"))
118
+ RotateTunnelAccessTokenRequest.add_member(:destination_config, Shapes::ShapeRef.new(shape: DestinationConfig, location_name: "destinationConfig"))
119
+ RotateTunnelAccessTokenRequest.struct_class = Types::RotateTunnelAccessTokenRequest
120
+
121
+ RotateTunnelAccessTokenResponse.add_member(:tunnel_arn, Shapes::ShapeRef.new(shape: TunnelArn, location_name: "tunnelArn"))
122
+ RotateTunnelAccessTokenResponse.add_member(:source_access_token, Shapes::ShapeRef.new(shape: ClientAccessToken, location_name: "sourceAccessToken"))
123
+ RotateTunnelAccessTokenResponse.add_member(:destination_access_token, Shapes::ShapeRef.new(shape: ClientAccessToken, location_name: "destinationAccessToken"))
124
+ RotateTunnelAccessTokenResponse.struct_class = Types::RotateTunnelAccessTokenResponse
125
+
113
126
  ServiceList.member = Shapes::ShapeRef.new(shape: Service)
114
127
 
115
128
  Tag.add_member(:key, Shapes::ShapeRef.new(shape: TagKey, required: true, location_name: "key"))
@@ -227,6 +240,15 @@ module Aws::IoTSecureTunneling
227
240
  o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
228
241
  end)
229
242
 
243
+ api.add_operation(:rotate_tunnel_access_token, Seahorse::Model::Operation.new.tap do |o|
244
+ o.name = "RotateTunnelAccessToken"
245
+ o.http_method = "POST"
246
+ o.http_request_uri = "/"
247
+ o.input = Shapes::ShapeRef.new(shape: RotateTunnelAccessTokenRequest)
248
+ o.output = Shapes::ShapeRef.new(shape: RotateTunnelAccessTokenResponse)
249
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
250
+ end)
251
+
230
252
  api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
231
253
  o.name = "TagResource"
232
254
  o.http_method = "POST"
@@ -0,0 +1,66 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::IoTSecureTunneling
11
+ # Endpoint parameters used to influence endpoints per request.
12
+ #
13
+ # @!attribute region
14
+ # The AWS region used to dispatch the request.
15
+ #
16
+ # @return [String]
17
+ #
18
+ # @!attribute use_dual_stack
19
+ # When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.
20
+ #
21
+ # @return [Boolean]
22
+ #
23
+ # @!attribute use_fips
24
+ # When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.
25
+ #
26
+ # @return [Boolean]
27
+ #
28
+ # @!attribute endpoint
29
+ # Override the endpoint used to send this request
30
+ #
31
+ # @return [String]
32
+ #
33
+ EndpointParameters = Struct.new(
34
+ :region,
35
+ :use_dual_stack,
36
+ :use_fips,
37
+ :endpoint,
38
+ ) do
39
+ include Aws::Structure
40
+
41
+ # @api private
42
+ class << self
43
+ PARAM_MAP = {
44
+ 'Region' => :region,
45
+ 'UseDualStack' => :use_dual_stack,
46
+ 'UseFIPS' => :use_fips,
47
+ 'Endpoint' => :endpoint,
48
+ }.freeze
49
+ end
50
+
51
+ def initialize(options = {})
52
+ self[:region] = options[:region]
53
+ self[:use_dual_stack] = options[:use_dual_stack]
54
+ self[:use_dual_stack] = false if self[:use_dual_stack].nil?
55
+ if self[:use_dual_stack].nil?
56
+ raise ArgumentError, "Missing required EndpointParameter: :use_dual_stack"
57
+ end
58
+ self[:use_fips] = options[:use_fips]
59
+ self[:use_fips] = false if self[:use_fips].nil?
60
+ if self[:use_fips].nil?
61
+ raise ArgumentError, "Missing required EndpointParameter: :use_fips"
62
+ end
63
+ self[:endpoint] = options[:endpoint]
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,123 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::IoTSecureTunneling
11
+ class EndpointProvider
12
+ def initialize(rule_set = nil)
13
+ @@rule_set ||= begin
14
+ endpoint_rules = Aws::Json.load(Base64.decode64(RULES))
15
+ Aws::Endpoints::RuleSet.new(
16
+ version: endpoint_rules['version'],
17
+ service_id: endpoint_rules['serviceId'],
18
+ parameters: endpoint_rules['parameters'],
19
+ rules: endpoint_rules['rules']
20
+ )
21
+ end
22
+ @provider = Aws::Endpoints::RulesProvider.new(rule_set || @@rule_set)
23
+ end
24
+
25
+ def resolve_endpoint(parameters)
26
+ @provider.resolve_endpoint(parameters)
27
+ end
28
+
29
+ # @api private
30
+ RULES = <<-JSON
31
+ eyJ2ZXJzaW9uIjoiMS4wIiwicGFyYW1ldGVycyI6eyJSZWdpb24iOnsiYnVp
32
+ bHRJbiI6IkFXUzo6UmVnaW9uIiwicmVxdWlyZWQiOmZhbHNlLCJkb2N1bWVu
33
+ dGF0aW9uIjoiVGhlIEFXUyByZWdpb24gdXNlZCB0byBkaXNwYXRjaCB0aGUg
34
+ cmVxdWVzdC4iLCJ0eXBlIjoiU3RyaW5nIn0sIlVzZUR1YWxTdGFjayI6eyJi
35
+ dWlsdEluIjoiQVdTOjpVc2VEdWFsU3RhY2siLCJyZXF1aXJlZCI6dHJ1ZSwi
36
+ ZGVmYXVsdCI6ZmFsc2UsImRvY3VtZW50YXRpb24iOiJXaGVuIHRydWUsIHVz
37
+ ZSB0aGUgZHVhbC1zdGFjayBlbmRwb2ludC4gSWYgdGhlIGNvbmZpZ3VyZWQg
38
+ ZW5kcG9pbnQgZG9lcyBub3Qgc3VwcG9ydCBkdWFsLXN0YWNrLCBkaXNwYXRj
39
+ aGluZyB0aGUgcmVxdWVzdCBNQVkgcmV0dXJuIGFuIGVycm9yLiIsInR5cGUi
40
+ OiJCb29sZWFuIn0sIlVzZUZJUFMiOnsiYnVpbHRJbiI6IkFXUzo6VXNlRklQ
41
+ UyIsInJlcXVpcmVkIjp0cnVlLCJkZWZhdWx0IjpmYWxzZSwiZG9jdW1lbnRh
42
+ dGlvbiI6IldoZW4gdHJ1ZSwgc2VuZCB0aGlzIHJlcXVlc3QgdG8gdGhlIEZJ
43
+ UFMtY29tcGxpYW50IHJlZ2lvbmFsIGVuZHBvaW50LiBJZiB0aGUgY29uZmln
44
+ dXJlZCBlbmRwb2ludCBkb2VzIG5vdCBoYXZlIGEgRklQUyBjb21wbGlhbnQg
45
+ ZW5kcG9pbnQsIGRpc3BhdGNoaW5nIHRoZSByZXF1ZXN0IHdpbGwgcmV0dXJu
46
+ IGFuIGVycm9yLiIsInR5cGUiOiJCb29sZWFuIn0sIkVuZHBvaW50Ijp7ImJ1
47
+ aWx0SW4iOiJTREs6OkVuZHBvaW50IiwicmVxdWlyZWQiOmZhbHNlLCJkb2N1
48
+ bWVudGF0aW9uIjoiT3ZlcnJpZGUgdGhlIGVuZHBvaW50IHVzZWQgdG8gc2Vu
49
+ ZCB0aGlzIHJlcXVlc3QiLCJ0eXBlIjoiU3RyaW5nIn19LCJydWxlcyI6W3si
50
+ Y29uZGl0aW9ucyI6W3siZm4iOiJhd3MucGFydGl0aW9uIiwiYXJndiI6W3si
51
+ cmVmIjoiUmVnaW9uIn1dLCJhc3NpZ24iOiJQYXJ0aXRpb25SZXN1bHQifV0s
52
+ InR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZuIjoi
53
+ aXNTZXQiLCJhcmd2IjpbeyJyZWYiOiJFbmRwb2ludCJ9XX0seyJmbiI6InBh
54
+ cnNlVVJMIiwiYXJndiI6W3sicmVmIjoiRW5kcG9pbnQifV0sImFzc2lnbiI6
55
+ InVybCJ9XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6
56
+ W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQ
57
+ UyJ9LHRydWVdfV0sImVycm9yIjoiSW52YWxpZCBDb25maWd1cmF0aW9uOiBG
58
+ SVBTIGFuZCBjdXN0b20gZW5kcG9pbnQgYXJlIG5vdCBzdXBwb3J0ZWQiLCJ0
59
+ eXBlIjoiZXJyb3IifSx7ImNvbmRpdGlvbnMiOltdLCJ0eXBlIjoidHJlZSIs
60
+ InJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMi
61
+ LCJhcmd2IjpbeyJyZWYiOiJVc2VEdWFsU3RhY2sifSx0cnVlXX1dLCJlcnJv
62
+ ciI6IkludmFsaWQgQ29uZmlndXJhdGlvbjogRHVhbHN0YWNrIGFuZCBjdXN0
63
+ b20gZW5kcG9pbnQgYXJlIG5vdCBzdXBwb3J0ZWQiLCJ0eXBlIjoiZXJyb3Ii
64
+ fSx7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1cmwiOnsicmVmIjoi
65
+ RW5kcG9pbnQifSwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlw
66
+ ZSI6ImVuZHBvaW50In1dfV19LHsiY29uZGl0aW9ucyI6W3siZm4iOiJib29s
67
+ ZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQUyJ9LHRydWVdfSx7
68
+ ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUR1YWxT
69
+ dGFjayJ9LHRydWVdfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRp
70
+ dGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsi
71
+ Zm4iOiJnZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0
72
+ In0sInN1cHBvcnRzRklQUyJdfV19LHsiZm4iOiJib29sZWFuRXF1YWxzIiwi
73
+ YXJndiI6W3RydWUseyJmbiI6ImdldEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQ
74
+ YXJ0aXRpb25SZXN1bHQifSwic3VwcG9ydHNEdWFsU3RhY2siXX1dfV0sInR5
75
+ cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2lu
76
+ dCI6eyJ1cmwiOiJodHRwczovL2FwaS50dW5uZWxpbmcuaW90LWZpcHMue1Jl
77
+ Z2lvbn0ue1BhcnRpdGlvblJlc3VsdCNkdWFsU3RhY2tEbnNTdWZmaXh9Iiwi
78
+ cHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlwZSI6ImVuZHBvaW50
79
+ In1dfSx7ImNvbmRpdGlvbnMiOltdLCJlcnJvciI6IkZJUFMgYW5kIER1YWxT
80
+ dGFjayBhcmUgZW5hYmxlZCwgYnV0IHRoaXMgcGFydGl0aW9uIGRvZXMgbm90
81
+ IHN1cHBvcnQgb25lIG9yIGJvdGgiLCJ0eXBlIjoiZXJyb3IifV19LHsiY29u
82
+ ZGl0aW9ucyI6W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVm
83
+ IjoiVXNlRklQUyJ9LHRydWVdfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7
84
+ ImNvbmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0
85
+ cnVlLHsiZm4iOiJnZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9u
86
+ UmVzdWx0In0sInN1cHBvcnRzRklQUyJdfV19XSwidHlwZSI6InRyZWUiLCJy
87
+ dWxlcyI6W3siY29uZGl0aW9ucyI6W10sInR5cGUiOiJ0cmVlIiwicnVsZXMi
88
+ Olt7ImNvbmRpdGlvbnMiOlt7ImZuIjoic3RyaW5nRXF1YWxzIiwiYXJndiI6
89
+ WyJhd3MiLHsiZm4iOiJnZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0
90
+ aW9uUmVzdWx0In0sIm5hbWUiXX1dfV0sImVuZHBvaW50Ijp7InVybCI6Imh0
91
+ dHBzOi8vYXBpLnR1bm5lbGluZy5pb3QtZmlwcy57UmVnaW9ufS57UGFydGl0
92
+ aW9uUmVzdWx0I2Ruc1N1ZmZpeH0iLCJwcm9wZXJ0aWVzIjp7fSwiaGVhZGVy
93
+ cyI6e319LCJ0eXBlIjoiZW5kcG9pbnQifSx7ImNvbmRpdGlvbnMiOlt7ImZu
94
+ Ijoic3RyaW5nRXF1YWxzIiwiYXJndiI6WyJhd3MtdXMtZ292Iix7ImZuIjoi
95
+ Z2V0QXR0ciIsImFyZ3YiOlt7InJlZiI6IlBhcnRpdGlvblJlc3VsdCJ9LCJu
96
+ YW1lIl19XX1dLCJlbmRwb2ludCI6eyJ1cmwiOiJodHRwczovL2FwaS50dW5u
97
+ ZWxpbmcuaW90LWZpcHMue1JlZ2lvbn0ue1BhcnRpdGlvblJlc3VsdCNkbnNT
98
+ dWZmaXh9IiwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlwZSI6
99
+ ImVuZHBvaW50In0seyJjb25kaXRpb25zIjpbXSwiZW5kcG9pbnQiOnsidXJs
100
+ IjoiaHR0cHM6Ly9hcGkudHVubmVsaW5nLmlvdC1maXBzLntSZWdpb259LntQ
101
+ YXJ0aXRpb25SZXN1bHQjZG5zU3VmZml4fSIsInByb3BlcnRpZXMiOnt9LCJo
102
+ ZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX1dfSx7ImNvbmRpdGlv
103
+ bnMiOltdLCJlcnJvciI6IkZJUFMgaXMgZW5hYmxlZCBidXQgdGhpcyBwYXJ0
104
+ aXRpb24gZG9lcyBub3Qgc3VwcG9ydCBGSVBTIiwidHlwZSI6ImVycm9yIn1d
105
+ fSx7ImNvbmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3Yi
106
+ Olt7InJlZiI6IlVzZUR1YWxTdGFjayJ9LHRydWVdfV0sInR5cGUiOiJ0cmVl
107
+ IiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFs
108
+ cyIsImFyZ3YiOlt0cnVlLHsiZm4iOiJnZXRBdHRyIiwiYXJndiI6W3sicmVm
109
+ IjoiUGFydGl0aW9uUmVzdWx0In0sInN1cHBvcnRzRHVhbFN0YWNrIl19XX1d
110
+ LCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRpb25zIjpbXSwiZW5k
111
+ cG9pbnQiOnsidXJsIjoiaHR0cHM6Ly9hcGkudHVubmVsaW5nLmlvdC57UmVn
112
+ aW9ufS57UGFydGl0aW9uUmVzdWx0I2R1YWxTdGFja0Ruc1N1ZmZpeH0iLCJw
113
+ cm9wZXJ0aWVzIjp7fSwiaGVhZGVycyI6e319LCJ0eXBlIjoiZW5kcG9pbnQi
114
+ fV19LHsiY29uZGl0aW9ucyI6W10sImVycm9yIjoiRHVhbFN0YWNrIGlzIGVu
115
+ YWJsZWQgYnV0IHRoaXMgcGFydGl0aW9uIGRvZXMgbm90IHN1cHBvcnQgRHVh
116
+ bFN0YWNrIiwidHlwZSI6ImVycm9yIn1dfSx7ImNvbmRpdGlvbnMiOltdLCJl
117
+ bmRwb2ludCI6eyJ1cmwiOiJodHRwczovL2FwaS50dW5uZWxpbmcuaW90LntS
118
+ ZWdpb259LntQYXJ0aXRpb25SZXN1bHQjZG5zU3VmZml4fSIsInByb3BlcnRp
119
+ ZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX1dfQ==
120
+
121
+ JSON
122
+ end
123
+ end
@@ -0,0 +1,127 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+
11
+ module Aws::IoTSecureTunneling
12
+ module Endpoints
13
+
14
+ class CloseTunnel
15
+ def self.build(context)
16
+ unless context.config.regional_endpoint
17
+ endpoint = context.config.endpoint.to_s
18
+ end
19
+ Aws::IoTSecureTunneling::EndpointParameters.new(
20
+ region: context.config.region,
21
+ use_dual_stack: context.config.use_dualstack_endpoint,
22
+ use_fips: context.config.use_fips_endpoint,
23
+ endpoint: endpoint,
24
+ )
25
+ end
26
+ end
27
+
28
+ class DescribeTunnel
29
+ def self.build(context)
30
+ unless context.config.regional_endpoint
31
+ endpoint = context.config.endpoint.to_s
32
+ end
33
+ Aws::IoTSecureTunneling::EndpointParameters.new(
34
+ region: context.config.region,
35
+ use_dual_stack: context.config.use_dualstack_endpoint,
36
+ use_fips: context.config.use_fips_endpoint,
37
+ endpoint: endpoint,
38
+ )
39
+ end
40
+ end
41
+
42
+ class ListTagsForResource
43
+ def self.build(context)
44
+ unless context.config.regional_endpoint
45
+ endpoint = context.config.endpoint.to_s
46
+ end
47
+ Aws::IoTSecureTunneling::EndpointParameters.new(
48
+ region: context.config.region,
49
+ use_dual_stack: context.config.use_dualstack_endpoint,
50
+ use_fips: context.config.use_fips_endpoint,
51
+ endpoint: endpoint,
52
+ )
53
+ end
54
+ end
55
+
56
+ class ListTunnels
57
+ def self.build(context)
58
+ unless context.config.regional_endpoint
59
+ endpoint = context.config.endpoint.to_s
60
+ end
61
+ Aws::IoTSecureTunneling::EndpointParameters.new(
62
+ region: context.config.region,
63
+ use_dual_stack: context.config.use_dualstack_endpoint,
64
+ use_fips: context.config.use_fips_endpoint,
65
+ endpoint: endpoint,
66
+ )
67
+ end
68
+ end
69
+
70
+ class OpenTunnel
71
+ def self.build(context)
72
+ unless context.config.regional_endpoint
73
+ endpoint = context.config.endpoint.to_s
74
+ end
75
+ Aws::IoTSecureTunneling::EndpointParameters.new(
76
+ region: context.config.region,
77
+ use_dual_stack: context.config.use_dualstack_endpoint,
78
+ use_fips: context.config.use_fips_endpoint,
79
+ endpoint: endpoint,
80
+ )
81
+ end
82
+ end
83
+
84
+ class RotateTunnelAccessToken
85
+ def self.build(context)
86
+ unless context.config.regional_endpoint
87
+ endpoint = context.config.endpoint.to_s
88
+ end
89
+ Aws::IoTSecureTunneling::EndpointParameters.new(
90
+ region: context.config.region,
91
+ use_dual_stack: context.config.use_dualstack_endpoint,
92
+ use_fips: context.config.use_fips_endpoint,
93
+ endpoint: endpoint,
94
+ )
95
+ end
96
+ end
97
+
98
+ class TagResource
99
+ def self.build(context)
100
+ unless context.config.regional_endpoint
101
+ endpoint = context.config.endpoint.to_s
102
+ end
103
+ Aws::IoTSecureTunneling::EndpointParameters.new(
104
+ region: context.config.region,
105
+ use_dual_stack: context.config.use_dualstack_endpoint,
106
+ use_fips: context.config.use_fips_endpoint,
107
+ endpoint: endpoint,
108
+ )
109
+ end
110
+ end
111
+
112
+ class UntagResource
113
+ def self.build(context)
114
+ unless context.config.regional_endpoint
115
+ endpoint = context.config.endpoint.to_s
116
+ end
117
+ Aws::IoTSecureTunneling::EndpointParameters.new(
118
+ region: context.config.region,
119
+ use_dual_stack: context.config.use_dualstack_endpoint,
120
+ use_fips: context.config.use_fips_endpoint,
121
+ endpoint: endpoint,
122
+ )
123
+ end
124
+ end
125
+
126
+ end
127
+ end
@@ -0,0 +1,84 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+
11
+ module Aws::IoTSecureTunneling
12
+ module Plugins
13
+ class Endpoints < Seahorse::Client::Plugin
14
+ option(
15
+ :endpoint_provider,
16
+ doc_type: 'Aws::IoTSecureTunneling::EndpointProvider',
17
+ docstring: 'The endpoint provider used to resolve endpoints. Any '\
18
+ 'object that responds to `#resolve_endpoint(parameters)` '\
19
+ 'where `parameters` is a Struct similar to '\
20
+ '`Aws::IoTSecureTunneling::EndpointParameters`'
21
+ ) do |cfg|
22
+ Aws::IoTSecureTunneling::EndpointProvider.new
23
+ end
24
+
25
+ # @api private
26
+ class Handler < Seahorse::Client::Handler
27
+ def call(context)
28
+ # If endpoint was discovered, do not resolve or apply the endpoint.
29
+ unless context[:discovered_endpoint]
30
+ params = parameters_for_operation(context)
31
+ endpoint = context.config.endpoint_provider.resolve_endpoint(params)
32
+
33
+ context.http_request.endpoint = endpoint.url
34
+ apply_endpoint_headers(context, endpoint.headers)
35
+ end
36
+
37
+ context[:endpoint_params] = params
38
+ context[:auth_scheme] =
39
+ Aws::Endpoints.resolve_auth_scheme(context, endpoint)
40
+
41
+ @handler.call(context)
42
+ end
43
+
44
+ private
45
+
46
+ def apply_endpoint_headers(context, headers)
47
+ headers.each do |key, values|
48
+ value = values
49
+ .compact
50
+ .map { |s| Seahorse::Util.escape_header_list_string(s.to_s) }
51
+ .join(',')
52
+
53
+ context.http_request.headers[key] = value
54
+ end
55
+ end
56
+
57
+ def parameters_for_operation(context)
58
+ case context.operation_name
59
+ when :close_tunnel
60
+ Aws::IoTSecureTunneling::Endpoints::CloseTunnel.build(context)
61
+ when :describe_tunnel
62
+ Aws::IoTSecureTunneling::Endpoints::DescribeTunnel.build(context)
63
+ when :list_tags_for_resource
64
+ Aws::IoTSecureTunneling::Endpoints::ListTagsForResource.build(context)
65
+ when :list_tunnels
66
+ Aws::IoTSecureTunneling::Endpoints::ListTunnels.build(context)
67
+ when :open_tunnel
68
+ Aws::IoTSecureTunneling::Endpoints::OpenTunnel.build(context)
69
+ when :rotate_tunnel_access_token
70
+ Aws::IoTSecureTunneling::Endpoints::RotateTunnelAccessToken.build(context)
71
+ when :tag_resource
72
+ Aws::IoTSecureTunneling::Endpoints::TagResource.build(context)
73
+ when :untag_resource
74
+ Aws::IoTSecureTunneling::Endpoints::UntagResource.build(context)
75
+ end
76
+ end
77
+ end
78
+
79
+ def add_handlers(handlers, _config)
80
+ handlers.add(Handler, step: :build, priority: 75)
81
+ end
82
+ end
83
+ end
84
+ end
@@ -23,7 +23,7 @@ module Aws::IoTSecureTunneling
23
23
  # @return [String]
24
24
  #
25
25
  # @!attribute [rw] delete
26
- # When set to true, AWS IoT Secure Tunneling deletes the tunnel data
26
+ # When set to true, IoT Secure Tunneling deletes the tunnel data
27
27
  # immediately.
28
28
  # @return [Boolean]
29
29
  #
@@ -96,11 +96,11 @@ module Aws::IoTSecureTunneling
96
96
  # @return [String]
97
97
  #
98
98
  # @!attribute [rw] services
99
- # A list of service names that identity the target application. The
100
- # AWS IoT client running on the destination device reads this value
101
- # and uses it to look up a port or an IP address and a port. The AWS
102
- # IoT client instantiates the local proxy which uses this information
103
- # to connect to the destination application.
99
+ # A list of service names that identify the target application. The
100
+ # IoT client running on the destination device reads this value and
101
+ # uses it to look up a port or an IP address and a port. The IoT
102
+ # client instantiates the local proxy, which uses this information to
103
+ # connect to the destination application.
104
104
  # @return [Array<String>]
105
105
  #
106
106
  class DestinationConfig < Struct.new(
@@ -166,7 +166,9 @@ module Aws::IoTSecureTunneling
166
166
  # @return [Integer]
167
167
  #
168
168
  # @!attribute [rw] next_token
169
- # A token to retrieve the next set of results.
169
+ # To retrieve the next set of results, the nextToken value from a
170
+ # previous response; otherwise null to receive the first set of
171
+ # results.
170
172
  # @return [String]
171
173
  #
172
174
  class ListTunnelsRequest < Struct.new(
@@ -178,11 +180,13 @@ module Aws::IoTSecureTunneling
178
180
  end
179
181
 
180
182
  # @!attribute [rw] tunnel_summaries
181
- # A short description of the tunnels in an AWS account.
183
+ # A short description of the tunnels in an Amazon Web Services
184
+ # account.
182
185
  # @return [Array<Types::TunnelSummary>]
183
186
  #
184
187
  # @!attribute [rw] next_token
185
- # A token to used to retrieve the next set of results.
188
+ # The token to use to get the next set of results, or null if there
189
+ # are no additional results.
186
190
  # @return [String]
187
191
  #
188
192
  class ListTunnelsResponse < Struct.new(
@@ -242,18 +246,17 @@ module Aws::IoTSecureTunneling
242
246
  # @return [String]
243
247
  #
244
248
  # @!attribute [rw] tunnel_arn
245
- # The Amazon Resource Name for the tunnel. The tunnel ARN format is
246
- # `arn:aws:tunnel:<region>:<account-id>:tunnel/<tunnel-id>`
249
+ # The Amazon Resource Name for the tunnel.
247
250
  # @return [String]
248
251
  #
249
252
  # @!attribute [rw] source_access_token
250
- # The access token the source local proxy uses to connect to AWS IoT
253
+ # The access token the source local proxy uses to connect to IoT
251
254
  # Secure Tunneling.
252
255
  # @return [String]
253
256
  #
254
257
  # @!attribute [rw] destination_access_token
255
- # The access token the destination local proxy uses to connect to AWS
256
- # IoT Secure Tunneling.
258
+ # The access token the destination local proxy uses to connect to IoT
259
+ # Secure Tunneling.
257
260
  # @return [String]
258
261
  #
259
262
  class OpenTunnelResponse < Struct.new(
@@ -277,6 +280,61 @@ module Aws::IoTSecureTunneling
277
280
  include Aws::Structure
278
281
  end
279
282
 
283
+ # @note When making an API call, you may pass RotateTunnelAccessTokenRequest
284
+ # data as a hash:
285
+ #
286
+ # {
287
+ # tunnel_id: "TunnelId", # required
288
+ # client_mode: "SOURCE", # required, accepts SOURCE, DESTINATION, ALL
289
+ # destination_config: {
290
+ # thing_name: "ThingName",
291
+ # services: ["Service"], # required
292
+ # },
293
+ # }
294
+ #
295
+ # @!attribute [rw] tunnel_id
296
+ # The tunnel for which you want to rotate the access tokens.
297
+ # @return [String]
298
+ #
299
+ # @!attribute [rw] client_mode
300
+ # The mode of the client that will use the client token, which can be
301
+ # either the source or destination, or both source and destination.
302
+ # @return [String]
303
+ #
304
+ # @!attribute [rw] destination_config
305
+ # The destination configuration.
306
+ # @return [Types::DestinationConfig]
307
+ #
308
+ class RotateTunnelAccessTokenRequest < Struct.new(
309
+ :tunnel_id,
310
+ :client_mode,
311
+ :destination_config)
312
+ SENSITIVE = []
313
+ include Aws::Structure
314
+ end
315
+
316
+ # @!attribute [rw] tunnel_arn
317
+ # The Amazon Resource Name for the tunnel.
318
+ # @return [String]
319
+ #
320
+ # @!attribute [rw] source_access_token
321
+ # The client access token that the source local proxy uses to connect
322
+ # to IoT Secure Tunneling.
323
+ # @return [String]
324
+ #
325
+ # @!attribute [rw] destination_access_token
326
+ # The client access token that the destination local proxy uses to
327
+ # connect to IoT Secure Tunneling.
328
+ # @return [String]
329
+ #
330
+ class RotateTunnelAccessTokenResponse < Struct.new(
331
+ :tunnel_arn,
332
+ :source_access_token,
333
+ :destination_access_token)
334
+ SENSITIVE = [:source_access_token, :destination_access_token]
335
+ include Aws::Structure
336
+ end
337
+
280
338
  # An arbitary key/value pair used to add searchable metadata to secure
281
339
  # tunnel resources.
282
340
  #
@@ -361,8 +419,7 @@ module Aws::IoTSecureTunneling
361
419
  # @return [String]
362
420
  #
363
421
  # @!attribute [rw] tunnel_arn
364
- # The Amazon Resource Name (ARN) of a tunnel. The tunnel ARN format is
365
- # `arn:aws:tunnel:<region>:<account-id>:tunnel/<tunnel-id>`
422
+ # The Amazon Resource Name (ARN) of a tunnel.
366
423
  # @return [String]
367
424
  #
368
425
  # @!attribute [rw] status
@@ -426,8 +483,7 @@ module Aws::IoTSecureTunneling
426
483
  # @return [String]
427
484
  #
428
485
  # @!attribute [rw] tunnel_arn
429
- # The Amazon Resource Name of the tunnel. The tunnel ARN format is
430
- # `arn:aws:tunnel:<region>:<account-id>:tunnel/<tunnel-id>`
486
+ # The Amazon Resource Name of the tunnel.
431
487
  # @return [String]
432
488
  #
433
489
  # @!attribute [rw] status
@@ -13,9 +13,13 @@ require 'aws-sigv4'
13
13
 
14
14
  require_relative 'aws-sdk-iotsecuretunneling/types'
15
15
  require_relative 'aws-sdk-iotsecuretunneling/client_api'
16
+ require_relative 'aws-sdk-iotsecuretunneling/plugins/endpoints.rb'
16
17
  require_relative 'aws-sdk-iotsecuretunneling/client'
17
18
  require_relative 'aws-sdk-iotsecuretunneling/errors'
18
19
  require_relative 'aws-sdk-iotsecuretunneling/resource'
20
+ require_relative 'aws-sdk-iotsecuretunneling/endpoint_parameters'
21
+ require_relative 'aws-sdk-iotsecuretunneling/endpoint_provider'
22
+ require_relative 'aws-sdk-iotsecuretunneling/endpoints'
19
23
  require_relative 'aws-sdk-iotsecuretunneling/customizations'
20
24
 
21
25
  # This module provides support for AWS IoT Secure Tunneling. This module is available in the
@@ -48,6 +52,6 @@ require_relative 'aws-sdk-iotsecuretunneling/customizations'
48
52
  # @!group service
49
53
  module Aws::IoTSecureTunneling
50
54
 
51
- GEM_VERSION = '1.20.0'
55
+ GEM_VERSION = '1.22.0'
52
56
 
53
57
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-iotsecuretunneling
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.20.0
4
+ version: 1.22.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-02-24 00:00:00.000000000 Z
11
+ date: 2022-10-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.127.0
22
+ version: 3.165.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.127.0
32
+ version: 3.165.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -59,7 +59,11 @@ files:
59
59
  - lib/aws-sdk-iotsecuretunneling/client.rb
60
60
  - lib/aws-sdk-iotsecuretunneling/client_api.rb
61
61
  - lib/aws-sdk-iotsecuretunneling/customizations.rb
62
+ - lib/aws-sdk-iotsecuretunneling/endpoint_parameters.rb
63
+ - lib/aws-sdk-iotsecuretunneling/endpoint_provider.rb
64
+ - lib/aws-sdk-iotsecuretunneling/endpoints.rb
62
65
  - lib/aws-sdk-iotsecuretunneling/errors.rb
66
+ - lib/aws-sdk-iotsecuretunneling/plugins/endpoints.rb
63
67
  - lib/aws-sdk-iotsecuretunneling/resource.rb
64
68
  - lib/aws-sdk-iotsecuretunneling/types.rb
65
69
  homepage: https://github.com/aws/aws-sdk-ruby