aws-sdk-qldb 1.13.0 → 1.17.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3b51e45924592dfac1c049a1dfcee8ea7f09ddce77268ac96735a3745459f116
4
- data.tar.gz: 9866d74a0ecb2b8201a4197d6d93fb793a3e7fbe97a6f700e6e0103f8dd546b1
3
+ metadata.gz: 2708a2f39158ed82c21ce2955d0fb17715f04adc8e6dd57684ba3ef8e195a694
4
+ data.tar.gz: 8ccdd5bfec9de2c0ca2dcfca19f24134755170f9d74347e1a60b5cb139e72ca8
5
5
  SHA512:
6
- metadata.gz: 6aabde6d19ab517e73f2628a2cbca09050427ecc89ddbb9c9f20864747040bd9287bf3bdde79f7e189d48850f142ad3a6c7419eb4c6f8706b0bc88f1b3bad2fb
7
- data.tar.gz: f02845595d681ab149f1c800b204b131a820e5cc746df3b6ad528a80f3674e115bcef347120e26368b712277f05a1a578a0d524b8caca0ad05b98fcc730cde69
6
+ metadata.gz: 013f3069d84ca4128055bf5e1a67eba59bc8c624386a729acef4d60debc0dc26f26329390a1e51be8fda818823f81f7613bd123a6b26ef7b0daf505a001e09ad
7
+ data.tar.gz: b4c64efeb71b2c0bd58143ebb7842181d14b57b771a2bac7ae82f8af6547b1936ee0bdf204c5693fc26cc3d7330b02568f3c83f70ca6339c1b67582e3f6d6d88
data/CHANGELOG.md CHANGED
@@ -1,6 +1,26 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.17.0 (2021-07-28)
5
+ ------------------
6
+
7
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
8
+
9
+ 1.16.0 (2021-07-22)
10
+ ------------------
11
+
12
+ * Feature - Amazon QLDB now supports ledgers encrypted with customer managed KMS keys. Changes in CreateLedger, UpdateLedger and DescribeLedger APIs to support the changes.
13
+
14
+ 1.15.0 (2021-06-04)
15
+ ------------------
16
+
17
+ * Feature - Documentation updates for Amazon QLDB
18
+
19
+ 1.14.0 (2021-05-26)
20
+ ------------------
21
+
22
+ * Feature - Support STANDARD permissions mode in CreateLedger and DescribeLedger. Add UpdateLedgerPermissionsMode to update permissions mode on existing ledgers.
23
+
4
24
  1.13.0 (2021-03-10)
5
25
  ------------------
6
26
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.13.0
1
+ 1.17.0
data/lib/aws-sdk-qldb.rb CHANGED
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-qldb/customizations'
48
48
  # @!group service
49
49
  module Aws::QLDB
50
50
 
51
- GEM_VERSION = '1.13.0'
51
+ GEM_VERSION = '1.17.0'
52
52
 
53
53
  end
@@ -338,7 +338,8 @@ module Aws::QLDB
338
338
  # The name of the ledger.
339
339
  #
340
340
  # @option params [required, String] :stream_id
341
- # The unique ID that QLDB assigns to each QLDB journal stream.
341
+ # The UUID (represented in Base62-encoded text) of the QLDB journal
342
+ # stream to be canceled.
342
343
  #
343
344
  # @return [Types::CancelJournalKinesisStreamResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
344
345
  #
@@ -364,11 +365,11 @@ module Aws::QLDB
364
365
  req.send_request(options)
365
366
  end
366
367
 
367
- # Creates a new ledger in your AWS account.
368
+ # Creates a new ledger in your account in the current Region.
368
369
  #
369
370
  # @option params [required, String] :name
370
371
  # The name of the ledger that you want to create. The name must be
371
- # unique among all of your ledgers in the current AWS Region.
372
+ # unique among all of the ledgers in your account in the current Region.
372
373
  #
373
374
  # Naming constraints for ledger names are defined in [Quotas in Amazon
374
375
  # QLDB][1] in the *Amazon QLDB Developer Guide*.
@@ -384,6 +385,37 @@ module Aws::QLDB
384
385
  #
385
386
  # @option params [required, String] :permissions_mode
386
387
  # The permissions mode to assign to the ledger that you want to create.
