aws-sdk-kms 1.17.0 → 1.19.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
  SHA1:
3
- metadata.gz: fc41b4832991c95efd49cf2283689e5b29578b2f
4
- data.tar.gz: ac62ac9bf8a9c1e42c1b32d201d1acd5308b9974
3
+ metadata.gz: 6d7886a2d0907579064ff4c772c981550ffed638
4
+ data.tar.gz: fe97d1ae078352eb41aaf173ae92d60f31ef3bf3
5
5
  SHA512:
6
- metadata.gz: 9f03c2d36659109e5e6a54c6ba4e0f307b5f320710fc9f28174233a63246efa23b2a499163907244105b88ea5d35ca06d472b1d80e47ef8798ca44cd4b94214f
7
- data.tar.gz: d49f15f7fd0832ff31e909db250e8337aa91f0ca671fc2553fb34ac410f04d310cb5c23c467076e402bfef8a1a863b38244151579678e1c683ec13df531fc88f
6
+ metadata.gz: 7438ac50bd95051232cd3dcbf6aadfa16c32a2d74bbcb98f09deb31d414833be82c530b91f207e9c5f7474c930c7babfe94d9a2823512461f1b6baf6c549a1ef
7
+ data.tar.gz: 48c118cdd2cc5fe290a90541a73ff57df94c1ee9ee2e546a91c0177dd273fff22826f6029cdc53f026c68e220963a2cf0b5887a25e576fe40c3a12f0acd48faf
@@ -42,6 +42,6 @@ require_relative 'aws-sdk-kms/customizations'
42
42
  # @service
43
43
  module Aws::KMS
44
44
 
45
- GEM_VERSION = '1.17.0'
45
+ GEM_VERSION = '1.19.0'
46
46
 
47
47
  end
@@ -23,6 +23,7 @@ require 'aws-sdk-core/plugins/idempotency_token.rb'
23
23
  require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
24
24
  require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
25
25
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
26
+ require 'aws-sdk-core/plugins/transfer_encoding.rb'
26
27
  require 'aws-sdk-core/plugins/signature_v4.rb'
27
28
  require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
28
29
 
@@ -55,6 +56,7 @@ module Aws::KMS
55
56
  add_plugin(Aws::Plugins::JsonvalueConverter)
56
57
  add_plugin(Aws::Plugins::ClientMetricsPlugin)
57
58
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
59
+ add_plugin(Aws::Plugins::TransferEncoding)
58
60
  add_plugin(Aws::Plugins::SignatureV4)
59
61
  add_plugin(Aws::Plugins::Protocols::JsonRpc)
60
62
 
@@ -273,8 +275,8 @@ module Aws::KMS
273
275
  #
274
276
  #
275
277
  #
276
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/deleting-keys.html
277
- # [2]: http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
278
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/deleting-keys.html
279
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
278
280
  #
279
281
  # @option params [required, String] :key_id
280
282
  # The unique identifier for the customer master key (CMK) for which to
@@ -370,11 +372,11 @@ module Aws::KMS
370
372
  #
371
373
  #
372
374
  #
373
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-store-overview.html
374
- # [2]: http://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters
375
- # [3]: http://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_CreateHsm
376
- # [4]: http://docs.aws.amazon.com/kms/latest/developerguide/key-store-concepts.html#concept-kmsuser
377
- # [5]: http://docs.aws.amazon.com/kms/latest/developerguide/fix-keystore.html
375
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
376
+ # [2]: https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html
377
+ # [3]: https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_CreateHsm.html
378
+ # [4]: https://docs.aws.amazon.com/kms/latest/developerguide/key-store-concepts.html#concept-kmsuser
379
+ # [5]: https://docs.aws.amazon.com/kms/latest/developerguide/fix-keystore.html
378
380
  #
379
381
  # @option params [required, String] :custom_key_store_id
380
382
  # Enter the key store ID of the custom key store that you want to
@@ -398,9 +400,9 @@ module Aws::KMS
398
400
  req.send_request(options)
399
401
  end
400
402
 
401
- # Creates a display name for a customer master key (CMK). You can use an
402
- # alias to identify a CMK in selected operations, such as Encrypt and
403
- # GenerateDataKey.
403
+ # Creates a display name for a customer managed customer master key
404
+ # (CMK). You can use an alias to identify a CMK in selected operations,
405
+ # such as Encrypt and GenerateDataKey.
404
406
  #
405
407
  # Each CMK can have multiple aliases, but each alias points to only one
406
408
  # CMK. The alias name must be unique in the AWS account and region. To
@@ -412,11 +414,11 @@ module Aws::KMS
412
414
  # appear in the response from the DescribeKey operation. To get the
413
415
  # aliases of all CMKs, use the ListAliases operation.
414
416
  #
415
- # An alias must start with the word `alias` followed by a forward slash
416
- # (`alias/`). The alias name can contain only alphanumeric characters,
417
- # forward slashes (/), underscores (\_), and dashes (-). Alias names
418
- # cannot begin with `aws`; that alias name prefix is reserved by Amazon
419
- # Web Services (AWS).
417
+ # The alias name must begin with `alias/` followed by a name, such as
418
+ # `alias/ExampleAlias`. It can contain only alphanumeric characters,
419
+ # forward slashes (/), underscores (\_), and dashes (-). The alias name
420
+ # cannot begin with `alias/aws/`. The `alias/aws/` prefix is reserved
421
+ # for [AWS managed CMKs][1].
420
422
  #
421
423
  # The alias and the CMK it is mapped to must be in the same AWS account
422
424
  # and the same region. You cannot perform this operation on an alias in
@@ -425,32 +427,29 @@ module Aws::KMS
425
427
  # To map an existing alias to a different CMK, call UpdateAlias.
426
428
  #
427
429
  # The result of this operation varies with the key state of the CMK. For
428
- # details, see [How Key State Affects Use of a Customer Master Key][1]
430
+ # details, see [How Key State Affects Use of a Customer Master Key][2]
429
431
  # in the *AWS Key Management Service Developer Guide*.
430
432
  #
431
433
  #
432
434
  #
433
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
435
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk
436
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
434
437
  #
435
438
  # @option params [required, String] :alias_name
436
- # String that contains the display name. The name must start with the
437
- # word "alias" followed by a forward slash (alias/). Aliases that
438
- # begin with "alias/AWS" are reserved.
439
+ # Specifies the alias name. This value must begin with `alias/` followed
440
+ # by a name, such as `alias/ExampleAlias`. The alias name cannot begin
441
+ # with `alias/aws/`. The `alias/aws/` prefix is reserved for AWS managed
442
+ # CMKs.
439
443
  #
440
444
  # @option params [required, String] :target_key_id
441
- # Identifies the CMK for which you are creating the alias. This value
442
- # cannot be an alias.
445
+ # Identifies the CMK to which the alias refers. Specify the key ID or
446
+ # the Amazon Resource Name (ARN) of the CMK. You cannot specify another
447
+ # alias. For help finding the key ID and ARN, see [Finding the Key ID
448
+ # and ARN][1] in the *AWS Key Management Service Developer Guide*.
443
449
  #
444
- # Specify the key ID or the Amazon Resource Name (ARN) of the CMK.
445
450
  #
446
- # For example:
447
451
  #
448
- # * Key ID: `1234abcd-12ab-34cd-56ef-1234567890ab`
449
- #
450
- # * Key ARN:
451
- # `arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`
452
- #
453
- # To get the key ID and key ARN for a CMK, use ListKeys or DescribeKey.
452
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/viewing-keys.html#find-cmk-id-arn
454
453
  #
455
454
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
456
455
  #
@@ -483,82 +482,33 @@ module Aws::KMS
483
482
  # Creates a [custom key store][1] that is associated with an [AWS
484
483
  # CloudHSM cluster][2] that you own and manage.
485
484
  #
486
- # This operation is part of the [Custom Key Store feature][3] feature in
485
+ # This operation is part of the [Custom Key Store feature][1] feature in
487
486
  # AWS KMS, which combines the convenience and extensive integration of
488
487
  # AWS KMS with the isolation and control of a single-tenant key store.
489
488
  #
489
+ # Before you create the custom key store, you must assemble the required
490
+ # elements, including an AWS CloudHSM cluster that fulfills the
491
+ # requirements for a custom key store. For details about the required
492
+ # elements, see [Assemble the Prerequisites][3] in the *AWS Key
493
+ # Management Service Developer Guide*.
494
+ #
490
495
  # When the operation completes successfully, it returns the ID of the
491
496
  # new custom key store. Before you can use your new custom key store,
492
497
  # you need to use the ConnectCustomKeyStore operation to connect the new
