aws-sdk-kinesis 1.52.0 → 1.53.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: e3b06954603f48764fd1387596cc5c25e07bf27ac6c357f392003827ffea5a29
4
- data.tar.gz: c7cb28c04fa0a669bfc265e852276cc490dd90d3bac062abce559b693f9388e0
3
+ metadata.gz: 1022bf4c09fc74072dc2847d5f497c44eea9db3aefe5df1fba8d6ccce033e5d9
4
+ data.tar.gz: 1caacdde69aa43f1e2df4da76330d5bc1a590c3e1f6e25ebb93cb6988a0f1e94
5
5
  SHA512:
6
- metadata.gz: 85312b2e4c4cbb3e84745d5feaaaf068399132a0cb5cfd276d568e143a175b64eb315ebfb6d1115ee1f94c6b2e30f88bf6ce88394c813447dbfb22592fa69511
7
- data.tar.gz: dd5bfd6b95a01d9716f9bfd5e7848dba72eb2a87cbfe97453a55785f8c84ae0a759f5089fb419b9d02660e52a8779fe204ce928645d79512c146e96b7574ab8a
6
+ metadata.gz: 5554f90758aec80bb581f3f2209a2ed5120a8bf94c3fc63ad58c8da56b7d5cc2a681a10b73cc00180467ab74246461f9888e36e09cfa63e5d77ac459f1c813ad
7
+ data.tar.gz: 426472764b974703daa8cb261dc4f67ca076720def522869810746f0943cefd16c79a01d92a01a18e334984e973ead22299bb7355940c17b4ad991871ff16a86
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.53.0 (2023-11-22)
5
+ ------------------
6
+
7
+ * Feature - This release adds support for resource based policies on streams and consumers.
8
+
4
9
  1.52.0 (2023-09-27)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.52.0
1
+ 1.53.0
@@ -615,7 +615,7 @@ module Aws::Kinesis
615
615
  http_response: Seahorse::Client::Http::AsyncResponse.new,
616
616
  config: config)
617
617
  context[:gem_name] = 'aws-sdk-kinesis'
618
- context[:gem_version] = '1.52.0'
618
+ context[:gem_version] = '1.53.0'
619
619
  Seahorse::Client::Request.new(handlers, context)
620
620
  end
621
621
 
@@ -412,8 +412,9 @@ module Aws::Kinesis
412
412
  # Adds or updates tags for the specified Kinesis data stream. You can
413
413
  # assign up to 50 tags to a data stream.
414
414
  #
415
- # <note markdown="1"> When invoking this API, it is recommended you use the `StreamARN`
416
- # input parameter rather than the `StreamName` input parameter.
415
+ # <note markdown="1"> When invoking this API, you must use either the `StreamARN` or the
416
+ # `StreamName` parameter, or both. It is recommended that you use the
417
+ # `StreamARN` input parameter when you invoke this API.
417
418
  #
418
419
  # </note>
419
420
  #
@@ -551,8 +552,9 @@ module Aws::Kinesis
551
552
  # length of time data records are accessible after they are added to the
552
553
  # stream. The minimum value of a stream's retention period is 24 hours.
553
554
  #
554
- # <note markdown="1"> When invoking this API, it is recommended you use the `StreamARN`
555
- # input parameter rather than the `StreamName` input parameter.
555
+ # <note markdown="1"> When invoking this API, you must use either the `StreamARN` or the
556
+ # `StreamName` parameter, or both. It is recommended that you use the
557
+ # `StreamARN` input parameter when you invoke this API.
556
558
  #
557
559
  # </note>
558
560
  #
@@ -589,13 +591,42 @@ module Aws::Kinesis
589
591
  req.send_request(options)
590
592
  end
591
593
 
594
+ # Delete a policy for the specified data stream or consumer. Request
595
+ # patterns can be one of the following:
596
+ #
597
+ # * Data stream pattern: `arn:aws.*:kinesis:.*:\d\{12\}:.*stream/\S+`
598
+ #
599
+ # * Consumer pattern:
600
+ # `^(arn):aws.*:kinesis:.*:\d\{12\}:.*stream\/[a-zA-Z0-9_.-]+\/consumer\/[a-zA-Z0-9_.-]+:[0-9]+`
601
+ #
602
+ # @option params [required, String] :resource_arn
603
+ # The Amazon Resource Name (ARN) of the data stream or consumer.
604
+ #
605
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
606
+ #
607
+ # @example Request syntax with placeholder values
608
+ #
609
+ # resp = client.delete_resource_policy({
610
+ # resource_arn: "ResourceARN", # required
611
+ # })
612
+ #
613
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/DeleteResourcePolicy AWS API Documentation
614
+ #
615
+ # @overload delete_resource_policy(params = {})
616
+ # @param [Hash] params ({})
617
+ def delete_resource_policy(params = {}, options = {})
618
+ req = build_request(:delete_resource_policy, params)
619
+ req.send_request(options)
620
+ end
621
+
592
622
  # Deletes a Kinesis data stream and all its shards and data. You must
593
623
  # shut down any applications that are operating on the stream before you
594
624
  # delete the stream. If an application attempts to operate on a deleted
595
625
  # stream, it receives the exception `ResourceNotFoundException`.
596
626
  #
597
- # <note markdown="1"> When invoking this API, it is recommended you use the `StreamARN`
598
- # input parameter rather than the `StreamName` input parameter.
627
+ # <note markdown="1"> When invoking this API, you must use either the `StreamARN` or the
628
+ # `StreamName` parameter, or both. It is recommended that you use the
629
+ # `StreamARN` input parameter when you invoke this API.
599
630
  #
600
631
  # </note>
601
632
  #
@@ -735,8 +766,9 @@ module Aws::Kinesis
735
766
  #
736
767
  # </note>
737
768
  #
738
- # <note markdown="1"> When invoking this API, it is recommended you use the `StreamARN`
739
- # input parameter rather than the `StreamName` input parameter.
769
+ # <note markdown="1"> When invoking this API, you must use either the `StreamARN` or the
770
+ # `StreamName` parameter, or both. It is recommended that you use the
771
+ # `StreamARN` input parameter when you invoke this API.
740
772
  #
741
773
  # </note>
742
774
  #
@@ -849,6 +881,11 @@ module Aws::Kinesis
849
881
  #
850
882
  # This operation has a limit of 20 transactions per second per stream.
851
883
  #
884
+ # <note markdown="1"> When making a cross-account call with `DescribeStreamConsumer`, make
885
+ # sure to provide the ARN of the consumer.
886
+ #
887
+ # </note>
888
+ #
852
889
  # @option params [String] :stream_arn
853
890
  # The ARN of the Kinesis data stream that the consumer is registered
854
891
  # with. For more information, see [Amazon Resource Names (ARNs) and
@@ -897,8 +934,9 @@ module Aws::Kinesis
897
934
  # Provides a summarized description of the specified Kinesis data stream
898
935
  # without the shard list.