388
+ # This parameter can have one of the following values:
389
+ #
390
+ # * `ALLOW_ALL`\: A legacy permissions mode that enables access control
391
+ # with API-level granularity for ledgers.
392
+ #
393
+ # This mode allows users who have the `SendCommand` API permission for
394
+ # this ledger to run all PartiQL commands (hence, `ALLOW_ALL`) on any
395
+ # tables in the specified ledger. This mode disregards any table-level
396
+ # or command-level IAM permissions policies that you create for the
397
+ # ledger.
398
+ #
399
+ # * `STANDARD`\: (*Recommended*) A permissions mode that enables access
400
+ # control with finer granularity for ledgers, tables, and PartiQL
401
+ # commands.
402
+ #
403
+ # By default, this mode denies all user requests to run any PartiQL
404
+ # commands on any tables in this ledger. To allow PartiQL commands to
405
+ # run, you must create IAM permissions policies for specific table
406
+ # resources and PartiQL actions, in addition to the `SendCommand` API
407
+ # permission for the ledger. For information, see [Getting started
408
+ # with the standard permissions mode][1] in the *Amazon QLDB Developer
409
+ # Guide*.
410
+ #
411
+ # <note markdown="1"> We strongly recommend using the `STANDARD` permissions mode to
412
+ # maximize the security of your ledger data.
413
+ #
414
+ # </note>
415
+ #
416
+ #
417
+ #
418
+ # [1]: https://docs.aws.amazon.com/qldb/latest/developerguide/getting-started-standard-mode.html
387
419
  #
388
420
  # @option params [Boolean] :deletion_protection
389
421
  # The flag that prevents a ledger from being deleted by any user. If not
@@ -391,10 +423,53 @@ module Aws::QLDB
391
423
  # default.
392
424
  #
393
425
  # If deletion protection is enabled, you must first disable it before
394
- # you can delete the ledger using the QLDB API or the AWS Command Line
395
- # Interface (AWS CLI). You can disable it by calling the `UpdateLedger`
396
- # operation to set the flag to `false`. The QLDB console disables
397
- # deletion protection for you when you use it to delete a ledger.
426
+ # you can delete the ledger. You can disable it by calling the
427
+ # `UpdateLedger` operation to set the flag to `false`.
428
+ #
429
+ # @option params [String] :kms_key
430
+ # The key in Key Management Service (KMS) to use for encryption of data
431
+ # at rest in the ledger. For more information, see [Encryption at
432
+ # rest][1] in the *Amazon QLDB Developer Guide*.
433
+ #
434
+ # Use one of the following options to specify this parameter:
435
+ #
436
+ # * `AWS_OWNED_KMS_KEY`\: Use an KMS key that is owned and managed by
437
+ # Amazon Web Services on your behalf.
438
+ #
439
+ # * **Undefined**\: By default, use an Amazon Web Services owned KMS
440
+ # key.
441
+ #
442
+ # * **A valid symmetric customer managed KMS key**\: Use the specified
443
+ # KMS key in your account that you create, own, and manage.
444
+ #
445
+ # Amazon QLDB does not support asymmetric keys. For more information,
446
+ # see [Using symmetric and asymmetric keys][2] in the *Key Management
447
+ # Service Developer Guide*.
448
+ #
449
+ # To specify a customer managed KMS key, you can use its key ID, Amazon
450
+ # Resource Name (ARN), alias name, or alias ARN. When using an alias
451
+ # name, prefix it with `"alias/"`. To specify a key in a different
452
+ # account, you must use the key ARN or alias ARN.
453
+ #
454
+ # For example:
455
+ #
456
+ # * Key ID: `1234abcd-12ab-34cd-56ef-1234567890ab`
457
+ #
458
+ # * Key ARN:
459
+ # `arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`
460
+ #
461
+ # * Alias name: `alias/ExampleAlias`
462
+ #
463
+ # * Alias ARN: `arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias`
464
+ #
465
+ # For more information, see [Key identifiers (KeyId)][3] in the *Key
466
+ # Management Service Developer Guide*.
467
+ #
468
+ #
469
+ #
470
+ # [1]: https://docs.aws.amazon.com/qldb/latest/developerguide/encryption-at-rest.html
471
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
472
+ # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id
398
473
  #
