aws-sdk-iotsecuretunneling 1.20.0 → 1.21.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-iotsecuretunneling/client.rb +89 -7
- data/lib/aws-sdk-iotsecuretunneling/client_api.rb +22 -0
- data/lib/aws-sdk-iotsecuretunneling/types.rb +74 -18
- data/lib/aws-sdk-iotsecuretunneling.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 77218c860940699b9f07885a9aa2d35f488390e9bf544ad5680fc7badc3f8a12
|
4
|
+
data.tar.gz: 30fc5fd451483f480a809c4aa6dc04efa65ebd19c8168cf9fae88255da4aec00
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 00c0d37f8b2d0a471b39a28d3b269f108f87a566e104bcd7261a5f190791f6ebb8db63fa4451c324d1250bc6d3b23ee1077076e527bcc24bff1bc67eb99211e2
|
7
|
+
data.tar.gz: 4cdee4c9718267d1c6a563103c8bb3f6fb400c34076d00a7e6fe057f0b2228bb05755dbd7fef8c82f16c87b7708ebec126a5d950e23229e20d752db252a43300
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,11 @@
|
|
1
1
|
Unreleased Changes
|
2
2
|
------------------
|
3
3
|
|
4
|
+
1.21.0 (2022-05-04)
|
5
|
+
------------------
|
6
|
+
|
7
|
+
* Feature - This release introduces a new API RotateTunnelAccessToken that allow revoking the existing tokens and generate new tokens
|
8
|
+
|
4
9
|
1.20.0 (2022-02-24)
|
5
10
|
------------------
|
6
11
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.21.0
|
@@ -365,11 +365,17 @@ module Aws::IoTSecureTunneling
|
|
365
365
|
# `CloseTunnel` request is received, we close the WebSocket connections
|
366
366
|
# between the client and proxy server so no data can be transmitted.
|
367
367
|
#
|
368
|
+
# Requires permission to access the [CloseTunnel][1] action.
|
369
|
+
#
|
370
|
+
#
|
371
|
+
#
|
372
|
+
# [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
|
373
|
+
#
|
368
374
|
# @option params [required, String] :tunnel_id
|
369
375
|
# The ID of the tunnel to close.
|
370
376
|
#
|
371
377
|
# @option params [Boolean] :delete
|
372
|
-
# When set to true,
|
378
|
+
# When set to true, IoT Secure Tunneling deletes the tunnel data
|
373
379
|
# immediately.
|
374
380
|
#
|
375
381
|
# @return [Struct] Returns an empty {Seahorse::Client::Response response}.
|
@@ -390,6 +396,12 @@ module Aws::IoTSecureTunneling
|
|
390
396
|
|
391
397
|
# Gets information about a tunnel identified by the unique tunnel id.
|
392
398
|
#
|
399
|
+
# Requires permission to access the [DescribeTunnel][1] action.
|
400
|
+
#
|
401
|
+
#
|
402
|
+
#
|
403
|
+
# [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
|
404
|
+
#
|
393
405
|
# @option params [required, String] :tunnel_id
|
394
406
|
# The tunnel to describe.
|
395
407
|
#
|
@@ -458,9 +470,15 @@ module Aws::IoTSecureTunneling
|
|
458
470
|
req.send_request(options)
|
459
471
|
end
|
460
472
|
|
461
|
-
# List all tunnels for an
|
462
|
-
# time in descending order, newer tunnels will be
|
463
|
-
# tunnels.
|
473
|
+
# List all tunnels for an Amazon Web Services account. Tunnels are
|
474
|
+
# listed by creation time in descending order, newer tunnels will be
|
475
|
+
# listed before older tunnels.
|
476
|
+
#
|
477
|
+
# Requires permission to access the [ListTunnels][1] action.
|
478
|
+
#
|
479
|
+
#
|
480
|
+
#
|
481
|
+
# [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
|
464
482
|
#
|
465
483
|
# @option params [String] :thing_name
|
466
484
|
# The name of the IoT thing associated with the destination device.
|
@@ -469,7 +487,8 @@ module Aws::IoTSecureTunneling
|
|
469
487
|
# The maximum number of results to return at once.
|
470
488
|
#
|
471
489
|
# @option params [String] :next_token
|
472
|
-
#
|
490
|
+
# To retrieve the next set of results, the nextToken value from a
|
491
|
+
# previous response; otherwise null to receive the first set of results.
|
473
492
|
#
|
474
493
|
# @return [Types::ListTunnelsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
475
494
|
#
|
@@ -505,7 +524,13 @@ module Aws::IoTSecureTunneling
|
|
505
524
|
end
|
506
525
|
|
507
526
|
# Creates a new tunnel, and returns two client access tokens for clients
|
508
|
-
# to use to connect to the
|
527
|
+
# to use to connect to the IoT Secure Tunneling proxy server.
|
528
|
+
#
|
529
|
+
# Requires permission to access the [OpenTunnel][1] action.
|
530
|
+
#
|
531
|
+
#
|
532
|
+
#
|
533
|
+
# [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
|
509
534
|
#
|
510
535
|
# @option params [String] :description
|
511
536
|
# A short text description of the tunnel.
|
@@ -559,6 +584,63 @@ module Aws::IoTSecureTunneling
|
|
559
584
|
req.send_request(options)
|
560
585
|
end
|
561
586
|
|
587
|
+
# Revokes the current client access token (CAT) and returns new CAT for
|
588
|
+
# clients to use when reconnecting to secure tunneling to access the
|
589
|
+
# same tunnel.
|
590
|
+
#
|
591
|
+
# Requires permission to access the [RotateTunnelAccessToken][1] action.
|
592
|
+
#
|
593
|
+
# <note markdown="1"> Rotating the CAT doesn't extend the tunnel duration. For example, say
|
594
|
+
# the tunnel duration is 12 hours and the tunnel has already been open
|
595
|
+
# for 4 hours. When you rotate the access tokens, the new tokens that
|
596
|
+
# are generated can only be used for the remaining 8 hours.
|
597
|
+
#
|
598
|
+
# </note>
|
599
|
+
#
|
600
|
+
#
|
601
|
+
#
|
602
|
+
# [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
|
603
|
+
#
|
604
|
+
# @option params [required, String] :tunnel_id
|
605
|
+
# The tunnel for which you want to rotate the access tokens.
|
606
|
+
#
|
607
|
+
# @option params [required, String] :client_mode
|
608
|
+
# The mode of the client that will use the client token, which can be
|
609
|
+
# either the source or destination, or both source and destination.
|
610
|
+
#
|
611
|
+
# @option params [Types::DestinationConfig] :destination_config
|
612
|
+
# The destination configuration.
|
613
|
+
#
|
614
|
+
# @return [Types::RotateTunnelAccessTokenResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
615
|
+
#
|
616
|
+
# * {Types::RotateTunnelAccessTokenResponse#tunnel_arn #tunnel_arn} => String
|
617
|
+
# * {Types::RotateTunnelAccessTokenResponse#source_access_token #source_access_token} => String
|
618
|
+
# * {Types::RotateTunnelAccessTokenResponse#destination_access_token #destination_access_token} => String
|
619
|
+
#
|
620
|
+
# @example Request syntax with placeholder values
|
621
|
+
#
|
622
|
+
# resp = client.rotate_tunnel_access_token({
|
623
|
+
# tunnel_id: "TunnelId", # required
|
624
|
+
# client_mode: "SOURCE", # required, accepts SOURCE, DESTINATION, ALL
|
625
|
+
# destination_config: {
|
626
|
+
# thing_name: "ThingName",
|
627
|
+
# services: ["Service"], # required
|
628
|
+
# },
|
629
|
+
# })
|
630
|
+
#
|
631
|
+
# @example Response structure
|
632
|
+
#
|
633
|
+
# resp.tunnel_arn #=> String
|
634
|
+
# resp.source_access_token #=> String
|
635
|
+
# resp.destination_access_token #=> String
|
636
|
+
#
|
637
|
+
# @overload rotate_tunnel_access_token(params = {})
|
638
|
+
# @param [Hash] params ({})
|
639
|
+
def rotate_tunnel_access_token(params = {}, options = {})
|
640
|
+
req = build_request(:rotate_tunnel_access_token, params)
|
641
|
+
req.send_request(options)
|
642
|
+
end
|
643
|
+
|
562
644
|
# A resource tag.
|
563
645
|
#
|
564
646
|
# @option params [required, String] :resource_arn
|
@@ -625,7 +707,7 @@ module Aws::IoTSecureTunneling
|
|
625
707
|
params: params,
|
626
708
|
config: config)
|
627
709
|
context[:gem_name] = 'aws-sdk-iotsecuretunneling'
|
628
|
-
context[:gem_version] = '1.
|
710
|
+
context[:gem_version] = '1.21.0'
|
629
711
|
Seahorse::Client::Request.new(handlers, context)
|
630
712
|
end
|
631
713
|
|
@@ -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"
|
@@ -23,7 +23,7 @@ module Aws::IoTSecureTunneling
|
|
23
23
|
# @return [String]
|
24
24
|
#
|
25
25
|
# @!attribute [rw] delete
|
26
|
-
# When set to true,
|
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
|
100
|
-
#
|
101
|
-
#
|
102
|
-
#
|
103
|
-
#
|
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
|
-
#
|
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
|
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
|
-
#
|
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.
|
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
|
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
|
256
|
-
#
|
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.
|
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.
|
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
|
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.
|
4
|
+
version: 1.21.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-
|
11
|
+
date: 2022-05-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk-core
|