493
- # key store to its AWS CloudHSM cluster.
494
- #
495
- # The `CreateCustomKeyStore` operation requires the following elements.
496
- #
497
- # * You must specify an active AWS CloudHSM cluster in the same account
498
- # and AWS Region as the custom key store. You can use an existing
499
- # cluster or [create and activate a new AWS CloudHSM cluster][4] for
500
- # the key store. AWS KMS does not require exclusive use of the
501
- # cluster.
502
- #
503
- # * You must include the content of the *trust anchor certificate* for
504
- # the cluster. You created this certificate, and saved it in the
505
- # `customerCA.crt` file, when you [initialized the cluster][5].
506
- #
507
- # * You must provide the password of the dedicated [ `kmsuser` crypto
508
- # user][6] (CU) account in the cluster.
509
- #
510
- # Before you create the custom key store, use the [createUser][7]
511
- # command in `cloudhsm_mgmt_util` to create [a crypto user (CU) named
512
- # `kmsuser` ][6]in specified AWS CloudHSM cluster. AWS KMS uses the
513
- # `kmsuser` CU account to create and manage key material on your
514
- # behalf. For instructions, see [Create the kmsuser Crypto User][8] in
515
- # the *AWS Key Management Service Developer Guide*.
516
- #
517
- # The AWS CloudHSM cluster that you specify must meet the following
518
- # requirements.
519
- #
520
- # * The cluster must be active and be in the same AWS account and Region
521
- # as the custom key store.
522
- #
523
- # * Each custom key store must be associated with a different AWS
524
- # CloudHSM cluster. The cluster cannot be associated with another
525
- # custom key store or have the same cluster certificate as a cluster
526
- # that is associated with another custom key store. To view the
527
- # cluster certificate, use the AWS CloudHSM [DescribeClusters][9]
528
- # operation. Clusters that share a backup history have the same
529
- # cluster certificate.
530
- #
531
- # * The cluster must be configured with subnets in at least two
532
- # different Availability Zones in the Region. Because AWS CloudHSM is
533
- # not supported in all Availability Zones, we recommend that the
534
- # cluster have subnets in all Availability Zones in the Region.
535
- #
536
- # * The cluster must contain at least two active HSMs, each in a
537
- # different Availability Zone.
538
- #
539
- # New custom key stores are not automatically connected. After you
540
- # create your custom key store, use the ConnectCustomKeyStore operation
541
- # to connect the custom key store to its associated AWS CloudHSM
542
- # cluster. Even if you are not going to use your custom key store
543
- # immediately, you might want to connect it to verify that all settings
544
- # are correct and then disconnect it until you are ready to use it.
545
- #
546
- # If this operation succeeds, it returns the ID of the new custom key
547
- # store. For help with failures, see [Troubleshoot a Custom Key
548
- # Store][10] in the *AWS KMS Developer Guide*.
549
- #
550
- #
551
- #
552
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-store-overview.html
553
- # [2]: http://docs.aws.amazon.com/cloudhsm/latest/userguide/clusters.html
554
- # [3]: http://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
555
- # [4]: http://docs.aws.amazon.com/cloudhsm/latest/userguide/create-cluster.html
556
- # [5]: http://docs.aws.amazon.com/cloudhsm/latest/userguide/initialize-cluster.html#sign-csr
557
- # [6]: http://docs.aws.amazon.com/kms/latest/developerguide/key-store-concepts.html#concept-kmsuser
558
- # [7]: http://docs.aws.amazon.com/cloudhsm/latest/userguide/cloudhsm_mgmt_util-createUser.html
559
- # [8]: http://docs.aws.amazon.com/kms/latest/developerguide/create-keystore.html#before-keystore
560
- # [9]: http://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html
561
- # [10]: http://docs.aws.amazon.com/kms/latest/developerguide/fix-keystore.html
498
+ # key store to its AWS CloudHSM cluster. Even if you are not going to
499
+ # use your custom key store immediately, you might want to connect it to
500
+ # verify that all settings are correct and then disconnect it until you
501
+ # are ready to use it.
502
+ #
503
+ # For help with failures, see [Troubleshooting a Custom Key Store][4] in
504
+ # the *AWS Key Management Service Developer Guide*.
505
+ #
506
+ #
507
+ #
508
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
509
+ # [2]: https://docs.aws.amazon.com/cloudhsm/latest/userguide/clusters.html
510
+ # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/create-keystore.html#before-keystore
511
+ # [4]: https://docs.aws.amazon.com/kms/latest/developerguide/fix-keystore.html
562
512
  #
563
513
  # @option params [required, String] :custom_key_store_name
564
514
  # Specifies a friendly name for the custom key store. The name must be
@@ -572,7 +522,7 @@ module Aws::KMS
572
522
  #
573
523
  #
574
524
  #
575
- # [1]: http://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html
525
+ # [1]: https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html
576
526
  #
577
527
  # @option params [required, String] :trust_anchor_certificate
578
528
  # Enter the content of the trust anchor certificate for the cluster.
@@ -581,7 +531,7 @@ module Aws::KMS
581
531
  #
582
532
  #
583
533
  #
584
- # [1]: http://docs.aws.amazon.com/cloudhsm/latest/userguide/initialize-cluster.html
534
+ # [1]: https://docs.aws.amazon.com/cloudhsm/latest/userguide/initialize-cluster.html
585
535
  #
586
536
  # @option params [required, String] :key_store_password
587
537
  # Enter the password of the [ `kmsuser` crypto user (CU) account][1] in
@@ -593,7 +543,7 @@ module Aws::KMS
593
543
  #
594
544
  #
595
545
  #
596
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-store-concepts.html#concept-kmsuser
546
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-store-concepts.html#concept-kmsuser
597
547
  #
598
548
  # @return [Types::CreateCustomKeyStoreResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
599
549
  #
@@ -621,14 +571,20 @@ module Aws::KMS
621
571
  req.send_request(options)
622
572
  end
623
573
 
624
- # Adds a grant to a customer master key (CMK). The grant specifies who
625
- # can use the CMK and under what conditions. When setting permissions,
626
- # grants are an alternative to key policies.
574
+ # Adds a grant to a customer master key (CMK). The grant allows the
575
+ # grantee principal to use the CMK when the conditions specified in the
576
+ # grant are met. When setting permissions, grants are an alternative to
577
+ # key policies.
578
+ #
579
+ # To create a grant that allows a cryptographic operation only when the
580
+ # encryption context in the operation request matches or includes a
581
+ # specified encryption context, use the `Constraints` parameter. For
582
+ # details, see GrantConstraints.
627
583
  #
628
584
  # To perform this operation on a CMK in a different AWS account, specify
629
585
  # the key ARN in the value of the `KeyId` parameter. For more
630
- # information about grants, see [Grants][1] in the *AWS Key Management
631
- # Service Developer Guide*.
586
+ # information about grants, see [Grants][1] in the <i> <i>AWS Key
587
+ # Management Service Developer Guide</i> </i>.
632
588
  #
633
589
  # The result of this operation varies with the key state of the CMK. For
634
590
  # details, see [How Key State Affects Use of a Customer Master Key][2]
@@ -636,8 +592,8 @@ module Aws::KMS
636
592
  #
637
593
  #
638
594
  #
639
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/grants.html
640
- # [2]: http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
595
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/grants.html
596
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
641
597
  #
642
598
  # @option params [required, String] :key_id
643
599
  # The unique identifier for the customer master key (CMK) that the grant
@@ -668,8 +624,8 @@ module Aws::KMS
668
624
  #
669
625
  #
670
626
  #
671
- # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
672
- # [2]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-iam
627
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
628
+ # [2]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-iam
673
629
  #
674
630
  # @option params [String] :retiring_principal
675
631
  # The principal that is given permission to retire the grant by using
@@ -684,21 +640,22 @@ module Aws::KMS
684
640
  #
685
641
  #
686
642
  #
687
- # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
688
- # [2]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-iam
643
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
644
+ # [2]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-iam
689
645
  #
690
646
  # @option params [required, Array<String>] :operations
691
647
  # A list of operations that the grant permits.
692
648
  #
693
649
  # @option params [Types::GrantConstraints] :constraints
694
- # A structure that you can use to allow certain operations in the grant
695
- # only when the desired encryption context is present. For more
696
- # information about encryption context, see [Encryption Context][1] in
697
- # the *AWS Key Management Service Developer Guide*.
650
+ # Allows a cryptographic operation only when the encryption context
651
+ # matches or includes the encryption context specified in this
652
+ # structure. For more information about encryption context, see
653
+ # [Encryption Context][1] in the <i> <i>AWS Key Management Service
654
+ # Developer Guide</i> </i>.
698
655
  #
699
656
  #
700
657
  #
701
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/encryption-context.html
658
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context
702
659
  #
703
660
  # @option params [Array<String>] :grant_tokens
704
661
  # A list of grant tokens.
@@ -708,11 +665,12 @@ module Aws::KMS
708
665
  #
709
666
  #
710
667
  #
711
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#grant_token
668
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#grant_token
712
669
  #
713
670
  # @option params [String] :name
714
671
  # A friendly name for identifying the grant. Use this value to prevent
715
- # unintended creation of duplicate grants when retrying this request.
672
+ # the unintended creation of duplicate grants when retrying this
673
+ # request.
716
674
  #
717
675
  # When this value is absent, all `CreateGrant` requests result in a new
718
676
  # grant with a unique `GrantId` even if all the supplied parameters are
@@ -785,26 +743,21 @@ module Aws::KMS
785
743
  req.send_request(options)
786
744
  end
787
745
 