899
936
  #
900
- # <note markdown="1"> When invoking this API, it is recommended you use the `StreamARN`
901
- # input parameter rather than the `StreamName` input parameter.
937
+ # <note markdown="1"> When invoking this API, you must use either the `StreamARN` or the
938
+ # `StreamName` parameter, or both. It is recommended that you use the
939
+ # `StreamARN` input parameter when you invoke this API.
902
940
  #
903
941
  # </note>
904
942
  #
@@ -953,8 +991,9 @@ module Aws::Kinesis
953
991
 
954
992
  # Disables enhanced monitoring.
955
993
  #
956
- # <note markdown="1"> When invoking this API, it is recommended you use the `StreamARN`
957
- # input parameter rather than the `StreamName` input parameter.
994
+ # <note markdown="1"> When invoking this API, you must use either the `StreamARN` or the
995
+ # `StreamName` parameter, or both. It is recommended that you use the
996
+ # `StreamARN` input parameter when you invoke this API.
958
997
  #
959
998
  # </note>
960
999
  #
@@ -1031,8 +1070,9 @@ module Aws::Kinesis
1031
1070
  # Enables enhanced Kinesis data stream monitoring for shard-level
1032
1071
  # metrics.
1033
1072
  #
1034
- # <note markdown="1"> When invoking this API, it is recommended you use the `StreamARN`
1035
- # input parameter rather than the `StreamName` input parameter.
1073
+ # <note markdown="1"> When invoking this API, you must use either the `StreamARN` or the
1074
+ # `StreamName` parameter, or both. It is recommended that you use the
1075
+ # `StreamARN` input parameter when you invoke this API.
1036
1076
  #
1037
1077
  # </note>
1038
1078
  #
@@ -1107,8 +1147,9 @@ module Aws::Kinesis
1107
1147
 
1108
1148
  # Gets data records from a Kinesis data stream's shard.
1109
1149
  #
1110
- # <note markdown="1"> When invoking this API, it is recommended you use the `StreamARN`
1111
- # input parameter in addition to the `ShardIterator` parameter.
1150
+ # <note markdown="1"> When invoking this API, you must use either the `StreamARN` or the
1151
+ # `StreamName` parameter, or both. It is recommended that you use the
1152
+ # `StreamARN` input parameter when you invoke this API.
1112
1153
  #
1113
1154
  # </note>
1114
1155
  #
@@ -1233,11 +1274,46 @@ module Aws::Kinesis
1233
1274
  req.send_request(options)
1234
1275
  end
1235
1276
 
1277
+ # Returns a policy attached to the specified data stream or consumer.
1278
+ # Request patterns can be one of the following:
1279
+ #
1280
+ # * Data stream pattern: `arn:aws.*:kinesis:.*:\d\{12\}:.*stream/\S+`
1281
+ #
1282
+ # * Consumer pattern:
1283
+ # `^(arn):aws.*:kinesis:.*:\d\{12\}:.*stream\/[a-zA-Z0-9_.-]+\/consumer\/[a-zA-Z0-9_.-]+:[0-9]+`
1284
+ #
1285
+ # @option params [required, String] :resource_arn
1286
+ # The Amazon Resource Name (ARN) of the data stream or consumer.
1287
+ #
1288
+ # @return [Types::GetResourcePolicyOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1289
+ #
1290
+ # * {Types::GetResourcePolicyOutput#policy #policy} => String
1291
+ #
1292
+ # @example Request syntax with placeholder values
1293
+ #
1294
+ # resp = client.get_resource_policy({
1295
+ # resource_arn: "ResourceARN", # required
1296
+ # })
1297
+ #
1298
+ # @example Response structure
1299
+ #
1300
+ # resp.policy #=> String
1301
+ #
1302
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/GetResourcePolicy AWS API Documentation
1303
+ #
1304
+ # @overload get_resource_policy(params = {})
1305
+ # @param [Hash] params ({})
1306
+ def get_resource_policy(params = {}, options = {})
1307
+ req = build_request(:get_resource_policy, params)
1308
+ req.send_request(options)
1309
+ end
1310
+
1236
1311
  # Gets an Amazon Kinesis shard iterator. A shard iterator expires 5
1237
1312
  # minutes after it is returned to the requester.
1238
1313
  #
1239
- # <note markdown="1"> When invoking this API, it is recommended you use the `StreamARN`
1240
- # input parameter rather than the `StreamName` input parameter.
1314
+ # <note markdown="1"> When invoking this API, you must use either the `StreamARN` or the
1315
+ # `StreamName` parameter, or both. It is recommended that you use the
1316
+ # `StreamARN` input parameter when you invoke this API.
1241
1317
  #
1242
1318
  # </note>
1243
1319
  #
@@ -1366,8 +1442,9 @@ module Aws::Kinesis
1366
1442
  # stream. The maximum value of a stream's retention period is 8760
1367
1443
  # hours (365 days).
1368
1444
  #
1369
- # <note markdown="1"> When invoking this API, it is recommended you use the `StreamARN`
1370
- # input parameter rather than the `StreamName` input parameter.
1445
+ # <note markdown="1"> When invoking this API, you must use either the `StreamARN` or the
1446
+ # `StreamName` parameter, or both. It is recommended that you use the
1447
+ # `StreamARN` input parameter when you invoke this API.
1371
1448
  #
1372
1449
  # </note>
1373
1450
  #
@@ -1413,8 +1490,9 @@ module Aws::Kinesis
1413
1490
  # shard. This operation has a limit of 1000 transactions per second per
1414
1491
  # data stream.
1415
1492
  #
1416
- # <note markdown="1"> When invoking this API, it is recommended you use the `StreamARN`
1417
- # input parameter rather than the `StreamName` input parameter.
1493
+ # <note markdown="1"> When invoking this API, you must use either the `StreamARN` or the
1494
+ # `StreamName` parameter, or both. It is recommended that you use the
1495
+ # `StreamARN` input parameter when you invoke this API.
1418
1496
  #
1419
1497
  # </note>
1420
1498
  #
@@ -1724,8 +1802,9 @@ module Aws::Kinesis
1724
1802
  # Lists the tags for the specified Kinesis data stream. This operation
1725
1803
  # has a limit of five transactions per second per account.
1726
1804
  #
1727
- # <note markdown="1"> When invoking this API, it is recommended you use the `StreamARN`
1728
- # input parameter rather than the `StreamName` input parameter.
1805
+ # <note markdown="1"> When invoking this API, you must use either the `StreamARN` or the
1806
+ # `StreamName` parameter, or both. It is recommended that you use the
1807
+ # `StreamARN` input parameter when you invoke this API.
1729
1808
  #
1730
1809
  # </note>
1731
1810
  #
@@ -1788,8 +1867,9 @@ module Aws::Kinesis
1788
1867
  # single child shard receives data for all hash key values covered by
1789
1868
  # the two parent shards.
1790
1869
  #