399
474
  # @return [Types::CreateLedgerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
400
475
  #
@@ -402,7 +477,9 @@ module Aws::QLDB
402
477
  # * {Types::CreateLedgerResponse#arn #arn} => String
403
478
  # * {Types::CreateLedgerResponse#state #state} => String
404
479
  # * {Types::CreateLedgerResponse#creation_date_time #creation_date_time} => Time
480
+ # * {Types::CreateLedgerResponse#permissions_mode #permissions_mode} => String
405
481
  # * {Types::CreateLedgerResponse#deletion_protection #deletion_protection} => Boolean
482
+ # * {Types::CreateLedgerResponse#kms_key_arn #kms_key_arn} => String
406
483
  #
407
484
  # @example Request syntax with placeholder values
408
485
  #
@@ -411,8 +488,9 @@ module Aws::QLDB
411
488
  # tags: {
412
489
  # "TagKey" => "TagValue",
413
490
  # },
414
- # permissions_mode: "ALLOW_ALL", # required, accepts ALLOW_ALL
491
+ # permissions_mode: "ALLOW_ALL", # required, accepts ALLOW_ALL, STANDARD
415
492
  # deletion_protection: false,
493
+ # kms_key: "KmsKey",
416
494
  # })
417
495
  #
418
496
  # @example Response structure
@@ -421,7 +499,9 @@ module Aws::QLDB
421
499
  # resp.arn #=> String
422
500
  # resp.state #=> String, one of "CREATING", "ACTIVE", "DELETING", "DELETED"
423
501
  # resp.creation_date_time #=> Time
502
+ # resp.permissions_mode #=> String, one of "ALLOW_ALL", "STANDARD"
424
503
  # resp.deletion_protection #=> Boolean
504
+ # resp.kms_key_arn #=> String
425
505
  #
426
506
  # @see http://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/CreateLedger AWS API Documentation
427
507
  #
@@ -435,10 +515,8 @@ module Aws::QLDB
435
515
  # Deletes a ledger and all of its contents. This action is irreversible.
436
516
  #
437
517
  # If deletion protection is enabled, you must first disable it before
438
- # you can delete the ledger using the QLDB API or the AWS Command Line
439
- # Interface (AWS CLI). You can disable it by calling the `UpdateLedger`
440
- # operation to set the flag to `false`. The QLDB console disables
441
- # deletion protection for you when you use it to delete a ledger.
518
+ # you can delete the ledger. You can disable it by calling the
519
+ # `UpdateLedger` operation to set the flag to `false`.
442
520
  #
443
521
  # @option params [required, String] :name
444
522
  # The name of the ledger that you want to delete.
@@ -462,14 +540,23 @@ module Aws::QLDB
462
540
 
463
541
  # Returns detailed information about a given Amazon QLDB journal stream.
464
542
  # The output includes the Amazon Resource Name (ARN), stream name,
465
- # current status, creation time, and the parameters of your original
543
+ # current status, creation time, and the parameters of the original
466
544
  # stream creation request.
467
545
  #
546
+ # This action does not return any expired journal streams. For more
547
+ # information, see [Expiration for terminal streams][1] in the *Amazon
548
+ # QLDB Developer Guide*.
549
+ #
550
+ #
551
+ #
552
+ # [1]: https://docs.aws.amazon.com/qldb/latest/developerguide/streams.create.html#streams.create.states.expiration
553
+ #
468
554
  # @option params [required, String] :ledger_name
469
555
  # The name of the ledger.
470
556
  #
471
557
  # @option params [required, String] :stream_id
472
- # The unique ID that QLDB assigns to each QLDB journal stream.
558
+ # The UUID (represented in Base62-encoded text) of the QLDB journal
559
+ # stream to describe.
473
560
  #
474
561
  # @return [Types::DescribeJournalKinesisStreamResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
475
562
  #
@@ -507,11 +594,11 @@ module Aws::QLDB
507
594
  end
508
595
 
509
596
  # Returns information about a journal export job, including the ledger
510
- # name, export ID, when it was created, current status, and its start
511
- # and end time export parameters.
597
+ # name, export ID, creation time, current status, and the parameters of
598
+ # the original export creation request.
512
599
  #
513
600
  # This action does not return any expired export jobs. For more