788
- # Creates a customer master key (CMK) in the caller's AWS account.
789
- #
790
- # You can use a CMK to encrypt small amounts of data (4 KiB or less)
791
- # directly, but CMKs are more commonly used to encrypt data keys, which
792
- # are used to encrypt raw data. For more information about data keys and
793
- # the difference between CMKs and data keys, see the following:
794
- #
795
- # * The GenerateDataKey operation
746
+ # Creates a customer managed [customer master key][1] (CMK) in your AWS
747
+ # account.
796
748
  #
797
- # * [AWS Key Management Service Concepts][1] in the *AWS Key Management
798
- # Service Developer Guide*
749
+ # You can use a CMK to encrypt small amounts of data (up to 4096 bytes)
750
+ # directly. But CMKs are more commonly used to encrypt the [data
751
+ # keys][2] that are used to encrypt data.
799
752
  #
800
- # If you plan to [import key material][2], use the `Origin` parameter
801
- # with a value of `EXTERNAL` to create a CMK with no key material.
753
+ # To create a CMK for imported key material, use the `Origin` parameter
754
+ # with a value of `EXTERNAL`.
802
755
  #
803
- # To create a CMK in a [custom key store][3], use `CustomKeyStoreId`
756
+ # To create a CMK in a [custom key store][3], use the `CustomKeyStoreId`
804
757
  # parameter to specify the custom key store. You must also use the
805
758
  # `Origin` parameter with a value of `AWS_CLOUDHSM`. The AWS CloudHSM
806
759
  # cluster that is associated with the custom key store must have at
807
- # least two active HSMs, each in a different Availability Zone in the
760
+ # least two active HSMs in different Availability Zones in the AWS
808
761
  # Region.
809
762
  #
810
763
  # You cannot use this operation to create a CMK in a different AWS
@@ -812,9 +765,9 @@ module Aws::KMS
812
765
  #
813
766
  #
814
767
  #
815
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html
816
- # [2]: http://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html
817
- # [3]: http://docs.aws.amazon.com/kms/latest/developerguide/key-store-overview.html
768
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#master_keys
769
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-keys
770
+ # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
818
771
  #
819
772
  # @option params [String] :policy
820
773
  # The key policy to attach to the CMK.
@@ -826,7 +779,8 @@ module Aws::KMS
826
779
  # request to make a subsequent PutKeyPolicy request on the CMK. This
827
780
  # reduces the risk that the CMK becomes unmanageable. For more
828
781
  # information, refer to the scenario in the [Default Key Policy][1]
829
- # section of the *AWS Key Management Service Developer Guide*.
782
+ # section of the <i> <i>AWS Key Management Service Developer Guide</i>
783
+ # </i>.
830
784
  #
831
785
  # * Each statement in the key policy must contain one or more
832
786
  # principals. The principals in the key policy must exist and be
@@ -845,9 +799,9 @@ module Aws::KMS
845
799
  #
846
800
  #
847
801
  #
848
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-root-enable-iam
849
- # [2]: http://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_general.html#troubleshoot_general_eventual-consistency
850
- # [3]: http://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default
802
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-root-enable-iam
803
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_general.html#troubleshoot_general_eventual-consistency
804
+ # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default
851
805
  #
852
806
  # @option params [String] :description
853
807
  # A description of the CMK.
@@ -856,13 +810,13 @@ module Aws::KMS
856
810
  # for a task.
857
811
  #
858
812
  # @option params [String] :key_usage
859
- # The intended use of the CMK.
860
- #
861
- # You can use CMKs only for symmetric encryption and decryption.
813
+ # The cryptographic operations for which you can use the CMK. The only
814
+ # valid value is `ENCRYPT_DECRYPT`, which means you can use the CMK to
815
+ # encrypt and decrypt data.
862
816
  #
863
817
  # @option params [String] :origin
864
- # The source of the CMK's key material. You cannot change the origin
865
- # after you create the CMK.
818
+ # The source of the key material for the CMK. You cannot change the
819
+ # origin after you create the CMK.
866
820
  #
867
821
  # The default is `AWS_KMS`, which means AWS KMS creates the key material
868
822
  # in its own key store.
@@ -874,14 +828,14 @@ module Aws::KMS
874
828
  # Key Management Service Developer Guide*.
875
829
  #
876
830
  # When the parameter value is `AWS_CLOUDHSM`, AWS KMS creates the CMK in
877
- # a AWS KMS [custom key store][2] and creates its key material in the
831
+ # an AWS KMS [custom key store][2] and creates its key material in the
878
832
  # associated AWS CloudHSM cluster. You must also use the
879
833
  # `CustomKeyStoreId` parameter to identify the custom key store.
880
834
  #
881
835
  #
882
836
  #
883
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html
884
- # [2]: http://docs.aws.amazon.com/kms/latest/developerguide/key-store-overview.html
837
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html
838
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
885
839
  #
886
840
  # @option params [String] :custom_key_store_id
887
841
  # Creates the CMK in the specified [custom key store][1] and the key
@@ -897,14 +851,13 @@ module Aws::KMS
897
851
  # The response includes the custom key store ID and the ID of the AWS
898
852
  # CloudHSM cluster.
899
853
  #
900
- # This operation is part of the [Custom Key Store feature][2] feature in
854
+ # This operation is part of the [Custom Key Store feature][1] feature in
901
855
  # AWS KMS, which combines the convenience and extensive integration of
902
856
  # AWS KMS with the isolation and control of a single-tenant key store.
903
857
  #
904
858
  #
905
859
  #
906
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-store-overview.html
907
- # [2]: http://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
860
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
908
861
  #
909
862
  # @option params [Boolean] :bypass_policy_lockout_safety_check
910
863
  # A flag to indicate whether to bypass the key policy lockout safety
@@ -914,8 +867,8 @@ module Aws::KMS
914
867
  # unmanageable. Do not set this value to true indiscriminately.
915
868
  #
916
869
  # For more information, refer to the scenario in the [Default Key
917
- # Policy][1] section in the *AWS Key Management Service Developer
918
- # Guide*.
870
+ # Policy][1] section in the <i> <i>AWS Key Management Service Developer
871
+ # Guide</i> </i>.
919
872
  #
920
873
  # Use this parameter only when you include a policy in the request and
921
874
  # you intend to prevent the principal that is making the request from
@@ -925,7 +878,7 @@ module Aws::KMS
925
878
  #
926
879
  #
927
880
  #
928
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-root-enable-iam
881
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-root-enable-iam
929
882
  #
930
883
  # @option params [Array<Types::Tag>] :tags
931
884
  # One or more tags. Each tag consists of a tag key and a tag value. Tag
@@ -1023,15 +976,14 @@ module Aws::KMS
1023
976
  #
1024
977
  # * Encrypt
1025
978
  #
1026
- # Note that if a caller has been granted access permissions to all keys
1027
- # (through, for example, IAM user policies that grant `Decrypt`
1028
- # permission on all resources), then ciphertext encrypted by using keys
1029
- # in other accounts where the key grants access to the caller can be
1030
- # decrypted. To remedy this, we recommend that you do not grant
1031
- # `Decrypt` access in an IAM user policy. Instead grant `Decrypt` access
1032
- # only in key policies. If you must grant `Decrypt` access in an IAM
1033
- # user policy, you should scope the resource to specific keys or to
1034
- # specific trusted accounts.
979
+ # Whenever possible, use key policies to give users permission to call
980
+ # the Decrypt operation on the CMK, instead of IAM policies. Otherwise,
981
+ # you might create an IAM user policy that gives the user Decrypt
982
+ # permission on all CMKs. This user could decrypt ciphertext that was
983
+ # encrypted by CMKs in other accounts if the key policy for the
984
+ # cross-account CMK permits it. If you must use an IAM policy for
985
+ # `Decrypt` permissions, limit the user to particular CMKs or particular
986
+ # trusted accounts.
1035
987
  #
1036
988
  # The result of this operation varies with the key state of the CMK. For
1037
989
  # details, see [How Key State Affects Use of a Customer Master Key][1]
@@ -1039,7 +991,7 @@ module Aws::KMS
1039
991
  #
1040
992
  #
1041
993
  #
1042
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
994
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
1043
995
  #
1044
996
  # @option params [required, String, IO] :ciphertext_blob
1045
997
  # Ciphertext to be decrypted. The blob includes metadata.
@@ -1051,7 +1003,7 @@ module Aws::KMS
1051
1003
  #
1052
1004
  #
1053
1005
  #
1054
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/encryption-context.html
1006
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context
1055
1007
  #
1056
1008
  # @option params [Array<String>] :grant_tokens
1057
1009
  # A list of grant tokens.
@@ -1061,7 +1013,7 @@ module Aws::KMS
1061
1013
  #
1062
1014
  #
1063
1015
  #
1064
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#grant_token
1016
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#grant_token
1065
1017
  #
1066
1018
  # @return [Types::DecryptResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1067
1019
  #
@@ -1121,9 +1073,8 @@ module Aws::KMS
1121
1073
  # master key (CMK), call UpdateAlias.
1122
1074
  #
1123
1075
  # @option params [required, String] :alias_name