1791
- # <note markdown="1"> When invoking this API, it is recommended you use the `StreamARN`
1792
- # input parameter rather than the `StreamName` input parameter.
1870
+ # <note markdown="1"> When invoking this API, you must use either the `StreamARN` or the
1871
+ # `StreamName` parameter, or both. It is recommended that you use the
1872
+ # `StreamARN` input parameter when you invoke this API.
1793
1873
  #
1794
1874
  # </note>
1795
1875
  #
@@ -1867,8 +1947,9 @@ module Aws::Kinesis
1867
1947
  # writes up to 1,000 records per second, up to a maximum data write
1868
1948
  # total of 1 MiB per second.
1869
1949
  #
1870
- # <note markdown="1"> When invoking this API, it is recommended you use the `StreamARN`
1871
- # input parameter rather than the `StreamName` input parameter.
1950
+ # <note markdown="1"> When invoking this API, you must use either the `StreamARN` or the
1951
+ # `StreamName` parameter, or both. It is recommended that you use the
1952
+ # `StreamARN` input parameter when you invoke this API.
1872
1953
  #
1873
1954
  # </note>
1874
1955
  #
@@ -1991,8 +2072,9 @@ module Aws::Kinesis
1991
2072
  # call (also referred to as a `PutRecords` request). Use this operation
1992
2073
  # to send data into the stream for data ingestion and processing.
1993
2074
  #
1994
- # <note markdown="1"> When invoking this API, it is recommended you use the `StreamARN`
1995
- # input parameter rather than the `StreamName` input parameter.
2075
+ # <note markdown="1"> When invoking this API, you must use either the `StreamARN` or the
2076
+ # `StreamName` parameter, or both. It is recommended that you use the
2077
+ # `StreamARN` input parameter when you invoke this API.
1996
2078
  #
1997
2079
  # </note>
1998
2080
  #
@@ -2121,6 +2203,57 @@ module Aws::Kinesis
2121
2203
  req.send_request(options)
2122
2204
  end
2123
2205
 
2206
+ # Attaches a resource-based policy to a data stream or registered
2207
+ # consumer. If you are using an identity other than the root user of the
2208
+ # Amazon Web Services account that owns the resource, the calling
2209
+ # identity must have the `PutResourcePolicy` permissions on the
2210
+ # specified Kinesis Data Streams resource and belong to the owner's
2211
+ # account in order to use this operation. If you don't have
2212
+ # `PutResourcePolicy` permissions, Amazon Kinesis Data Streams returns a
2213
+ # `403 Access Denied error`. If you receive a
2214
+ # `ResourceNotFoundException`, check to see if you passed a valid stream
2215
+ # or consumer resource.
2216
+ #
2217
+ # Request patterns can be one of the following:
2218
+ #
2219
+ # * Data stream pattern: `arn:aws.*:kinesis:.*:\d\{12\}:.*stream/\S+`
2220
+ #
2221
+ # * Consumer pattern:
2222
+ # `^(arn):aws.*:kinesis:.*:\d\{12\}:.*stream\/[a-zA-Z0-9_.-]+\/consumer\/[a-zA-Z0-9_.-]+:[0-9]+`
2223
+ #
2224
+ # For more information, see [Controlling Access to Amazon Kinesis Data
2225
+ # Streams Resources Using IAM][1].
2226
+ #
2227
+ #
2228
+ #
2229
+ # [1]: https://docs.aws.amazon.com/streams/latest/dev/controlling-access.html
2230
+ #
2231
+ # @option params [required, String] :resource_arn
2232
+ # The Amazon Resource Name (ARN) of the data stream or consumer.
2233
+ #
2234
+ # @option params [required, String] :policy
2235
+ # Details of the resource policy. It must include the identity of the
2236
+ # principal and the actions allowed on this resource. This is formatted
2237
+ # as a JSON string.
2238
+ #
2239
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2240
+ #
2241
+ # @example Request syntax with placeholder values
2242
+ #
2243
+ # resp = client.put_resource_policy({
2244
+ # resource_arn: "ResourceARN", # required
2245
+ # policy: "Policy", # required
2246
+ # })
2247
+ #
2248
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/PutResourcePolicy AWS API Documentation
2249
+ #
2250
+ # @overload put_resource_policy(params = {})
2251
+ # @param [Hash] params ({})
2252
+ def put_resource_policy(params = {}, options = {})
2253
+ req = build_request(:put_resource_policy, params)
2254
+ req.send_request(options)
2255
+ end
2256
+
2124
2257
  # Registers a consumer with a Kinesis data stream. When you use this
2125
2258
  # operation, the consumer you register can then call SubscribeToShard to
2126
2259
  # receive data from the stream using enhanced fan-out, at a rate of up
@@ -2186,8 +2319,9 @@ module Aws::Kinesis
2186
2319
  # deleted and cannot be recovered after this operation successfully
2187
2320
  # completes.
2188
2321
  #
2189
- # <note markdown="1"> When invoking this API, it is recommended you use the `StreamARN`
2190
- # input parameter rather than the `StreamName` input parameter.
2322
+ # <note markdown="1"> When invoking this API, you must use either the `StreamARN` or the
2323
+ # `StreamName` parameter, or both. It is recommended that you use the
2324
+ # `StreamARN` input parameter when you invoke this API.
2191
2325
  #
2192
2326
  # </note>
2193
2327
  #
@@ -2231,8 +2365,9 @@ module Aws::Kinesis
2231
2365
  # data records being ingested. This API is only supported for the data
2232
2366
  # streams with the provisioned capacity mode.
2233
2367
  #
2234
- # <note markdown="1"> When invoking this API, it is recommended you use the `StreamARN`
2235
- # input parameter rather than the `StreamName` input parameter.
2368
+ # <note markdown="1"> When invoking this API, you must use either the `StreamARN` or the
2369
+ # `StreamName` parameter, or both. It is recommended that you use the
2370
+ # `StreamARN` input parameter when you invoke this API.
2236
2371
  #
2237
2372
  # </note>
2238
2373
  #
@@ -2330,6 +2465,12 @@ module Aws::Kinesis
2330
2465
  # Enables or updates server-side encryption using an Amazon Web Services
2331
2466
  # KMS key for a specified stream.
2332
2467
  #
2468
+ # <note markdown="1"> When invoking this API, you must use either the `StreamARN` or the
2469
+ # `StreamName` parameter, or both. It is recommended that you use the
2470
+ # `StreamARN` input parameter when you invoke this API.
2471
+ #
2472
+ # </note>
2473
+ #
2333
2474
  # Starting encryption is an asynchronous operation. Upon receiving the
2334
2475
  # request, Kinesis Data Streams returns immediately and sets the status
2335
2476
  # of the stream to `UPDATING`. After the update is complete, Kinesis
@@ -2347,11 +2488,6 @@ module Aws::Kinesis
2347
2488
  # you enable encryption, you can verify that encryption is applied by
2348
2489
  # inspecting the API response from `PutRecord` or `PutRecords`.