514
- # information, see [Export Job Expiration][1] in the *Amazon QLDB
601
+ # information, see [Export job expiration][1] in the *Amazon QLDB
515
602
  # Developer Guide*.
516
603
  #
517
604
  # If the export job with the given `ExportId` doesn't exist, then
@@ -528,7 +615,8 @@ module Aws::QLDB
528
615
  # The name of the ledger.
529
616
  #
530
617
  # @option params [required, String] :export_id
531
- # The unique ID of the journal export job that you want to describe.
618
+ # The UUID (represented in Base62-encoded text) of the journal export
619
+ # job to describe.
532
620
  #
533
621
  # @return [Types::DescribeJournalS3ExportResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
534
622
  #
@@ -564,8 +652,8 @@ module Aws::QLDB
564
652
  req.send_request(options)
565
653
  end
566
654
 
567
- # Returns information about a ledger, including its state and when it
568
- # was created.
655
+ # Returns information about a ledger, including its state, permissions
656
+ # mode, encryption at rest settings, and when it was created.
569
657
  #
570
658
  # @option params [required, String] :name
571
659
  # The name of the ledger that you want to describe.
@@ -576,7 +664,9 @@ module Aws::QLDB
576
664
  # * {Types::DescribeLedgerResponse#arn #arn} => String
577
665
  # * {Types::DescribeLedgerResponse#state #state} => String
578
666
  # * {Types::DescribeLedgerResponse#creation_date_time #creation_date_time} => Time
667
+ # * {Types::DescribeLedgerResponse#permissions_mode #permissions_mode} => String
579
668
  # * {Types::DescribeLedgerResponse#deletion_protection #deletion_protection} => Boolean
669
+ # * {Types::DescribeLedgerResponse#encryption_description #encryption_description} => Types::LedgerEncryptionDescription
580
670
  #
581
671
  # @example Request syntax with placeholder values
582
672
  #
@@ -590,7 +680,11 @@ module Aws::QLDB
590
680
  # resp.arn #=> String
591
681
  # resp.state #=> String, one of "CREATING", "ACTIVE", "DELETING", "DELETED"
592
682
  # resp.creation_date_time #=> Time
683
+ # resp.permissions_mode #=> String, one of "ALLOW_ALL", "STANDARD"
593
684
  # resp.deletion_protection #=> Boolean
685
+ # resp.encryption_description.kms_key_arn #=> String
686
+ # resp.encryption_description.encryption_status #=> String, one of "ENABLED", "UPDATING", "KMS_KEY_INACCESSIBLE"
687
+ # resp.encryption_description.inaccessible_kms_key_date_time #=> Time
594
688
  #
595
689
  # @see http://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/DescribeLedger AWS API Documentation
596
690
  #
@@ -619,12 +713,12 @@ module Aws::QLDB
619
713
  # The name of the ledger.
620
714
  #
621
715
  # @option params [required, Time,DateTime,Date,Integer,String] :inclusive_start_time
622
- # The inclusive start date and time for the range of journal contents
623
- # that you want to export.
716
+ # The inclusive start date and time for the range of journal contents to
717
+ # export.
624
718
  #
625
719
  # The `InclusiveStartTime` must be in `ISO 8601` date and time format
626
720
  # and in Universal Coordinated Time (UTC). For example:
627
- # `2019-06-13T21:36:34Z`
721
+ # `2019-06-13T21:36:34Z`.
628
722
  #
629
723
  # The `InclusiveStartTime` must be before `ExclusiveEndTime`.
630
724
  #
@@ -633,12 +727,12 @@ module Aws::QLDB
633
727
  # `CreationDateTime`.
634
728
  #
635
729
  # @option params [required, Time,DateTime,Date,Integer,String] :exclusive_end_time
636
- # The exclusive end date and time for the range of journal contents that
637
- # you want to export.
730
+ # The exclusive end date and time for the range of journal contents to
731
+ # export.
638
732
  #
639
733
  # The `ExclusiveEndTime` must be in `ISO 8601` date and time format and
640
734
  # in Universal Coordinated Time (UTC). For example:
641
- # `2019-06-13T21:36:34Z`
735
+ # `2019-06-13T21:36:34Z`.
642
736
  #
643
737
  # The `ExclusiveEndTime` must be less than or equal to the current UTC