1124
- # The alias to be deleted. The name must start with the word "alias"
1125
- # followed by a forward slash (alias/). Aliases that begin with
1126
- # "alias/aws" are reserved.
1076
+ # The alias to be deleted. The alias name must begin with `alias/`
1077
+ # followed by the alias name, such as `alias/ExampleAlias`.
1127
1078
  #
1128
1079
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1129
1080
  #
@@ -1179,16 +1130,15 @@ module Aws::KMS
1179
1130
  # If the operation succeeds, it returns a JSON object with no
1180
1131
  # properties.
1181
1132
  #
1182
- # This operation is part of the [Custom Key Store feature][4] feature in
1133
+ # This operation is part of the [Custom Key Store feature][1] feature in
1183
1134
  # AWS KMS, which combines the convenience and extensive integration of
1184
1135
  # AWS KMS with the isolation and control of a single-tenant key store.
1185
1136
  #
1186
1137
  #
1187
1138
  #
1188
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-store-overview.html
1189
- # [2]: http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#master_keys
1190
- # [3]: http://docs.aws.amazon.com/kms/latest/developerguide/fix-keystore.html#fix-keystore-orphaned-key
1191
- # [4]: http://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
1139
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
1140
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#master_keys
1141
+ # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/fix-keystore.html#fix-keystore-orphaned-key
1192
1142
  #
1193
1143
  # @option params [required, String] :custom_key_store_id
1194
1144
  # Enter the ID of the custom key store you want to delete. To find the
@@ -1230,12 +1180,12 @@ module Aws::KMS
1230
1180
  #
1231
1181
  #
1232
1182
  #
1233
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html
1234
- # [2]: http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
1183
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html
1184
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
1235
1185
  #
1236
1186
  # @option params [required, String] :key_id
1237
- # The identifier of the CMK whose key material to delete. The CMK's
1238
- # `Origin` must be `EXTERNAL`.
1187
+ # Identifies the CMK from which you are deleting imported key material.
1188
+ # The `Origin` of the CMK must be `EXTERNAL`.
1239
1189
  #
1240
1190
  # Specify the key ID or the Amazon Resource Name (ARN) of the CMK.
1241
1191
  #
@@ -1277,7 +1227,7 @@ module Aws::KMS
1277
1227
  # Gets information about [custom key stores][1] in the account and
1278
1228
  # region.
1279
1229
  #
1280
- # This operation is part of the [Custom Key Store feature][2] feature in
1230
+ # This operation is part of the [Custom Key Store feature][1] feature in
1281
1231
  # AWS KMS, which combines the convenience and extensive integration of
1282
1232
  # AWS KMS with the isolation and control of a single-tenant key store.
1283
1233
  #
@@ -1301,14 +1251,13 @@ module Aws::KMS
1301
1251
  # number of HSMs required for the operation, if any.
1302
1252
  #
1303
1253
  # For help repairing your custom key store, see the [Troubleshooting
1304
- # Custom Key Stores][3] topic in the *AWS Key Management Service
1254
+ # Custom Key Stores][2] topic in the *AWS Key Management Service
1305
1255
  # Developer Guide*.
1306
1256
  #
1307
1257
  #
1308
1258
  #
1309
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-store-overview.html
1310
- # [2]: http://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
1311
- # [3]: http://docs.aws.amazon.com/kms/latest/developerguide/fix-keystore-html
1259
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
1260
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/fix-keystore.html
1312
1261
  #
1313
1262
  # @option params [String] :custom_key_store_id
1314
1263
  # Gets only information about the specified custom key store. Enter the
@@ -1361,7 +1310,7 @@ module Aws::KMS
1361
1310
  # resp.custom_key_stores[0].cloud_hsm_cluster_id #=> String
1362
1311
  # resp.custom_key_stores[0].trust_anchor_certificate #=> String
1363
1312
  # resp.custom_key_stores[0].connection_state #=> String, one of "CONNECTED", "CONNECTING", "FAILED", "DISCONNECTED", "DISCONNECTING"
1364
- # resp.custom_key_stores[0].connection_error_code #=> String, one of "INVALID_CREDENTIALS", "CLUSTER_NOT_FOUND", "NETWORK_ERRORS", "INSUFFICIENT_CLOUDHSM_HSMS", "USER_LOCKED_OUT"
1313
+ # resp.custom_key_stores[0].connection_error_code #=> String, one of "INVALID_CREDENTIALS", "CLUSTER_NOT_FOUND", "NETWORK_ERRORS", "INTERNAL_ERROR", "INSUFFICIENT_CLOUDHSM_HSMS", "USER_LOCKED_OUT"
1365
1314
  # resp.custom_key_stores[0].creation_date #=> Time
1366
1315
  # resp.next_marker #=> String
1367
1316
  # resp.truncated #=> Boolean
@@ -1378,16 +1327,17 @@ module Aws::KMS
1378
1327
  # Provides detailed information about the specified customer master key
1379
1328
  # (CMK).
1380
1329
  #
1381
- # If you use `DescribeKey` on a predefined AWS alias, that is, an AWS
1382
- # alias with no key ID, AWS KMS associates the alias with an [AWS
1383
- # managed CMK][1] and returns its `KeyId` and `Arn` in the response.
1330
+ # You can use `DescribeKey` on a predefined AWS alias, that is, an AWS
1331
+ # alias with no key ID. When you do, AWS KMS associates the alias with
1332
+ # an [AWS managed CMK][1] and returns its `KeyId` and `Arn` in the
1333
+ # response.
1384
1334
  #
1385
1335
  # To perform this operation on a CMK in a different AWS account, specify
1386
1336
  # the key ARN or alias ARN in the value of the KeyId parameter.
1387
1337
  #
1388
1338
  #
1389
1339
  #
1390
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#master_keys
1340
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#master_keys
1391
1341
  #
1392
1342
  # @option params [required, String] :key_id
1393
1343
  # Describes the specified customer master key (CMK).
@@ -1398,7 +1348,7 @@ module Aws::KMS
1398
1348
  #
1399
1349
  # To specify a CMK, use its key ID, Amazon Resource Name (ARN), alias
1400
1350
  # name, or alias ARN. When using an alias name, prefix it with
1401
- # "alias/". To specify a CMK in a different AWS account, you must use
1351
+ # `"alias/"`. To specify a CMK in a different AWS account, you must use
1402
1352
  # the key ARN or alias ARN.
1403
1353
  #
1404
1354
  # For example:
@@ -1417,7 +1367,7 @@ module Aws::KMS
1417
1367
  #
1418
1368
  #
1419
1369
  #
1420
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#master_keys
1370
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#master_keys
1421
1371
  #
1422
1372
  # @option params [Array<String>] :grant_tokens
1423
1373
  # A list of grant tokens.
@@ -1427,7 +1377,7 @@ module Aws::KMS
1427
1377
  #
1428
1378
  #
1429
1379
  #
1430
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#grant_token
1380
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#grant_token
1431
1381
  #
1432
1382
  # @return [Types::DescribeKeyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1433
1383
  #
@@ -1497,8 +1447,8 @@ module Aws::KMS
1497
1447
  # this operation on a CMK in a different AWS account.
1498
1448
  #
1499
1449
  # For more information about how key state affects the use of a CMK, see
1500
- # [How Key State Affects the Use of a Customer Master Key][1] in the
1501
- # *AWS Key Management Service Developer Guide*.
1450
+ # [How Key State Affects the Use of a Customer Master Key][1] in the <i>
1451
+ # <i>AWS Key Management Service Developer Guide</i> </i>.
1502
1452
  #
1503
1453
  # The result of this operation varies with the key state of the CMK. For
1504
1454
  # details, see [How Key State Affects Use of a Customer Master Key][1]
@@ -1506,7 +1456,7 @@ module Aws::KMS
1506
1456
  #
1507
1457
  #
1508
1458
  #
1509
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
1459
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
1510
1460
  #
1511
1461
  # @option params [required, String] :key_id
1512
1462
  # A unique identifier for the customer master key (CMK).
@@ -1558,8 +1508,8 @@ module Aws::KMS
1558
1508
  #
1559
1509
  #
1560
1510
  #
1561
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html
1562
- # [2]: http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
1511
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html
1512
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
1563
1513
  #
1564
1514
  # @option params [required, String] :key_id
1565
1515
  # A unique identifier for the customer master key (CMK).
@@ -1623,14 +1573,13 @@ module Aws::KMS
1623
1573
  # If the operation succeeds, it returns a JSON object with no
1624
1574
  # properties.
1625
1575
  #
1626
- # This operation is part of the [Custom Key Store feature][2] feature in
1576
+ # This operation is part of the [Custom Key Store feature][1] feature in
1627
1577
  # AWS KMS, which combines the convenience and extensive integration of
1628
1578
  # AWS KMS with the isolation and control of a single-tenant key store.
1629
1579
  #
1630
1580
  #
1631
1581
  #
1632
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-store-overview.html
1633
- # [2]: http://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
1582
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
1634
1583
  #
1635
1584
  # @option params [required, String] :custom_key_store_id
1636
1585
  # Enter the ID of the custom key store you want to disconnect. To find