2349
2490
  #
2350
- # <note markdown="1"> When invoking this API, it is recommended you use the `StreamARN`
2351
- # input parameter rather than the `StreamName` input parameter.
2352
- #
2353
- # </note>
2354
- #
2355
2491
  # @option params [String] :stream_name
2356
2492
  # The name of the stream for which to start encrypting records.
2357
2493
  #
@@ -2404,8 +2540,9 @@ module Aws::Kinesis
2404
2540
 
2405
2541
  # Disables server-side encryption for a specified stream.
2406
2542
  #
2407
- # <note markdown="1"> When invoking this API, it is recommended you use the `StreamARN`
2408
- # input parameter rather than the `StreamName` input parameter.
2543
+ # <note markdown="1"> When invoking this API, you must use either the `StreamARN` or the
2544
+ # `StreamName` parameter, or both. It is recommended that you use the
2545
+ # `StreamARN` input parameter when you invoke this API.
2409
2546
  #
2410
2547
  # </note>
2411
2548
  #
@@ -2482,8 +2619,9 @@ module Aws::Kinesis
2482
2619
  # number of shards. This API is only supported for the data streams with
2483
2620
  # the provisioned capacity mode.
2484
2621
  #
2485
- # <note markdown="1"> When invoking this API, it is recommended you use the `StreamARN`
2486
- # input parameter rather than the `StreamName` input parameter.
2622
+ # <note markdown="1"> When invoking this API, you must use either the `StreamARN` or the
2623
+ # `StreamName` parameter, or both. It is recommended that you use the
2624
+ # `StreamARN` input parameter when you invoke this API.
2487
2625
  #
2488
2626
  # </note>
2489
2627
  #
@@ -2522,6 +2660,9 @@ module Aws::Kinesis
2522
2660
  #
2523
2661
  # * Scale up to more than the shard limit for your account
2524
2662
  #
2663
+ # * Make over 10 TPS. TPS over 10 will trigger the
2664
+ # LimitExceededException
2665
+ #
2525
2666
  # For the default limits for an Amazon Web Services account, see
2526
2667
  # [Streams Limits][1] in the *Amazon Kinesis Data Streams Developer
2527
2668
  # Guide*. To request an increase in the call rate limit, the shard limit
@@ -2636,7 +2777,7 @@ module Aws::Kinesis
2636
2777
  params: params,
2637
2778
  config: config)
2638
2779
  context[:gem_name] = 'aws-sdk-kinesis'
2639
- context[:gem_version] = '1.52.0'
2780
+ context[:gem_version] = '1.53.0'
2640
2781
  Seahorse::Client::Request.new(handlers, context)
2641
2782
  end
2642
2783
 
@@ -28,6 +28,7 @@ module Aws::Kinesis
28
28
  CreateStreamInput = Shapes::StructureShape.new(name: 'CreateStreamInput')
29
29
  Data = Shapes::BlobShape.new(name: 'Data')
30
30
  DecreaseStreamRetentionPeriodInput = Shapes::StructureShape.new(name: 'DecreaseStreamRetentionPeriodInput')
31
+ DeleteResourcePolicyInput = Shapes::StructureShape.new(name: 'DeleteResourcePolicyInput')
31
32
  DeleteStreamInput = Shapes::StructureShape.new(name: 'DeleteStreamInput')
32
33
  DeregisterStreamConsumerInput = Shapes::StructureShape.new(name: 'DeregisterStreamConsumerInput')
33
34
  DescribeLimitsInput = Shapes::StructureShape.new(name: 'DescribeLimitsInput')
@@ -52,6 +53,8 @@ module Aws::Kinesis
52
53
  GetRecordsInput = Shapes::StructureShape.new(name: 'GetRecordsInput')
53
54
  GetRecordsInputLimit = Shapes::IntegerShape.new(name: 'GetRecordsInputLimit')
54
55
  GetRecordsOutput = Shapes::StructureShape.new(name: 'GetRecordsOutput')
56
+ GetResourcePolicyInput = Shapes::StructureShape.new(name: 'GetResourcePolicyInput')
57
+ GetResourcePolicyOutput = Shapes::StructureShape.new(name: 'GetResourcePolicyOutput')
55
58
  GetShardIteratorInput = Shapes::StructureShape.new(name: 'GetShardIteratorInput')
56
59
  GetShardIteratorOutput = Shapes::StructureShape.new(name: 'GetShardIteratorOutput')
57
60
  HashKey = Shapes::StringShape.new(name: 'HashKey')
@@ -87,6 +90,7 @@ module Aws::Kinesis
87
90
  OnDemandStreamCountLimitObject = Shapes::IntegerShape.new(name: 'OnDemandStreamCountLimitObject')
88
91
  OnDemandStreamCountObject = Shapes::IntegerShape.new(name: 'OnDemandStreamCountObject')
89
92
  PartitionKey = Shapes::StringShape.new(name: 'PartitionKey')
93
+ Policy = Shapes::StringShape.new(name: 'Policy')
90
94
  PositiveIntegerObject = Shapes::IntegerShape.new(name: 'PositiveIntegerObject')
91
95
  ProvisionedThroughputExceededException = Shapes::StructureShape.new(name: 'ProvisionedThroughputExceededException')
92
96
  PutRecordInput = Shapes::StructureShape.new(name: 'PutRecordInput')
@@ -97,11 +101,13 @@ module Aws::Kinesis
97
101
  PutRecordsRequestEntryList = Shapes::ListShape.new(name: 'PutRecordsRequestEntryList')
98
102
  PutRecordsResultEntry = Shapes::StructureShape.new(name: 'PutRecordsResultEntry')
99
103
  PutRecordsResultEntryList = Shapes::ListShape.new(name: 'PutRecordsResultEntryList')
104
+ PutResourcePolicyInput = Shapes::StructureShape.new(name: 'PutResourcePolicyInput')
100
105
  Record = Shapes::StructureShape.new(name: 'Record')
101
106
  RecordList = Shapes::ListShape.new(name: 'RecordList')
102
107
  RegisterStreamConsumerInput = Shapes::StructureShape.new(name: 'RegisterStreamConsumerInput')
103
108
  RegisterStreamConsumerOutput = Shapes::StructureShape.new(name: 'RegisterStreamConsumerOutput')
104
109
  RemoveTagsFromStreamInput = Shapes::StructureShape.new(name: 'RemoveTagsFromStreamInput')
110
+ ResourceARN = Shapes::StringShape.new(name: 'ResourceARN')
105
111
  ResourceInUseException = Shapes::StructureShape.new(name: 'ResourceInUseException')
106
112
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
107
113
  RetentionPeriodHours = Shapes::IntegerShape.new(name: 'RetentionPeriodHours')
@@ -187,6 +193,9 @@ module Aws::Kinesis
187
193
  DecreaseStreamRetentionPeriodInput.add_member(:stream_arn, Shapes::ShapeRef.new(shape: StreamARN, location_name: "StreamARN", metadata: {"contextParam"=>{"name"=>"StreamARN"}}))