644
738
  # date and time.
@@ -654,8 +748,8 @@ module Aws::QLDB
654
748
  # * Write objects into your Amazon Simple Storage Service (Amazon S3)
655
749
  # bucket.
656
750
  #
657
- # * (Optional) Use your customer master key (CMK) in AWS Key Management
658
- # Service (AWS KMS) for server-side encryption of your exported data.
751
+ # * (Optional) Use your customer master key (CMK) in Key Management
752
+ # Service (KMS) for server-side encryption of your exported data.
659
753
  #
660
754
  # @return [Types::ExportJournalToS3Response] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
661
755
  #
@@ -718,14 +812,14 @@ module Aws::QLDB
718
812
  # The location of the block that you want to request. An address is an
719
813
  # Amazon Ion structure that has two fields: `strandId` and `sequenceNo`.
720
814
  #
721
- # For example: `\{strandId:"BlFTjlSXze9BIh1KOszcE3",sequenceNo:14\}`
815
+ # For example: `\{strandId:"BlFTjlSXze9BIh1KOszcE3",sequenceNo:14\}`.
722
816
  #
723
817
  # @option params [Types::ValueHolder] :digest_tip_address
724
818
  # The latest block location covered by the digest for which to request a
725
819
  # proof. An address is an Amazon Ion structure that has two fields:
726
820
  # `strandId` and `sequenceNo`.
727
821
  #
728
- # For example: `\{strandId:"BlFTjlSXze9BIh1KOszcE3",sequenceNo:49\}`
822
+ # For example: `\{strandId:"BlFTjlSXze9BIh1KOszcE3",sequenceNo:49\}`.
729
823
  #
730
824
  # @return [Types::GetBlockResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
731
825
  #
@@ -802,17 +896,18 @@ module Aws::QLDB
802
896
  # is an Amazon Ion structure that has two fields: `strandId` and
803
897
  # `sequenceNo`.
804
898
  #
805
- # For example: `\{strandId:"BlFTjlSXze9BIh1KOszcE3",sequenceNo:14\}`
899
+ # For example: `\{strandId:"BlFTjlSXze9BIh1KOszcE3",sequenceNo:14\}`.
806
900
  #
807
901
  # @option params [required, String] :document_id
808
- # The unique ID of the document to be verified.
902
+ # The UUID (represented in Base62-encoded text) of the document to be
903
+ # verified.
809
904
  #
810
905
  # @option params [Types::ValueHolder] :digest_tip_address
811
906
  # The latest block location covered by the digest for which to request a
812
907
  # proof. An address is an Amazon Ion structure that has two fields:
813
908
  # `strandId` and `sequenceNo`.
814
909
  #
815
- # For example: `\{strandId:"BlFTjlSXze9BIh1KOszcE3",sequenceNo:49\}`
910
+ # For example: `\{strandId:"BlFTjlSXze9BIh1KOszcE3",sequenceNo:49\}`.
816
911
  #
817
912
  # @return [Types::GetRevisionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
818
913
  #
@@ -850,10 +945,18 @@ module Aws::QLDB
850
945
  # given ledger. The output of each stream descriptor includes the same
851
946
  # details that are returned by `DescribeJournalKinesisStream`.
852
947
  #
948
+ # This action does not return any expired journal streams. For more
949
+ # information, see [Expiration for terminal streams][1] in the *Amazon
950
+ # QLDB Developer Guide*.
951
+ #
853
952
  # This action returns a maximum of `MaxResults` items. It is paginated
854
953
  # so that you can retrieve all the items by calling
855
954
  # `ListJournalKinesisStreamsForLedger` multiple times.
856
955
  #
956
+ #
957
+ #
958
+ # [1]: https://docs.aws.amazon.com/qldb/latest/developerguide/streams.create.html#streams.create.states.expiration
959
+ #
857
960
  # @option params [required, String] :ledger_name
858
961
  # The name of the ledger.
859
962
  #
@@ -910,14 +1013,14 @@ module Aws::QLDB
910
1013
  end
911
1014
 
912
1015
  # Returns an array of journal export job descriptions for all ledgers
913
- # that are associated with the current AWS account and Region.
1016
+ # that are associated with the current account and Region.
914
1017
  #
915
1018
  # This action returns a maximum of `MaxResults` items, and is paginated