@@ -1664,7 +1613,7 @@ module Aws::KMS
1664
1613
  #
1665
1614
  #
1666
1615
  #
1667
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
1616
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
1668
1617
  #
1669
1618
  # @option params [required, String] :key_id
1670
1619
  # A unique identifier for the customer master key (CMK).
@@ -1719,9 +1668,9 @@ module Aws::KMS
1719
1668
  #
1720
1669
  #
1721
1670
  #
1722
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html
1723
- # [2]: http://docs.aws.amazon.com/kms/latest/developerguide/key-store-overview.html
1724
- # [3]: http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
1671
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html
1672
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
1673
+ # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
1725
1674
  #
1726
1675
  # @option params [required, String] :key_id
1727
1676
  # A unique identifier for the customer master key (CMK).
@@ -1770,40 +1719,38 @@ module Aws::KMS
1770
1719
  # such as an RSA key, a database password, or other sensitive
1771
1720
  # information.
1772
1721
  #
1773
- # * To move encrypted data from one AWS region to another, you can use
1774
- # this operation to encrypt in the new region the plaintext data key
1775
- # that was used to encrypt the data in the original region. This
1776
- # provides you with an encrypted copy of the data key that can be
1777
- # decrypted in the new region and used there to decrypt the encrypted
1778
- # data.
1722
+ # * You can use the `Encrypt` operation to move encrypted data from one
1723
+ # AWS region to another. In the first region, generate a data key and
1724
+ # use the plaintext key to encrypt the data. Then, in the new region,
1725
+ # call the `Encrypt` method on same plaintext data key. Now, you can
1726
+ # safely move the encrypted data and encrypted data key to the new
1727
+ # region, and decrypt in the new region when necessary.
1779
1728
  #
1780
- # To perform this operation on a CMK in a different AWS account, specify
1781
- # the key ARN or alias ARN in the value of the KeyId parameter.
1782
- #
1783
- # Unless you are moving encrypted data from one region to another, you
1784
- # don't use this operation to encrypt a generated data key within a
1785
- # region. To get data keys that are already encrypted, call the
1786
- # GenerateDataKey or GenerateDataKeyWithoutPlaintext operation. Data
1787
- # keys don't need to be encrypted again by calling `Encrypt`.
1729
+ # You don't need use this operation to encrypt a data key within a
1730
+ # region. The GenerateDataKey and GenerateDataKeyWithoutPlaintext
1731
+ # operations return an encrypted data key.
1788
1732
  #
1789
- # To encrypt data locally in your application, use the GenerateDataKey
1790
- # operation to return a plaintext data encryption key and a copy of the
1791
- # key encrypted under the CMK of your choosing.
1733
+ # Also, you don't need to use this operation to encrypt data in your
1734
+ # application. You can use the plaintext and encrypted data keys that
1735
+ # the `GenerateDataKey` operation returns.
1792
1736
  #
1793
1737
  # The result of this operation varies with the key state of the CMK. For
1794
1738
  # details, see [How Key State Affects Use of a Customer Master Key][1]
1795
1739
  # in the *AWS Key Management Service Developer Guide*.
1796
1740
  #
1741
+ # To perform this operation on a CMK in a different AWS account, specify
1742
+ # the key ARN or alias ARN in the value of the KeyId parameter.
1743
+ #
1797
1744
  #
1798
1745
  #
1799
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
1746
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
1800
1747
  #
1801
1748
  # @option params [required, String] :key_id
1802
1749
  # A unique identifier for the customer master key (CMK).
1803
1750
  #
1804
1751
  # To specify a CMK, use its key ID, Amazon Resource Name (ARN), alias
1805
1752
  # name, or alias ARN. When using an alias name, prefix it with
1806
- # "alias/". To specify a CMK in a different AWS account, you must use
1753
+ # `"alias/"`. To specify a CMK in a different AWS account, you must use
1807
1754
  # the key ARN or alias ARN.
1808
1755
  #
1809
1756
  # For example:
@@ -1831,7 +1778,7 @@ module Aws::KMS
1831
1778
  #
1832
1779
  #
1833
1780
  #
1834
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/encryption-context.html
1781
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context
1835
1782
  #
1836
1783
  # @option params [Array<String>] :grant_tokens
1837
1784
  # A list of grant tokens.
@@ -1841,7 +1788,7 @@ module Aws::KMS
1841
1788
  #
1842
1789
  #
1843
1790
  #
1844
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#grant_token
1791
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#grant_token
1845
1792
  #
1846
1793
  # @return [Types::EncryptResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1847
1794
  #
@@ -1855,12 +1802,12 @@ module Aws::KMS
1855
1802
  #
1856
1803
  # resp = client.encrypt({
1857
1804
  # key_id: "1234abcd-12ab-34cd-56ef-1234567890ab", # The identifier of the CMK to use for encryption. You can use the key ID or Amazon Resource Name (ARN) of the CMK, or the name or ARN of an alias that refers to the CMK.
1858
- # plaintext: "data", # The data to encrypt.
1805
+ # plaintext: "<binary data>", # The data to encrypt.
1859
1806
  # })
1860
1807
  #
1861
1808
  # resp.to_h outputs the following:
1862
1809
  # {
1863
- # ciphertext_blob: "encrypted data", # The encrypted data (ciphertext).
1810
+ # ciphertext_blob: "<binary data>", # The encrypted data (ciphertext).
1864
1811
  # key_id: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", # The ARN of the CMK that was used to encrypt the data.
1865
1812
  # }
1866
1813
  #
@@ -1889,54 +1836,60 @@ module Aws::KMS
1889
1836
  req.send_request(options)
1890
1837
  end
1891
1838
 
1892
- # Returns a data encryption key that you can use in your application to
1893
- # encrypt data locally.
1894
- #
1895
- # You must specify the customer master key (CMK) under which to generate
1896
- # the data key. You must also specify the length of the data key using
1897
- # either the `KeySpec` or `NumberOfBytes` field. You must specify one
1898
- # field or the other, but not both. For common key lengths (128-bit and
1899
- # 256-bit symmetric keys), we recommend that you use `KeySpec`. To
1839
+ # Generates a unique data key. This operation returns a plaintext copy
1840
+ # of the data key and a copy that is encrypted under a customer master
1841
+ # key (CMK) that you specify. You can use the plaintext key to encrypt
1842
+ # your data outside of KMS and store the encrypted data key with the
1843
+ # encrypted data.
1844
+ #
1845
+ # `GenerateDataKey` returns a unique data key for each request. The
1846
+ # bytes in the key are not related to the caller or CMK that is used to
1847
+ # encrypt the data key.
1848
+ #
1849
+ # To generate a data key, you need to specify the customer master key
1850
+ # (CMK) that will be used to encrypt the data key. You must also specify
1851
+ # the length of the data key using either the `KeySpec` or
1852
+ # `NumberOfBytes` field (but not both). For common key lengths (128-bit
1853
+ # and 256-bit symmetric keys), we recommend that you use `KeySpec`. To
1900
1854
  # perform this operation on a CMK in a different AWS account, specify
1901
1855
  # the key ARN or alias ARN in the value of the KeyId parameter.
1902
1856
  #
1903
- # This operation returns a plaintext copy of the data key in the
1904
- # `Plaintext` field of the response, and an encrypted copy of the data
1905
- # key in the `CiphertextBlob` field. The data key is encrypted under the
1906
- # CMK specified in the `KeyId` field of the request.
1857
+ # You will find the plaintext copy of the data key in the `Plaintext`
1858
+ # field of the response, and the encrypted copy of the data key in the
1859
+ # `CiphertextBlob` field.
1907
1860
  #
1908
1861
  # We recommend that you use the following pattern to encrypt data
1909
1862
  # locally in your application:
1910
1863
  #
1911
- # 1. Use this operation (`GenerateDataKey`) to get a data encryption
1912
- # key.
1864
+ # 1. Use the `GenerateDataKey` operation to get a data encryption key.
1913
1865
  #
1914
- # 2. Use the plaintext data encryption key (returned in the `Plaintext`
1915
- # field of the response) to encrypt data locally, then erase the
1916
- # plaintext data key from memory.
1866
+ # 2. Use the plaintext data key (returned in the `Plaintext` field of
1867
+ # the response) to encrypt data locally, then erase the plaintext
1868
+ # data key from memory.
1917
1869
  #
1918
1870
  # 3. Store the encrypted data key (returned in the `CiphertextBlob`
1919
1871
  # field of the response) alongside the locally encrypted data.
1920
1872
  #
1921
1873
  # To decrypt data locally:
1922
1874
  #
1923
- # 1. Use the Decrypt operation to decrypt the encrypted data key into a
1924
- # plaintext copy of the data key.
1875
+ # 1. Use the Decrypt operation to decrypt the encrypted data key. The
1876
+ # operation returns a plaintext copy of the data key.
1925
1877
  #
1926
1878
  # 2. Use the plaintext data key to decrypt data locally, then erase the
1927
1879
  # plaintext data key from memory.
1928
1880
  #