188
194
  DecreaseStreamRetentionPeriodInput.struct_class = Types::DecreaseStreamRetentionPeriodInput
189
195
 
196
+ DeleteResourcePolicyInput.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceARN, required: true, location_name: "ResourceARN", metadata: {"contextParam"=>{"name"=>"ResourceARN"}}))
197
+ DeleteResourcePolicyInput.struct_class = Types::DeleteResourcePolicyInput
198
+
190
199
  DeleteStreamInput.add_member(:stream_name, Shapes::ShapeRef.new(shape: StreamName, location_name: "StreamName"))
191
200
  DeleteStreamInput.add_member(:enforce_consumer_deletion, Shapes::ShapeRef.new(shape: BooleanObject, location_name: "EnforceConsumerDeletion"))
192
201
  DeleteStreamInput.add_member(:stream_arn, Shapes::ShapeRef.new(shape: StreamARN, location_name: "StreamARN", metadata: {"contextParam"=>{"name"=>"StreamARN"}}))
@@ -267,6 +276,12 @@ module Aws::Kinesis
267
276
  GetRecordsOutput.add_member(:child_shards, Shapes::ShapeRef.new(shape: ChildShardList, location_name: "ChildShards"))
268
277
  GetRecordsOutput.struct_class = Types::GetRecordsOutput
269
278
 
279
+ GetResourcePolicyInput.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceARN, required: true, location_name: "ResourceARN", metadata: {"contextParam"=>{"name"=>"ResourceARN"}}))
280
+ GetResourcePolicyInput.struct_class = Types::GetResourcePolicyInput
281
+
282
+ GetResourcePolicyOutput.add_member(:policy, Shapes::ShapeRef.new(shape: Policy, required: true, location_name: "Policy"))
283
+ GetResourcePolicyOutput.struct_class = Types::GetResourcePolicyOutput
284
+
270
285
  GetShardIteratorInput.add_member(:stream_name, Shapes::ShapeRef.new(shape: StreamName, location_name: "StreamName"))
271
286
  GetShardIteratorInput.add_member(:shard_id, Shapes::ShapeRef.new(shape: ShardId, required: true, location_name: "ShardId"))
272
287
  GetShardIteratorInput.add_member(:shard_iterator_type, Shapes::ShapeRef.new(shape: ShardIteratorType, required: true, location_name: "ShardIteratorType"))
@@ -407,6 +422,10 @@ module Aws::Kinesis
407
422
 
408
423
  PutRecordsResultEntryList.member = Shapes::ShapeRef.new(shape: PutRecordsResultEntry)
409
424
 
425
+ PutResourcePolicyInput.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceARN, required: true, location_name: "ResourceARN", metadata: {"contextParam"=>{"name"=>"ResourceARN"}}))
426
+ PutResourcePolicyInput.add_member(:policy, Shapes::ShapeRef.new(shape: Policy, required: true, location_name: "Policy"))
427
+ PutResourcePolicyInput.struct_class = Types::PutResourcePolicyInput
428
+
410
429
  Record.add_member(:sequence_number, Shapes::ShapeRef.new(shape: SequenceNumber, required: true, location_name: "SequenceNumber"))
411
430
  Record.add_member(:approximate_arrival_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "ApproximateArrivalTimestamp"))
412
431
  Record.add_member(:data, Shapes::ShapeRef.new(shape: Data, required: true, location_name: "Data"))
@@ -630,6 +649,19 @@ module Aws::Kinesis
630
649
  o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
631
650
  end)
632
651
 
652
+ api.add_operation(:delete_resource_policy, Seahorse::Model::Operation.new.tap do |o|
653
+ o.name = "DeleteResourcePolicy"
654
+ o.http_method = "POST"
655
+ o.http_request_uri = "/"
656
+ o.input = Shapes::ShapeRef.new(shape: DeleteResourcePolicyInput)
657
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
658
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
659
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
660
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
661
+ o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
662
+ o.errors << Shapes::ShapeRef.new(shape: ResourceInUseException)
663
+ end)
664
+
633
665
  api.add_operation(:delete_stream, Seahorse::Model::Operation.new.tap do |o|
634
666
  o.name = "DeleteStream"
635
667
  o.http_method = "POST"
@@ -750,6 +782,18 @@ module Aws::Kinesis
750
782
  o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
751
783
  end)
752
784
 
785
+ api.add_operation(:get_resource_policy, Seahorse::Model::Operation.new.tap do |o|
786
+ o.name = "GetResourcePolicy"
787
+ o.http_method = "POST"
788
+ o.http_request_uri = "/"
789
+ o.input = Shapes::ShapeRef.new(shape: GetResourcePolicyInput)
790
+ o.output = Shapes::ShapeRef.new(shape: GetResourcePolicyOutput)
791
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
792
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
793
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
794
+ o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
795
+ end)
796
+
753
797
  api.add_operation(:get_shard_iterator, Seahorse::Model::Operation.new.tap do |o|
754
798
  o.name = "GetShardIterator"
755
799
  o.http_method = "POST"
@@ -888,6 +932,19 @@ module Aws::Kinesis
888
932
  o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
889
933
  end)
890
934
 
935
+ api.add_operation(:put_resource_policy, Seahorse::Model::Operation.new.tap do |o|
936
+ o.name = "PutResourcePolicy"
937
+ o.http_method = "POST"
938
+ o.http_request_uri = "/"
939
+ o.input = Shapes::ShapeRef.new(shape: PutResourcePolicyInput)
940
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
941
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
942
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
943
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
944
+ o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
945
+ o.errors << Shapes::ShapeRef.new(shape: ResourceInUseException)
946
+ end)
947
+
891
948
  api.add_operation(:register_stream_consumer, Seahorse::Model::Operation.new.tap do |o|
892
949
  o.name = "RegisterStreamConsumer"
893
950
  o.http_method = "POST"
@@ -45,6 +45,11 @@ module Aws::Kinesis
45
45
  #
46
46
  # @return [String]
47
47
  #
48
+ # @!attribute resource_arn
49
+ # The ARN of the Kinesis resource
50
+ #
51
+ # @return [String]
52
+ #
48
53
  EndpointParameters = Struct.new(
49
54
  :region,
50
55
  :use_dual_stack,
@@ -53,6 +58,7 @@ module Aws::Kinesis
53
58
  :stream_arn,
54
59
  :operation_type,
55
60
  :consumer_arn,
61
+ :resource_arn,
56
62
  ) do
57
63
  include Aws::Structure
58
64
 
@@ -66,6 +72,7 @@ module Aws::Kinesis
66
72
  'StreamARN' => :stream_arn,
67
73
  'OperationType' => :operation_type,
68
74
  'ConsumerARN' => :consumer_arn,
75
+ 'ResourceARN' => :resource_arn,
69
76
  }.freeze