916
1019
  # so that you can retrieve all the items by calling
917
1020
  # `ListJournalS3Exports` multiple times.
918
1021
  #
919
1022
  # This action does not return any expired export jobs. For more
920
- # information, see [Export Job Expiration][1] in the *Amazon QLDB
1023
+ # information, see [Export job expiration][1] in the *Amazon QLDB
921
1024
  # Developer Guide*.
922
1025
  #
923
1026
  #
@@ -982,7 +1085,7 @@ module Aws::QLDB
982
1085
  # `ListJournalS3ExportsForLedger` multiple times.
983
1086
  #
984
1087
  # This action does not return any expired export jobs. For more
985
- # information, see [Export Job Expiration][1] in the *Amazon QLDB
1088
+ # information, see [Export job expiration][1] in the *Amazon QLDB
986
1089
  # Developer Guide*.
987
1090
  #
988
1091
  #
@@ -1044,7 +1147,7 @@ module Aws::QLDB
1044
1147
  end
1045
1148
 
1046
1149
  # Returns an array of ledger summaries that are associated with the
1047
- # current AWS account and Region.
1150
+ # current account and Region.
1048
1151
  #
1049
1152
  # This action returns a maximum of 100 items and is paginated so that
1050
1153
  # you can retrieve all the items by calling `ListLedgers` multiple
@@ -1094,8 +1197,8 @@ module Aws::QLDB
1094
1197
  # Returns all tags for a specified Amazon QLDB resource.
1095
1198
  #
1096
1199
  # @option params [required, String] :resource_arn
1097
- # The Amazon Resource Name (ARN) for which you want to list the tags.
1098
- # For example:
1200
+ # The Amazon Resource Name (ARN) for which to list the tags. For
1201
+ # example:
1099
1202
  #
1100
1203
  # `arn:aws:qldb:us-east-1:123456789012:ledger/exampleLedger`
1101
1204
  #
@@ -1145,7 +1248,7 @@ module Aws::QLDB
1145
1248
  # The inclusive start date and time from which to start streaming
1146
1249
  # journal data. This parameter must be in `ISO 8601` date and time
1147
1250
  # format and in Universal Coordinated Time (UTC). For example:
1148
- # `2019-06-13T21:36:34Z`
1251
+ # `2019-06-13T21:36:34Z`.
1149
1252
  #
1150
1253
  # The `InclusiveStartTime` cannot be in the future and must be before
1151
1254
  # `ExclusiveEndTime`.
@@ -1161,7 +1264,7 @@ module Aws::QLDB
1161
1264
  #
1162
1265
  # The `ExclusiveEndTime` must be in `ISO 8601` date and time format and
1163
1266
  # in Universal Coordinated Time (UTC). For example:
1164
- # `2019-06-13T21:36:34Z`
1267
+ # `2019-06-13T21:36:34Z`.
1165
1268
  #
1166
1269
  # @option params [required, Types::KinesisConfiguration] :kinesis_configuration
1167
1270
  # The configuration settings of the Kinesis Data Streams destination for
@@ -1256,13 +1359,13 @@ module Aws::QLDB
1256
1359
  # can specify up to 50 tag keys to remove.
1257
1360
  #
1258
1361
  # @option params [required, String] :resource_arn
1259
- # The Amazon Resource Name (ARN) from which you want to remove the tags.
1260
- # For example:
1362
+ # The Amazon Resource Name (ARN) from which to remove the tags. For
1363
+ # example:
1261
1364
  #
1262
1365
  # `arn:aws:qldb:us-east-1:123456789012:ledger/exampleLedger`
1263
1366
  #
1264
1367
  # @option params [required, Array<String>] :tag_keys
1265
- # The list of tag keys that you want to remove.
1368
+ # The list of tag keys to remove.
1266
1369
  #
1267
1370
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1268
1371
  #
@@ -1293,10 +1396,52 @@ module Aws::QLDB
1293
1396
  # default.
1294
1397
  #
1295
1398
  # If deletion protection is enabled, you must first disable it before