1929
- # To return only an encrypted copy of the data key, use
1930
- # GenerateDataKeyWithoutPlaintext. To return a random byte string that
1931
- # is cryptographically secure, use GenerateRandom.
1881
+ # To get only an encrypted copy of the data key, use
1882
+ # GenerateDataKeyWithoutPlaintext. To get a cryptographically secure
1883
+ # random byte string, use GenerateRandom.
1932
1884
  #
1933
- # If you use the optional `EncryptionContext` field, you must store at
1934
- # least enough information to be able to reconstruct the full encryption
1935
- # context when you later send the ciphertext to the Decrypt operation.
1936
- # It is a good practice to choose an encryption context that you can
1937
- # reconstruct on the fly to better secure the ciphertext. For more
1938
- # information, see [Encryption Context][1] in the *AWS Key Management
1939
- # Service Developer Guide*.
1885
+ # You can use the optional encryption context to add additional security
1886
+ # to your encryption operation. When you specify an `EncryptionContext`
1887
+ # in the `GenerateDataKey` operation, you must specify the same
1888
+ # encryption context (a case-sensitive exact match) in your request to
1889
+ # Decrypt the data key. Otherwise, the request to decrypt fails with an
1890
+ # `InvalidCiphertextException`. For more information, see [Encryption
1891
+ # Context][1] in the <i> <i>AWS Key Management Service Developer
1892
+ # Guide</i> </i>.
1940
1893
  #
1941
1894
  # The result of this operation varies with the key state of the CMK. For
1942
1895
  # details, see [How Key State Affects Use of a Customer Master Key][2]
@@ -1944,16 +1897,15 @@ module Aws::KMS
1944
1897
  #
1945
1898
  #
1946
1899
  #
1947
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/encryption-context.html
1948
- # [2]: http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
1900
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context
1901
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
1949
1902
  #
1950
1903
  # @option params [required, String] :key_id
1951
- # The identifier of the CMK under which to generate and encrypt the data
1952
- # encryption key.
1904
+ # An identifier for the CMK that encrypts the data key.
1953
1905
  #
1954
1906
  # To specify a CMK, use its key ID, Amazon Resource Name (ARN), alias
1955
1907
  # name, or alias ARN. When using an alias name, prefix it with
1956
- # "alias/". To specify a CMK in a different AWS account, you must use
1908
+ # `"alias/"`. To specify a CMK in a different AWS account, you must use
1957
1909
  # the key ARN or alias ARN.
1958
1910
  #
1959
1911
  # For example:
@@ -1979,18 +1931,17 @@ module Aws::KMS
1979
1931
  #
1980
1932
  #
1981
1933
  #
1982
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/encryption-context.html
1934
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context
1983
1935
  #
1984
1936
  # @option params [Integer] :number_of_bytes
1985
- # The length of the data encryption key in bytes. For example, use the
1986
- # value 64 to generate a 512-bit data key (64 bytes is 512 bits). For
1987
- # common key lengths (128-bit and 256-bit symmetric keys), we recommend
1988
- # that you use the `KeySpec` field instead of this one.
1937
+ # The length of the data key in bytes. For example, use the value 64 to
1938
+ # generate a 512-bit data key (64 bytes is 512 bits). For common key
1939
+ # lengths (128-bit and 256-bit symmetric keys), we recommend that you
1940
+ # use the `KeySpec` field instead of this one.
1989
1941
  #
1990
1942
  # @option params [String] :key_spec
1991
- # The length of the data encryption key. Use `AES_128` to generate a
1992
- # 128-bit symmetric key, or `AES_256` to generate a 256-bit symmetric
1993
- # key.
1943
+ # The length of the data key. Use `AES_128` to generate a 128-bit
1944
+ # symmetric key, or `AES_256` to generate a 256-bit symmetric key.
1994
1945
  #
1995
1946
  # @option params [Array<String>] :grant_tokens
1996
1947
  # A list of grant tokens.
@@ -2000,7 +1951,7 @@ module Aws::KMS
2000
1951
  #
2001
1952
  #
2002
1953
  #
2003
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#grant_token
1954
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#grant_token
2004
1955
  #
2005
1956
  # @return [Types::GenerateDataKeyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2006
1957
  #
@@ -2053,26 +2004,28 @@ module Aws::KMS
2053
2004
  req.send_request(options)
2054
2005
  end
2055
2006
 
2056
- # Returns a data encryption key encrypted under a customer master key
2057
- # (CMK). This operation is identical to GenerateDataKey but returns only
2058
- # the encrypted copy of the data key.
2059
- #
2060
- # To perform this operation on a CMK in a different AWS account, specify
2061
- # the key ARN or alias ARN in the value of the KeyId parameter.
2062
- #
2063
- # This operation is useful in a system that has multiple components with
2064
- # different degrees of trust. For example, consider a system that stores
2065
- # encrypted data in containers. Each container stores the encrypted data
2066
- # and an encrypted copy of the data key. One component of the system,
2067
- # called the *control plane*, creates new containers. When it creates a
2068
- # new container, it uses this operation
2069
- # (`GenerateDataKeyWithoutPlaintext`) to get an encrypted data key and
2070
- # then stores it in the container. Later, a different component of the
2071
- # system, called the *data plane*, puts encrypted data into the
2072
- # containers. To do this, it passes the encrypted data key to the
2073
- # Decrypt operation, then uses the returned plaintext data key to
2074
- # encrypt data, and finally stores the encrypted data in the container.
2075
- # In this system, the control plane never sees the plaintext data key.
2007
+ # Generates a unique data key. This operation returns a data key that is
2008
+ # encrypted under a customer master key (CMK) that you specify.
2009
+ # `GenerateDataKeyWithoutPlaintext` is identical to GenerateDataKey
2010
+ # except that returns only the encrypted copy of the data key.
2011
+ #
2012
+ # Like `GenerateDataKey`, `GenerateDataKeyWithoutPlaintext` returns a
2013
+ # unique data key for each request. The bytes in the key are not related
2014
+ # to the caller or CMK that is used to encrypt the data key.
2015
+ #
2016
+ # This operation is useful for systems that need to encrypt data at some
2017
+ # point, but not immediately. When you need to encrypt the data, you
2018
+ # call the Decrypt operation on the encrypted copy of the key.
2019
+ #
2020
+ # It's also useful in distributed systems with different levels of
2021
+ # trust. For example, you might store encrypted data in containers. One
2022
+ # component of your system creates new containers and stores an
2023
+ # encrypted data key with each container. Then, a different component
2024
+ # puts the data into the containers. That component first decrypts the
2025
+ # data key, uses the plaintext data key to encrypt data, puts the
2026
+ # encrypted data into the container, and then destroys the plaintext
2027
+ # data key. In this system, the component that creates the containers
2028
+ # never sees the plaintext data key.
2076
2029
  #
2077
2030
  # The result of this operation varies with the key state of the CMK. For
2078
2031
  # details, see [How Key State Affects Use of a Customer Master Key][1]
@@ -2080,15 +2033,15 @@ module Aws::KMS
2080
2033
  #
2081
2034
  #
2082
2035
  #
2083
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
2036
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
2084
2037
  #
2085
2038
  # @option params [required, String] :key_id
2086
- # The identifier of the customer master key (CMK) under which to
2087
- # generate and encrypt the data encryption key.
2039
+ # The identifier of the customer master key (CMK) that encrypts the data
2040
+ # key.
2088
2041
  #
2089
2042
  # To specify a CMK, use its key ID, Amazon Resource Name (ARN), alias
2090
2043
  # name, or alias ARN. When using an alias name, prefix it with
2091
- # "alias/". To specify a CMK in a different AWS account, you must use
2044
+ # `"alias/"`. To specify a CMK in a different AWS account, you must use
2092
2045
  # the key ARN or alias ARN.
2093
2046
  #
2094
2047
  # For example:
@@ -2114,18 +2067,17 @@ module Aws::KMS
2114
2067
  #
2115
2068
  #
2116
2069
  #
2117
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/encryption-context.html
2070
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context
2118
2071
  #
2119
2072
  # @option params [String] :key_spec
2120
- # The length of the data encryption key. Use `AES_128` to generate a
2121
- # 128-bit symmetric key, or `AES_256` to generate a 256-bit symmetric
2122
- # key.
2073
+ # The length of the data key. Use `AES_128` to generate a 128-bit
2074
+ # symmetric key, or `AES_256` to generate a 256-bit symmetric key.
2123
2075
  #
2124
2076
  # @option params [Integer] :number_of_bytes
2125
- # The length of the data encryption key in bytes. For example, use the
2126
- # value 64 to generate a 512-bit data key (64 bytes is 512 bits). For
2127
- # common key lengths (128-bit and 256-bit symmetric keys), we recommend
2128
- # that you use the `KeySpec` field instead of this one.
2077
+ # The length of the data key in bytes. For example, use the value 64 to
2078
+ # generate a 512-bit data key (64 bytes is 512 bits). For common key
2079
+ # lengths (128-bit and 256-bit symmetric keys), we recommend that you
2080
+ # use the `KeySpec` field instead of this one.
2129
2081
  #
2130
2082
  # @option params [Array<String>] :grant_tokens
2131
2083
  # A list of grant tokens.
@@ -2135,7 +2087,7 @@ module Aws::KMS
2135
2087
  #