70
77
  end
71
78
 
@@ -85,6 +92,7 @@ module Aws::Kinesis
85
92
  self[:stream_arn] = options[:stream_arn]
86
93
  self[:operation_type] = options[:operation_type]
87
94
  self[:consumer_arn] = options[:consumer_arn]
95
+ self[:resource_arn] = options[:resource_arn]
88
96
  end
89
97
  end
90
98
  end
@@ -17,6 +17,7 @@ module Aws::Kinesis
17
17
  stream_arn = parameters.stream_arn
18
18
  operation_type = parameters.operation_type
19
19
  consumer_arn = parameters.consumer_arn
20
+ resource_arn = parameters.resource_arn
20
21
  if Aws::Endpoints::Matchers.set?(stream_arn) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.set?(endpoint)) && Aws::Endpoints::Matchers.set?(region) && (partition_result = Aws::Endpoints::Matchers.aws_partition(region)) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws-iso")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws-iso-b"))
21
22
  if (arn = Aws::Endpoints::Matchers.aws_parse_arn(stream_arn))
22
23
  if Aws::Endpoints::Matchers.valid_host_label?(Aws::Endpoints::Matchers.attr(arn, "accountId"), false)
@@ -113,6 +114,54 @@ module Aws::Kinesis
113
114
  end
114
115
  raise ArgumentError, "Invalid ARN: Failed to parse ARN."
115
116
  end
117
+ if Aws::Endpoints::Matchers.set?(resource_arn) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.set?(endpoint)) && Aws::Endpoints::Matchers.set?(region) && (partition_result = Aws::Endpoints::Matchers.aws_partition(region)) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws-iso")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws-iso-b"))
118
+ if (arn = Aws::Endpoints::Matchers.aws_parse_arn(resource_arn))
119
+ if Aws::Endpoints::Matchers.valid_host_label?(Aws::Endpoints::Matchers.attr(arn, "accountId"), false)
120
+ if Aws::Endpoints::Matchers.valid_host_label?(Aws::Endpoints::Matchers.attr(arn, "region"), false)
121
+ if Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(arn, "service"), "kinesis")
122
+ if (arn_type = Aws::Endpoints::Matchers.attr(arn, "resourceId[0]")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(arn_type, ""))
123
+ if Aws::Endpoints::Matchers.string_equals?(arn_type, "stream")
124
+ if Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "#{arn['partition']}")
125
+ if Aws::Endpoints::Matchers.set?(operation_type)
126
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
127
+ if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"), true)
128
+ if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"), true)
129
+ return Aws::Endpoints::Endpoint.new(url: "https://#{arn['accountId']}.#{operation_type}-kinesis-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
130
+ end
131
+ raise ArgumentError, "DualStack is enabled, but this partition does not support DualStack."
132
+ end
133
+ raise ArgumentError, "FIPS is enabled, but this partition does not support FIPS."
134
+ end
135
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
136
+ if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"), true)
137
+ return Aws::Endpoints::Endpoint.new(url: "https://#{arn['accountId']}.#{operation_type}-kinesis-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
138
+ end
139
+ raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
140
+ end
141
+ if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
142
+ if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"), true)
143
+ return Aws::Endpoints::Endpoint.new(url: "https://#{arn['accountId']}.#{operation_type}-kinesis.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
144
+ end
145
+ raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
146
+ end
147
+ return Aws::Endpoints::Endpoint.new(url: "https://#{arn['accountId']}.#{operation_type}-kinesis.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
148
+ end
149
+ raise ArgumentError, "Operation Type is not set. Please contact service team for resolution."
150
+ end
151
+ raise ArgumentError, "Partition: #{arn['partition']} from ARN doesn't match with partition name: #{partition_result['name']}."
152
+ end
153
+ raise ArgumentError, "Invalid ARN: Kinesis ARNs don't support `#{arn_type}` arn types."
154
+ end
155
+ raise ArgumentError, "Invalid ARN: No ARN type specified"
156
+ end
157
+ raise ArgumentError, "Invalid ARN: The ARN was not for the Kinesis service, found: #{arn['service']}."
158
+ end
159
+ raise ArgumentError, "Invalid ARN: Invalid region."
160
+ end
161
+ raise ArgumentError, "Invalid ARN: Invalid account id."
162
+ end
163
+ raise ArgumentError, "Invalid ARN: Failed to parse ARN."
164
+ end
116
165
  if Aws::Endpoints::Matchers.set?(endpoint)
117
166
  if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
118
167
  raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
@@ -131,8 +180,8 @@ module Aws::Kinesis
131
180
  raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
132
181
  end
133
182
  if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
134
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
135
- if Aws::Endpoints::Matchers.string_equals?("aws-us-gov", Aws::Endpoints::Matchers.attr(partition_result, "name"))
183
+ if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"), true)
184
+ if Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws-us-gov")
136
185
  return Aws::Endpoints::Endpoint.new(url: "https://kinesis.#{region}.amazonaws.com", headers: {}, properties: {})
137
186
  end
138
187
  return Aws::Endpoints::Endpoint.new(url: "https://kinesis-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
@@ -25,6 +25,7 @@ module Aws::Kinesis
25
25
  stream_arn: context.params[:stream_arn],
26
26
  operation_type: "control",
27
27
  consumer_arn: nil,
28
+ resource_arn: nil,
28
29
  )
29
30
  end
30
31
  end
@@ -42,6 +43,7 @@ module Aws::Kinesis
42
43
  stream_arn: nil,
43
44
  operation_type: nil,
44
45
  consumer_arn: nil,
46
+ resource_arn: nil,
45
47
  )
46
48
  end
47
49
  end
@@ -59,6 +61,25 @@ module Aws::Kinesis
59
61
  stream_arn: context.params[:stream_arn],
60
62
  operation_type: "control",
61
63
  consumer_arn: nil,
64
+ resource_arn: nil,
65
+ )
66
+ end
67
+ end
68
+
69
+ class DeleteResourcePolicy
70
+ def self.build(context)
71
+ unless context.config.regional_endpoint
72
+ endpoint = context.config.endpoint.to_s
73
+ end
74
+ Aws::Kinesis::EndpointParameters.new(
75
+ region: context.config.region,
76
+ use_dual_stack: context.config.use_dualstack_endpoint,
77
+ use_fips: context.config.use_fips_endpoint,
78
+ endpoint: endpoint,
79
+ stream_arn: nil,
80
+ operation_type: "control",
81
+ consumer_arn: nil,
82
+ resource_arn: context.params[:resource_arn],
62
83
  )
63
84
  end
64
85
  end
@@ -76,6 +97,7 @@ module Aws::Kinesis
76
97
  stream_arn: context.params[:stream_arn],
77
98
  operation_type: "control",
78
99
  consumer_arn: nil,
100
+ resource_arn: nil,
79
101
  )
80
102
  end
81
103
  end
@@ -93,6 +115,7 @@ module Aws::Kinesis
93
115
  stream_arn: context.params[:stream_arn],
94
116
  operation_type: "control",
95
117
  consumer_arn: context.params[:consumer_arn],
118
+ resource_arn: nil,
96
119
  )