1296
- # you can delete the ledger using the QLDB API or the AWS Command Line
1297
- # Interface (AWS CLI). You can disable it by calling the `UpdateLedger`
1298
- # operation to set the flag to `false`. The QLDB console disables
1299
- # deletion protection for you when you use it to delete a ledger.
1399
+ # you can delete the ledger. You can disable it by calling the
1400
+ # `UpdateLedger` operation to set the flag to `false`.
1401
+ #
1402
+ # @option params [String] :kms_key
1403
+ # The key in Key Management Service (KMS) to use for encryption of data
1404
+ # at rest in the ledger. For more information, see [Encryption at
1405
+ # rest][1] in the *Amazon QLDB Developer Guide*.
1406
+ #
1407
+ # Use one of the following options to specify this parameter:
1408
+ #
1409
+ # * `AWS_OWNED_KMS_KEY`\: Use an KMS key that is owned and managed by
1410
+ # Amazon Web Services on your behalf.
1411
+ #
1412
+ # * **Undefined**\: Make no changes to the KMS key of the ledger.
1413
+ #
1414
+ # * **A valid symmetric customer managed KMS key**\: Use the specified
1415
+ # KMS key in your account that you create, own, and manage.
1416
+ #
1417
+ # Amazon QLDB does not support asymmetric keys. For more information,
1418
+ # see [Using symmetric and asymmetric keys][2] in the *Key Management
1419
+ # Service Developer Guide*.
1420
+ #
1421
+ # To specify a customer managed KMS key, you can use its key ID, Amazon
1422
+ # Resource Name (ARN), alias name, or alias ARN. When using an alias
1423
+ # name, prefix it with `"alias/"`. To specify a key in a different
1424
+ # account, you must use the key ARN or alias ARN.
1425
+ #
1426
+ # For example:
1427
+ #
1428
+ # * Key ID: `1234abcd-12ab-34cd-56ef-1234567890ab`
1429
+ #
1430
+ # * Key ARN:
1431
+ # `arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`
1432
+ #
1433
+ # * Alias name: `alias/ExampleAlias`
1434
+ #
1435
+ # * Alias ARN: `arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias`
1436
+ #
1437
+ # For more information, see [Key identifiers (KeyId)][3] in the *Key
1438
+ # Management Service Developer Guide*.
1439
+ #
1440
+ #
1441
+ #
1442
+ # [1]: https://docs.aws.amazon.com/qldb/latest/developerguide/encryption-at-rest.html
1443
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
1444
+ # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id
1300
1445
  #
1301
1446
  # @return [Types::UpdateLedgerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1302
1447
  #
@@ -1305,12 +1450,14 @@ module Aws::QLDB
1305
1450
  # * {Types::UpdateLedgerResponse#state #state} => String
1306
1451
  # * {Types::UpdateLedgerResponse#creation_date_time #creation_date_time} => Time
1307
1452
  # * {Types::UpdateLedgerResponse#deletion_protection #deletion_protection} => Boolean
1453
+ # * {Types::UpdateLedgerResponse#encryption_description #encryption_description} => Types::LedgerEncryptionDescription
1308
1454
  #
1309
1455
  # @example Request syntax with placeholder values
1310
1456
  #
1311
1457
  # resp = client.update_ledger({
1312
1458
  # name: "LedgerName", # required
1313
1459
  # deletion_protection: false,
1460
+ # kms_key: "KmsKey",
1314
1461
  # })
1315
1462
  #
1316
1463
  # @example Response structure
@@ -1320,6 +1467,9 @@ module Aws::QLDB
1320
1467
  # resp.state #=> String, one of "CREATING", "ACTIVE", "DELETING", "DELETED"
1321
1468
  # resp.creation_date_time #=> Time
1322
1469
  # resp.deletion_protection #=> Boolean
1470
+ # resp.encryption_description.kms_key_arn #=> String
1471
+ # resp.encryption_description.encryption_status #=> String, one of "ENABLED", "UPDATING", "KMS_KEY_INACCESSIBLE"
1472
+ # resp.encryption_description.inaccessible_kms_key_date_time #=> Time
1323
1473
  #
1324
1474
  # @see http://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/UpdateLedger AWS API Documentation
1325
1475
  #
@@ -1330,6 +1480,82 @@ module Aws::QLDB
1330
1480
  req.send_request(options)
1331
1481
  end
1332
1482
 