2136
2088
  #
2137
2089
  #
2138
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#grant_token
2090
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#grant_token
2139
2091
  #
2140
2092
  # @return [Types::GenerateDataKeyWithoutPlaintextResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2141
2093
  #
@@ -2197,7 +2149,7 @@ module Aws::KMS
2197
2149
  #
2198
2150
  #
2199
2151
  #
2200
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-store-overview.html
2152
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
2201
2153
  # [2]: https://d0.awsstatic.com/whitepapers/KMS-Cryptographic-Details.pdf
2202
2154
  #
2203
2155
  # @option params [Integer] :number_of_bytes
@@ -2210,7 +2162,7 @@ module Aws::KMS
2210
2162
  #
2211
2163
  #
2212
2164
  #
2213
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-store-overview.html
2165
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
2214
2166
  #
2215
2167
  # @return [Types::GenerateRandomResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2216
2168
  #
@@ -2332,8 +2284,8 @@ module Aws::KMS
2332
2284
  #
2333
2285
  #
2334
2286
  #
2335
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html
2336
- # [2]: http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
2287
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html
2288
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
2337
2289
  #
2338
2290
  # @option params [required, String] :key_id
2339
2291
  # A unique identifier for the customer master key (CMK).
@@ -2413,8 +2365,8 @@ module Aws::KMS
2413
2365
  #
2414
2366
  #
2415
2367
  #
2416
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html
2417
- # [2]: http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
2368
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html
2369
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
2418
2370
  #
2419
2371
  # @option params [required, String] :key_id
2420
2372
  # The identifier of the CMK into which you will import key material. The
@@ -2439,7 +2391,7 @@ module Aws::KMS
2439
2391
  #
2440
2392
  #
2441
2393
  #
2442
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-encrypt-key-material.html
2394
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-encrypt-key-material.html
2443
2395
  #
2444
2396
  # @option params [required, String] :wrapping_key_spec
2445
2397
  # The type of wrapping key (public key) to return in the response. Only
@@ -2542,8 +2494,8 @@ module Aws::KMS
2542
2494
  #
2543
2495
  #
2544
2496
  #
2545
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html
2546
- # [2]: http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
2497
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html
2498
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
2547
2499
  #
2548
2500
  # @option params [required, String] :key_id
2549
2501
  # The identifier of the CMK to import the key material into. The CMK's
@@ -2617,23 +2569,29 @@ module Aws::KMS
2617
2569
  req.send_request(options)
2618
2570
  end
2619
2571
 
2620
- # Gets a list of all aliases in the caller's AWS account and region.
2621
- # You cannot list aliases in other accounts. For more information about
2572
+ # Gets a list of aliases in the caller's AWS account and region. You
2573
+ # cannot list aliases in other accounts. For more information about
2622
2574
  # aliases, see CreateAlias.
2623
2575
  #
2624
- # By default, the `ListAliases` command returns all aliases in the
2625
- # account and region. To get only the aliases that point to a particular
2576
+ # By default, the ListAliases command returns all aliases in the account
2577
+ # and region. To get only the aliases that point to a particular
2626
2578
  # customer master key (CMK), use the `KeyId` parameter.
2627
2579
  #
2628
- # The `ListAliases` response might include several aliases have no
2629
- # `TargetKeyId` field. These are predefined aliases that AWS has created
2630
- # but has not yet associated with a CMK. Aliases that AWS creates in
2631
- # your account, including predefined aliases, do not count against your
2632
- # [AWS KMS aliases limit][1].
2580
+ # The `ListAliases` response can include aliases that you created and
2581
+ # associated with your customer managed CMKs, and aliases that AWS
2582
+ # created and associated with AWS managed CMKs in your account. You can
2583
+ # recognize AWS aliases because their names have the format
2584
+ # `aws/<service-name>`, such as `aws/dynamodb`.
2633
2585
  #
2586
+ # The response might also include aliases that have no `TargetKeyId`
2587
+ # field. These are predefined aliases that AWS has created but has not
2588
+ # yet associated with a CMK. Aliases that AWS creates in your account,
2589
+ # including predefined aliases, do not count against your [AWS KMS
2590
+ # aliases limit][1].
2634
2591
  #
2635
2592
  #
2636
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/limits.html#aliases-limit
2593
+ #
2594
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/limits.html#aliases-limit
2637
2595
  #
2638
2596
  # @option params [String] :key_id
2639
2597
  # Lists only aliases that refer to the specified CMK. The value of this
@@ -2915,7 +2873,7 @@ module Aws::KMS
2915
2873
  # and 1000, inclusive. If you do not include a value, it defaults to
2916
2874
  # 100.
2917
2875
  #
2918
- # Currently only 1 policy can be attached to a key.
2876
+ # Only one policy can be attached to a key.
2919
2877
  #
2920
2878
  # @option params [String] :marker
2921
2879
  # Use this parameter in a subsequent request after you receive a
@@ -3184,8 +3142,8 @@ module Aws::KMS
3184
3142
  #
3185
3143
  #
3186
3144
  #
3187
- # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
3188
- # [2]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-iam
3145
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
3146
+ # [2]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-iam
3189
3147
  #
3190
3148
  # @return [Types::ListGrantsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3191
3149
  #
@@ -3265,7 +3223,7 @@ module Aws::KMS
3265
3223
  #
3266
3224
  #
3267
3225
  #
3268
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html
3226
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html
3269
3227
  #
3270
3228
  # @option params [required, String] :key_id
3271
3229
  # A unique identifier for the customer master key (CMK).
@@ -3309,8 +3267,8 @@ module Aws::KMS
3309
3267
  #
3310
3268
  #
3311
3269
  #
3312
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-root-enable-iam
3313
- # [2]: http://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_general.html#troubleshoot_general_eventual-consistency
3270
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-root-enable-iam
3271
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_general.html#troubleshoot_general_eventual-consistency
3314
3272
  #
3315
3273
  # @option params [Boolean] :bypass_policy_lockout_safety_check
3316
3274
  # A flag to indicate whether to bypass the key policy lockout safety
@@ -3331,7 +3289,7 @@ module Aws::KMS
3331
3289
  #
3332
3290
  #
3333
3291
  #
3334
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-root-enable-iam
3292
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-root-enable-iam
3335
3293
  #
3336
3294
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3337
3295
  #
@@ -3376,7 +3334,7 @@ module Aws::KMS
3376
3334
  # destination CMK. We recommend that you include the `"kms:ReEncrypt*"`
3377
3335
  # permission in your [key policies][1] to permit reencryption from or to
3378
3336
  # the CMK. This permission is automatically included in the key policy
3379
- # when you create a CMK through the console, but you must include it
3337
+ # when you create a CMK through the console. But you must include it
3380
3338
  # manually when you create a CMK programmatically or when you set a key
3381
3339
  # policy with the PutKeyPolicy operation.
3382
3340
  #
@@ -3386,8 +3344,8 @@ module Aws::KMS
3386
3344
  #
3387
3345
  #
3388
3346
  #
3389
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html
3390
- # [2]: http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
3347
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html
3348
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
3391
3349
  #
3392
3350
  # @option params [required, String, IO] :ciphertext_blob
3393
3351
  # Ciphertext of the data to reencrypt.
@@ -3401,7 +3359,7 @@ module Aws::KMS
3401
3359
  #
3402
3360
  # To specify a CMK, use its key ID, Amazon Resource Name (ARN), alias
3403
3361
  # name, or alias ARN. When using an alias name, prefix it with
3404
- # "alias/". To specify a CMK in a different AWS account, you must use
3362
+ # `"alias/"`. To specify a CMK in a different AWS account, you must use
3405
3363
  # the key ARN or alias ARN.
3406
3364
  #
3407
3365
  # For example:
@@ -3429,7 +3387,7 @@ module Aws::KMS
3429
3387
  #
3430
3388
  #
3431
3389
  #
3432
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#grant_token
3390
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#grant_token
3433
3391
  #
3434
3392
  # @return [Types::ReEncryptResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3435
3393
  #
@@ -3635,10 +3593,10 @@ module Aws::KMS
3635
3593
  #
3636
3594
  #
3637
3595
  #
3638
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-store-overview.html
3639
- # [2]: http://docs.aws.amazon.com/kms/latest/developerguide/fix-keystore.html#fix-keystore-orphaned-key
3640
- # [3]: http://docs.aws.amazon.com/kms/latest/developerguide/deleting-keys.html
3641
- # [4]: http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
3596
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
3597
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/fix-keystore.html#fix-keystore-orphaned-key
3598
+ # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/deleting-keys.html
3599
+ # [4]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
3642
3600
  #
3643
3601
  # @option params [required, String] :key_id
3644
3602
  # The unique identifier of the customer master key (CMK) to delete.
@@ -3723,8 +3681,8 @@ module Aws::KMS
3723
3681
  #
3724
3682
  #
3725
3683
  #
3726
- # [1]: http://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/allocation-tag-restrictions.html
3727
- # [2]: http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
3684
+ # [1]: https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/allocation-tag-restrictions.html
3685
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
3728
3686
  #