97
120
  end
98
121
  end
@@ -110,6 +133,7 @@ module Aws::Kinesis
110
133
  stream_arn: nil,
111
134
  operation_type: nil,
112
135
  consumer_arn: nil,
136
+ resource_arn: nil,
113
137
  )
114
138
  end
115
139
  end
@@ -127,6 +151,7 @@ module Aws::Kinesis
127
151
  stream_arn: context.params[:stream_arn],
128
152
  operation_type: "control",
129
153
  consumer_arn: nil,
154
+ resource_arn: nil,
130
155
  )
131
156
  end
132
157
  end
@@ -144,6 +169,7 @@ module Aws::Kinesis
144
169
  stream_arn: context.params[:stream_arn],
145
170
  operation_type: "control",
146
171
  consumer_arn: context.params[:consumer_arn],
172
+ resource_arn: nil,
147
173
  )
148
174
  end
149
175
  end
@@ -161,6 +187,7 @@ module Aws::Kinesis
161
187
  stream_arn: context.params[:stream_arn],
162
188
  operation_type: "control",
163
189
  consumer_arn: nil,
190
+ resource_arn: nil,
164
191
  )
165
192
  end
166
193
  end
@@ -178,6 +205,7 @@ module Aws::Kinesis
178
205
  stream_arn: context.params[:stream_arn],
179
206
  operation_type: "control",
180
207
  consumer_arn: nil,
208
+ resource_arn: nil,
181
209
  )
182
210
  end
183
211
  end
@@ -195,6 +223,7 @@ module Aws::Kinesis
195
223
  stream_arn: context.params[:stream_arn],
196
224
  operation_type: "control",
197
225
  consumer_arn: nil,
226
+ resource_arn: nil,
198
227
  )
199
228
  end
200
229
  end
@@ -212,6 +241,25 @@ module Aws::Kinesis
212
241
  stream_arn: context.params[:stream_arn],
213
242
  operation_type: "data",
214
243
  consumer_arn: nil,
244
+ resource_arn: nil,
245
+ )
246
+ end
247
+ end
248
+
249
+ class GetResourcePolicy
250
+ def self.build(context)
251
+ unless context.config.regional_endpoint
252
+ endpoint = context.config.endpoint.to_s
253
+ end
254
+ Aws::Kinesis::EndpointParameters.new(
255
+ region: context.config.region,
256
+ use_dual_stack: context.config.use_dualstack_endpoint,
257
+ use_fips: context.config.use_fips_endpoint,
258
+ endpoint: endpoint,
259
+ stream_arn: nil,
260
+ operation_type: "control",
261
+ consumer_arn: nil,
262
+ resource_arn: context.params[:resource_arn],
215
263
  )
216
264
  end
217
265
  end
@@ -229,6 +277,7 @@ module Aws::Kinesis
229
277
  stream_arn: context.params[:stream_arn],
230
278
  operation_type: "data",
231
279
  consumer_arn: nil,
280
+ resource_arn: nil,
232
281
  )
233
282
  end
234
283
  end
@@ -246,6 +295,7 @@ module Aws::Kinesis
246
295
  stream_arn: context.params[:stream_arn],
247
296
  operation_type: "control",
248
297
  consumer_arn: nil,
298
+ resource_arn: nil,
249
299
  )
250
300
  end
251
301
  end
@@ -263,6 +313,7 @@ module Aws::Kinesis
263
313
  stream_arn: context.params[:stream_arn],
264
314
  operation_type: "control",
265
315
  consumer_arn: nil,
316
+ resource_arn: nil,
266
317
  )
267
318
  end
268
319
  end
@@ -280,6 +331,7 @@ module Aws::Kinesis
280
331
  stream_arn: context.params[:stream_arn],
281
332
  operation_type: "control",
282
333
  consumer_arn: nil,
334
+ resource_arn: nil,
283
335
  )
284
336
  end
285
337
  end
@@ -297,6 +349,7 @@ module Aws::Kinesis
297
349
  stream_arn: nil,
298
350
  operation_type: nil,
299
351
  consumer_arn: nil,
352
+ resource_arn: nil,
300
353
  )
301
354
  end
302
355
  end
@@ -314,6 +367,7 @@ module Aws::Kinesis
314
367
  stream_arn: context.params[:stream_arn],
315
368
  operation_type: "control",
316
369
  consumer_arn: nil,
370
+ resource_arn: nil,
317
371
  )
318
372
  end
319
373
  end
@@ -331,6 +385,7 @@ module Aws::Kinesis
331
385
  stream_arn: context.params[:stream_arn],
332
386
  operation_type: "control",
333
387
  consumer_arn: nil,
388
+ resource_arn: nil,
334
389
  )
335
390
  end
336
391
  end
@@ -348,6 +403,7 @@ module Aws::Kinesis
348
403
  stream_arn: context.params[:stream_arn],
349
404
  operation_type: "data",
350
405
  consumer_arn: nil,
406
+ resource_arn: nil,
351
407
  )
352
408
  end
353
409
  end
@@ -365,6 +421,25 @@ module Aws::Kinesis
365
421
  stream_arn: context.params[:stream_arn],
366
422
  operation_type: "data",
367
423
  consumer_arn: nil,
424
+ resource_arn: nil,
425
+ )
426
+ end
427
+ end
428
+
429
+ class PutResourcePolicy
430
+ def self.build(context)
431
+ unless context.config.regional_endpoint
432
+ endpoint = context.config.endpoint.to_s
433
+ end
434
+ Aws::Kinesis::EndpointParameters.new(
435
+ region: context.config.region,
436
+ use_dual_stack: context.config.use_dualstack_endpoint,
437
+ use_fips: context.config.use_fips_endpoint,
438
+ endpoint: endpoint,
439
+ stream_arn: nil,
440
+ operation_type: "control",
441
+ consumer_arn: nil,
442
+ resource_arn: context.params[:resource_arn],
368
443
  )
369
444
  end
370
445
  end
@@ -382,6 +457,7 @@ module Aws::Kinesis
382
457
  stream_arn: context.params[:stream_arn],
383
458
  operation_type: "control",
384
459
  consumer_arn: nil,
460
+ resource_arn: nil,
385
461
  )
386
462
  end
387
463
  end
@@ -399,6 +475,7 @@ module Aws::Kinesis
399
475
  stream_arn: context.params[:stream_arn],
400
476
  operation_type: "control",
401
477
  consumer_arn: nil,
478
+ resource_arn: nil,
402
479
  )
403
480
  end
404
481
  end
@@ -416,6 +493,7 @@ module Aws::Kinesis
416
493
  stream_arn: context.params[:stream_arn],
417
494
  operation_type: "control",
418
495
  consumer_arn: nil,