1483
+ # Updates the permissions mode of a ledger.
1484
+ #
1485
+ # Before you switch to the `STANDARD` permissions mode, you must first
1486
+ # create all required IAM policies and table tags to avoid disruption to
1487
+ # your users. To learn more, see [Migrating to the standard permissions
1488
+ # mode][1] in the *Amazon QLDB Developer Guide*.
1489
+ #
1490
+ #
1491
+ #
1492
+ # [1]: https://docs.aws.amazon.com/qldb/latest/developerguide/ledger-management.basics.html#ledger-mgmt.basics.update-permissions.migrating
1493
+ #
1494
+ # @option params [required, String] :name
1495
+ # The name of the ledger.
1496
+ #
1497
+ # @option params [required, String] :permissions_mode
1498
+ # The permissions mode to assign to the ledger. This parameter can have
1499
+ # one of the following values:
1500
+ #
1501
+ # * `ALLOW_ALL`\: A legacy permissions mode that enables access control
1502
+ # with API-level granularity for ledgers.
1503
+ #
1504
+ # This mode allows users who have the `SendCommand` API permission for
1505
+ # this ledger to run all PartiQL commands (hence, `ALLOW_ALL`) on any
1506
+ # tables in the specified ledger. This mode disregards any table-level
1507
+ # or command-level IAM permissions policies that you create for the
1508
+ # ledger.
1509
+ #
1510
+ # * `STANDARD`\: (*Recommended*) A permissions mode that enables access
1511
+ # control with finer granularity for ledgers, tables, and PartiQL
1512
+ # commands.
1513
+ #
1514
+ # By default, this mode denies all user requests to run any PartiQL
1515
+ # commands on any tables in this ledger. To allow PartiQL commands to
1516
+ # run, you must create IAM permissions policies for specific table
1517
+ # resources and PartiQL actions, in addition to the `SendCommand` API
1518
+ # permission for the ledger. For information, see [Getting started
1519
+ # with the standard permissions mode][1] in the *Amazon QLDB Developer
1520
+ # Guide*.
1521
+ #
1522
+ # <note markdown="1"> We strongly recommend using the `STANDARD` permissions mode to
1523
+ # maximize the security of your ledger data.
1524
+ #
1525
+ # </note>
1526
+ #
1527
+ #
1528
+ #
1529
+ # [1]: https://docs.aws.amazon.com/qldb/latest/developerguide/getting-started-standard-mode.html
1530
+ #
1531
+ # @return [Types::UpdateLedgerPermissionsModeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1532
+ #
1533
+ # * {Types::UpdateLedgerPermissionsModeResponse#name #name} => String
1534
+ # * {Types::UpdateLedgerPermissionsModeResponse#arn #arn} => String
1535
+ # * {Types::UpdateLedgerPermissionsModeResponse#permissions_mode #permissions_mode} => String
1536
+ #
1537
+ # @example Request syntax with placeholder values
1538
+ #
1539
+ # resp = client.update_ledger_permissions_mode({
1540
+ # name: "LedgerName", # required
1541
+ # permissions_mode: "ALLOW_ALL", # required, accepts ALLOW_ALL, STANDARD
1542
+ # })
1543
+ #
1544
+ # @example Response structure
1545
+ #
1546
+ # resp.name #=> String
1547
+ # resp.arn #=> String
1548
+ # resp.permissions_mode #=> String, one of "ALLOW_ALL", "STANDARD"
1549
+ #
1550
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/UpdateLedgerPermissionsMode AWS API Documentation
1551
+ #
1552
+ # @overload update_ledger_permissions_mode(params = {})
1553
+ # @param [Hash] params ({})
1554
+ def update_ledger_permissions_mode(params = {}, options = {})
1555
+ req = build_request(:update_ledger_permissions_mode, params)
1556
+ req.send_request(options)
1557
+ end
1558
+
1333
1559
  # @!endgroup
1334
1560
 
1335
1561
  # @param params ({})
@@ -1343,7 +1569,7 @@ module Aws::QLDB
1343
1569
  params: params,
1344
1570
  config: config)
1345
1571
  context[:gem_name] = 'aws-sdk-qldb'
1346
- context[:gem_version] = '1.13.0'
1572
+ context[:gem_version] = '1.17.0'
1347
1573
  Seahorse::Client::Request.new(handlers, context)
1348
1574
  end
1349
1575