3729
3687
  # @option params [required, String] :key_id
3730
3688
  # A unique identifier for the CMK you are tagging.
@@ -3794,7 +3752,7 @@ module Aws::KMS
3794
3752
  #
3795
3753
  #
3796
3754
  #
3797
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
3755
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
3798
3756
  #
3799
3757
  # @option params [required, String] :key_id
3800
3758
  # A unique identifier for the CMK from which you are removing tags.
@@ -3859,30 +3817,29 @@ module Aws::KMS
3859
3817
  # To get the aliases of all CMKs in the account, use the ListAliases
3860
3818
  # operation.
3861
3819
  #
3862
- # An alias name can contain only alphanumeric characters, forward
3863
- # slashes (/), underscores (\_), and dashes (-). An alias must start
3864
- # with the word `alias` followed by a forward slash (`alias/`). The
3865
- # alias name can contain only alphanumeric characters, forward slashes
3866
- # (/), underscores (\_), and dashes (-). Alias names cannot begin with
3867
- # `aws`; that alias name prefix is reserved by Amazon Web Services
3868
- # (AWS).
3820
+ # The alias name must begin with `alias/` followed by a name, such as
3821
+ # `alias/ExampleAlias`. It can contain only alphanumeric characters,
3822
+ # forward slashes (/), underscores (\_), and dashes (-). The alias name
3823
+ # cannot begin with `alias/aws/`. The `alias/aws/` prefix is reserved
3824
+ # for [AWS managed CMKs][1].
3869
3825
  #
3870
3826
  # The result of this operation varies with the key state of the CMK. For
3871
- # details, see [How Key State Affects Use of a Customer Master Key][1]
3827
+ # details, see [How Key State Affects Use of a Customer Master Key][2]
3872
3828
  # in the *AWS Key Management Service Developer Guide*.
3873
3829
  #
3874
3830
  #
3875
3831
  #
3876
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
3832
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk
3833
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
3877
3834
  #
3878
3835
  # @option params [required, String] :alias_name
3879
- # String that contains the name of the alias to be modified. The name
3880
- # must start with the word "alias" followed by a forward slash
3881
- # (alias/). Aliases that begin with "alias/aws" are reserved.
3836
+ # Specifies the name of the alias to change. This value must begin with
3837
+ # `alias/` followed by the alias name, such as `alias/ExampleAlias`.
3882
3838
  #
3883
3839
  # @option params [required, String] :target_key_id
3884
- # Unique identifier of the customer master key to be mapped to the
3885
- # alias.
3840
+ # Unique identifier of the customer master key (CMK) to be mapped to the
3841
+ # alias. When the update operation completes, the alias will point to
3842
+ # this CMK.
3886
3843
  #
3887
3844
  # Specify the key ID or the Amazon Resource Name (ARN) of the CMK.
3888
3845
  #
@@ -3937,42 +3894,28 @@ module Aws::KMS
3937
3894
  # ConnectCustomKeyStore. To find the connection state of a custom key
3938
3895
  # store, use the DescribeCustomKeyStores operation.
3939
3896
  #
3940
- # Use the `NewCustomKeyStoreName` parameter to change the friendly name
3941
- # of the custom key store to the value that you specify.
3897
+ # Use the parameters of `UpdateCustomKeyStore` to edit your keystore
3898
+ # settings.
3942
3899
  #
3943
- # Use the `KeyStorePassword` parameter tell AWS KMS the current password
3944
- # of the [ `kmsuser` crypto user (CU)][1] in the associated AWS CloudHSM
3945
- # cluster. You can use this parameter to fix connection failures that
3946
- # occur when AWS KMS cannot log into the associated cluster because the
3947
- # `kmsuser` password has changed. This value does not change the
3948
- # password in the AWS CloudHSM cluster.
3900
+ # * Use the **NewCustomKeyStoreName** parameter to change the friendly
3901
+ # name of the custom key store to the value that you specify.
3949
3902
  #
3950
- # Use the `CloudHsmClusterId` parameter to associate the custom key
3951
- # store with a related AWS CloudHSM cluster, that is, a cluster that
3952
- # shares a backup history with the original cluster. You can use this
3953
- # parameter to repair a custom key store if its AWS CloudHSM cluster
3954
- # becomes corrupted or is deleted, or when you need to create or restore
3955
- # a cluster from a backup.
3956
3903
  #
3957
- # The cluster ID must identify a AWS CloudHSM cluster with the following
3958
- # requirements.
3959
3904
  #
3960
- # * The cluster must be active and be in the same AWS account and Region
3961
- # as the custom key store.
3905
+ # * Use the **KeyStorePassword** parameter tell AWS KMS the current
3906
+ # password of the [ `kmsuser` crypto user (CU)][1] in the associated
3907
+ # AWS CloudHSM cluster. You can use this parameter to [fix connection
3908
+ # failures][2] that occur when AWS KMS cannot log into the associated
3909
+ # cluster because the `kmsuser` password has changed. This value does
3910
+ # not change the password in the AWS CloudHSM cluster.
3962
3911
  #
3963
- # * The cluster must have the same cluster certificate as the original
3964
- # cluster. You cannot use this parameter to associate the custom key
3965
- # store with an unrelated cluster. To view the cluster certificate,
3966
- # use the AWS CloudHSM [DescribeClusters][2] operation. Clusters that
3967
- # share a backup history have the same cluster certificate.
3968
3912
  #
3969
- # * The cluster must be configured with subnets in at least two
3970
- # different Availability Zones in the Region. Because AWS CloudHSM is
3971
- # not supported in all Availability Zones, we recommend that the
3972
- # cluster have subnets in all Availability Zones in the Region.
3973
3913
  #
3974
- # * The cluster must contain at least two active HSMs, each in a
3975
- # different Availability Zone.
3914
+ # * Use the **CloudHsmClusterId** parameter to associate the custom key
3915
+ # store with a different, but related, AWS CloudHSM cluster. You can
3916
+ # use this parameter to repair a custom key store if its AWS CloudHSM
3917
+ # cluster becomes corrupted or is deleted, or when you need to create
3918
+ # or restore a cluster from a backup.
3976
3919
  #
3977
3920
  # If the operation succeeds, it returns a JSON object with no
3978
3921
  # properties.
@@ -3983,9 +3926,9 @@ module Aws::KMS
3983
3926
  #
3984
3927
  #
3985
3928
  #
3986
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-store-concepts.html#concept-kmsuser
3987
- # [2]: http://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html
3988
- # [3]: http://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
3929
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-store-concepts.html#concept-kmsuser
3930
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/fix-keystore.html#fix-keystore-password
3931
+ # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
3989
3932
  #
3990
3933
  # @option params [required, String] :custom_key_store_id
3991
3934
  # Identifies the custom key store that you want to update. Enter the ID
@@ -4009,17 +3952,18 @@ module Aws::KMS
4009
3952
  # Associates the custom key store with a related AWS CloudHSM cluster.
4010
3953
  #
4011
3954
  # Enter the cluster ID of the cluster that you used to create the custom
4012
- # key store or a cluster that shares a backup history with the original
4013
- # cluster. You cannot use this parameter to associate a custom key store
4014
- # with a different cluster.
4015
- #
4016
- # Clusters that share a backup history have the same cluster
4017
- # certificate. To view the cluster certificate of a cluster, use the
4018
- # [DescribeClusters][1] operation.
3955
+ # key store or a cluster that shares a backup history and has the same
3956
+ # cluster certificate as the original cluster. You cannot use this
3957
+ # parameter to associate a custom key store with an unrelated cluster.
3958
+ # In addition, the replacement cluster must [fulfill the
3959
+ # requirements][1] for a cluster associated with a custom key store. To
3960
+ # view the cluster certificate of a cluster, use the
3961
+ # [DescribeClusters][2] operation.
4019
3962
  #
4020
3963
  #
4021
3964
  #
4022
- # [1]: http://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html
3965
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/create-keystore.html#before-keystore
3966
+ # [2]: https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html
4023
3967
  #
4024
3968
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4025
3969
  #
@@ -4042,7 +3986,7 @@ module Aws::KMS
4042
3986
  end
4043
3987
 
4044
3988
  # Updates the description of a customer master key (CMK). To see the
4045
- # decription of a CMK, use DescribeKey.
3989
+ # description of a CMK, use DescribeKey.
4046
3990
  #
4047
3991
  # You cannot perform this operation on a CMK in a different AWS account.
4048
3992
  #
@@ -4052,7 +3996,7 @@ module Aws::KMS
4052
3996
  #
4053
3997
  #
4054
3998
  #
4055
- # [1]: http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
3999
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
4056
4000
  #
4057
4001
  # @option params [required, String] :key_id
4058
4002
  # A unique identifier for the customer master key (CMK).
@@ -4112,7 +4056,7 @@ module Aws::KMS
4112
4056
  params: params,
4113
4057
  config: config)
4114
4058
  context[:gem_name] = 'aws-sdk-kms'
4115
- context[:gem_version] = '1.17.0'
4059
+ context[:gem_version] = '1.19.0'
4116
4060
  Seahorse::Client::Request.new(handlers, context)
4117
4061
  end
4118
4062