496
+ resource_arn: nil,
419
497
  )
420
498
  end
421
499
  end
@@ -433,6 +511,7 @@ module Aws::Kinesis
433
511
  stream_arn: context.params[:stream_arn],
434
512
  operation_type: "control",
435
513
  consumer_arn: nil,
514
+ resource_arn: nil,
436
515
  )
437
516
  end
438
517
  end
@@ -450,6 +529,7 @@ module Aws::Kinesis
450
529
  stream_arn: context.params[:stream_arn],
451
530
  operation_type: "control",
452
531
  consumer_arn: nil,
532
+ resource_arn: nil,
453
533
  )
454
534
  end
455
535
  end
@@ -467,6 +547,7 @@ module Aws::Kinesis
467
547
  stream_arn: nil,
468
548
  operation_type: "data",
469
549
  consumer_arn: context.params[:consumer_arn],
550
+ resource_arn: nil,
470
551
  )
471
552
  end
472
553
  end
@@ -484,6 +565,7 @@ module Aws::Kinesis
484
565
  stream_arn: context.params[:stream_arn],
485
566
  operation_type: "control",
486
567
  consumer_arn: nil,
568
+ resource_arn: nil,
487
569
  )
488
570
  end
489
571
  end
@@ -501,6 +583,7 @@ module Aws::Kinesis
501
583
  stream_arn: context.params[:stream_arn],
502
584
  operation_type: "control",
503
585
  consumer_arn: nil,
586
+ resource_arn: nil,
504
587
  )
505
588
  end
506
589
  end
@@ -62,6 +62,8 @@ module Aws::Kinesis
62
62
  Aws::Kinesis::Endpoints::CreateStream.build(context)
63
63
  when :decrease_stream_retention_period
64
64
  Aws::Kinesis::Endpoints::DecreaseStreamRetentionPeriod.build(context)
65
+ when :delete_resource_policy
66
+ Aws::Kinesis::Endpoints::DeleteResourcePolicy.build(context)
65
67
  when :delete_stream
66
68
  Aws::Kinesis::Endpoints::DeleteStream.build(context)
67
69
  when :deregister_stream_consumer
@@ -80,6 +82,8 @@ module Aws::Kinesis
80
82
  Aws::Kinesis::Endpoints::EnableEnhancedMonitoring.build(context)
81
83
  when :get_records
82
84
  Aws::Kinesis::Endpoints::GetRecords.build(context)
85
+ when :get_resource_policy
86
+ Aws::Kinesis::Endpoints::GetResourcePolicy.build(context)
83
87
  when :get_shard_iterator
84
88
  Aws::Kinesis::Endpoints::GetShardIterator.build(context)
85
89
  when :increase_stream_retention_period
@@ -98,6 +102,8 @@ module Aws::Kinesis
98
102
  Aws::Kinesis::Endpoints::PutRecord.build(context)
99
103
  when :put_records
100
104
  Aws::Kinesis::Endpoints::PutRecords.build(context)
105
+ when :put_resource_policy
106
+ Aws::Kinesis::Endpoints::PutResourcePolicy.build(context)
101
107
  when :register_stream_consumer
102
108
  Aws::Kinesis::Endpoints::RegisterStreamConsumer.build(context)
103
109
  when :remove_tags_from_stream
@@ -212,6 +212,18 @@ module Aws::Kinesis
212
212
  include Aws::Structure
213
213
  end
214
214
 
215
+ # @!attribute [rw] resource_arn
216
+ # The Amazon Resource Name (ARN) of the data stream or consumer.
217
+ # @return [String]
218
+ #
219
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/DeleteResourcePolicyInput AWS API Documentation
220
+ #
221
+ class DeleteResourcePolicyInput < Struct.new(
222
+ :resource_arn)
223
+ SENSITIVE = []
224
+ include Aws::Structure
225
+ end
226
+
215
227
  # Represents the input for DeleteStream.
216
228
  #
217
229
  # @!attribute [rw] stream_name
@@ -698,6 +710,30 @@ module Aws::Kinesis
698
710
  include Aws::Structure
699
711
  end
700
712
 
713
+ # @!attribute [rw] resource_arn
714
+ # The Amazon Resource Name (ARN) of the data stream or consumer.
715
+ # @return [String]
716
+ #
717
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/GetResourcePolicyInput AWS API Documentation
718
+ #
719
+ class GetResourcePolicyInput < Struct.new(
720
+ :resource_arn)
721
+ SENSITIVE = []
722
+ include Aws::Structure
723
+ end
724
+
725
+ # @!attribute [rw] policy
726
+ # Details of the resource policy. This is formatted as a JSON string.
727
+ # @return [String]
728
+ #
729
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/GetResourcePolicyOutput AWS API Documentation
730
+ #
731
+ class GetResourcePolicyOutput < Struct.new(
732
+ :policy)
733
+ SENSITIVE = []
734
+ include Aws::Structure
735
+ end
736
+
701
737
  # Represents the input for `GetShardIterator`.
702
738
  #
703
739
  # @!attribute [rw] stream_name
@@ -1610,6 +1646,25 @@ module Aws::Kinesis
1610
1646
  include Aws::Structure
1611
1647
  end
1612
1648
 
1649
+ # @!attribute [rw] resource_arn
1650
+ # The Amazon Resource Name (ARN) of the data stream or consumer.
1651
+ # @return [String]
1652
+ #
1653
+ # @!attribute [rw] policy
1654
+ # Details of the resource policy. It must include the identity of the
1655
+ # principal and the actions allowed on this resource. This is
1656
+ # formatted as a JSON string.
1657
+ # @return [String]
1658
+ #
1659
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/PutResourcePolicyInput AWS API Documentation
1660
+ #
1661
+ class PutResourcePolicyInput < Struct.new(
1662
+ :resource_arn,
1663
+ :policy)
1664
+ SENSITIVE = []
1665
+ include Aws::Structure
1666
+ end
1667
+
1613
1668
  # The unit of data of the Kinesis data stream, which is composed of a
1614
1669
  # sequence number, a partition key, and a data blob.
1615
1670
  #
@@ -55,6 +55,6 @@ require_relative 'aws-sdk-kinesis/event_streams'
55
55
  # @!group service
56
56
  module Aws::Kinesis
57
57
 
58
- GEM_VERSION = '1.52.0'
58
+ GEM_VERSION = '1.53.0'
59
59
 
60
60
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-kinesis
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.52.0
4
+ version: 1.53.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: 2023-09-27 00:00:00.000000000 Z
11
+ date: 2023-11-22 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.184.0
22
+ version: 3.188.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.184.0
32
+ version: 3.188.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -83,7 +83,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
83
83
  requirements:
84
84
  - - ">="
85
85
  - !ruby/object:Gem::Version
86
- version: '2.3'
86
+ version: '2.5'
87
87
  required_rubygems_version: !ruby/object:Gem::Requirement
88
88
  requirements:
89
89
  - - ">="