aws-sdk-kms 1.63.0 → 1.65.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -264,6 +264,10 @@ module Aws::KMS
264
264
  # Specifies the alias name. This value must begin with `alias/`
265
265
  # followed by a name, such as `alias/ExampleAlias`.
266
266
  #
267
+ # Do not include confidential or sensitive information in this field.
268
+ # This field may be displayed in plaintext in CloudTrail logs and
269
+ # other output.
270
+ #
267
271
  # The `AliasName` value must be string of 1-256 characters. It can
268
272
  # contain only alphanumeric characters, forward slashes (/),
269
273
  # underscores (\_), and dashes (-). The alias name cannot begin with
@@ -317,6 +321,10 @@ module Aws::KMS
317
321
  # Specifies a friendly name for the custom key store. The name must be
318
322
  # unique in your Amazon Web Services account and Region. This
319
323
  # parameter is required for all custom key stores.
324
+ #
325
+ # Do not include confidential or sensitive information in this field.
326
+ # This field may be displayed in plaintext in CloudTrail logs and
327
+ # other output.
320
328
  # @return [String]
321
329
  #
322
330
  # @!attribute [rw] cloud_hsm_cluster_id
@@ -620,23 +628,19 @@ module Aws::KMS
620
628
  # @!attribute [rw] constraints
621
629
  # Specifies a grant constraint.
622
630
  #
623
- # KMS supports the `EncryptionContextEquals` and
624
- # `EncryptionContextSubset` grant constraints. Each constraint value
625
- # can include up to 8 encryption context pairs. The encryption context
626
- # value in each constraint cannot exceed 384 characters. For
627
- # information about grant constraints, see [Using grant
628
- # constraints][1] in the *Key Management Service Developer Guide*. For
629
- # more information about encryption context, see [Encryption
630
- # context][2] in the <i> <i>Key Management Service Developer Guide</i>
631
- # </i>.
631
+ # Do not include confidential or sensitive information in this field.
632
+ # This field may be displayed in plaintext in CloudTrail logs and
633
+ # other output.
632
634
  #
633
- # The encryption context grant constraints allow the permissions in
634
- # the grant only when the encryption context in the request matches
635
- # (`EncryptionContextEquals`) or includes (`EncryptionContextSubset`)
636
- # the encryption context specified in this structure.
635
+ # KMS supports the `EncryptionContextEquals` and
636
+ # `EncryptionContextSubset` grant constraints, which allow the
637
+ # permissions in the grant only when the encryption context in the
638
+ # request matches (`EncryptionContextEquals`) or includes
639
+ # (`EncryptionContextSubset`) the encryption context specified in the
640
+ # constraint.
637
641
  #
638
642
  # The encryption context grant constraints are supported only on
639
- # [grant operations][3] that include an `EncryptionContext` parameter,
643
+ # [grant operations][1] that include an `EncryptionContext` parameter,
640
644
  # such as cryptographic operations on symmetric encryption KMS keys.
641
645
  # Grants with grant constraints can include the DescribeKey and
642
646
  # RetireGrant operations, but the constraint doesn't apply to these
@@ -647,15 +651,21 @@ module Aws::KMS
647
651
  #
648
652
  # You cannot use an encryption context grant constraint for
649
653
  # cryptographic operations with asymmetric KMS keys or HMAC KMS keys.
650
- # These keys don't support an encryption context.
651
- #
654
+ # Operations with these keys don't support an encryption context.
652
655
  #
656
+ # Each constraint value can include up to 8 encryption context pairs.
657
+ # The encryption context value in each constraint cannot exceed 384
658
+ # characters. For information about grant constraints, see [Using
659
+ # grant constraints][2] in the *Key Management Service Developer
660
+ # Guide*. For more information about encryption context, see
661
+ # [Encryption context][3] in the <i> <i>Key Management Service
662
+ # Developer Guide</i> </i>.
653
663
  #
654
664
  #
655
665
  #
656
- # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/create-grant-overview.html#grant-constraints
657
- # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context
658
- # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#terms-grant-operations
666
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#terms-grant-operations
667
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/create-grant-overview.html#grant-constraints
668
+ # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context
659
669
  # @return [Types::GrantConstraints]
660
670
  #
661
671
  # @!attribute [rw] grant_tokens
@@ -676,6 +686,10 @@ module Aws::KMS
676
686
  # A friendly name for the grant. Use this value to prevent the
677
687
  # unintended creation of duplicate grants when retrying this request.
678
688
  #
689
+ # Do not include confidential or sensitive information in this field.
690
+ # This field may be displayed in plaintext in CloudTrail logs and
691
+ # other output.
692
+ #
679
693
  # When this value is absent, all `CreateGrant` requests result in a
680
694
  # new grant with a unique `GrantId` even if all the supplied
681
695
  # parameters are identical. This can result in unintended duplicates
@@ -773,11 +787,13 @@ module Aws::KMS
773
787
  # @return [String]
774
788
  #
775
789
  # @!attribute [rw] description
776
- # A description of the KMS key.
790
+ # A description of the KMS key. Use a description that helps you
791
+ # decide whether the KMS key is appropriate for a task. The default
792
+ # value is an empty string (no description).
777
793
  #
778
- # Use a description that helps you decide whether the KMS key is
779
- # appropriate for a task. The default value is an empty string (no
780
- # description).
794
+ # Do not include confidential or sensitive information in this field.
795
+ # This field may be displayed in plaintext in CloudTrail logs and
796
+ # other output.
781
797
  #
782
798
  # To set or change the description after the key is created, use
783
799
  # UpdateKeyDescription.
@@ -976,6 +992,10 @@ module Aws::KMS
976
992
  # the KMS key when it is created. To tag an existing KMS key, use the
977
993
  # TagResource operation.
978
994
  #
995
+ # Do not include confidential or sensitive information in this field.
996
+ # This field may be displayed in plaintext in CloudTrail logs and
997
+ # other output.
998
+ #
979
999
  # <note markdown="1"> Tagging or untagging a KMS key can allow or deny permission to the
980
1000
  # KMS key. For details, see [ABAC for KMS][1] in the *Key Management
981
1001
  # Service Developer Guide*.
@@ -1540,6 +1560,34 @@ module Aws::KMS
1540
1560
  # encryption KMS keys.
1541
1561
  # @return [String]
1542
1562
  #
1563
+ # @!attribute [rw] recipient
1564
+ # A signed [attestation document][1] from an Amazon Web Services Nitro
1565
+ # enclave and the encryption algorithm to use with the enclave's
1566
+ # public key. The only valid encryption algorithm is
1567
+ # `RSAES_OAEP_SHA_256`.
1568
+ #
1569
+ # This parameter only supports attestation documents for Amazon Web
1570
+ # Services Nitro Enclaves. To include this parameter, use the [Amazon
1571
+ # Web Services Nitro Enclaves SDK][2] or any Amazon Web Services SDK.
1572
+ #
1573
+ # When you use this parameter, instead of returning the plaintext
1574
+ # data, KMS encrypts the plaintext data with the public key in the
1575
+ # attestation document, and returns the resulting ciphertext in the
1576
+ # `CiphertextForRecipient` field in the response. This ciphertext can
1577
+ # be decrypted only with the private key in the enclave. The
1578
+ # `Plaintext` field in the response is null or empty.
1579
+ #
1580
+ # For information about the interaction between KMS and Amazon Web
1581
+ # Services Nitro Enclaves, see [How Amazon Web Services Nitro Enclaves
1582
+ # uses KMS][3] in the *Key Management Service Developer Guide*.
1583
+ #
1584
+ #
1585
+ #
1586
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave-how.html#term-attestdoc
1587
+ # [2]: https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk
1588
+ # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
1589
+ # @return [Types::RecipientInfo]
1590
+ #
1543
1591
  # @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/DecryptRequest AWS API Documentation
1544
1592
  #
1545
1593
  class DecryptRequest < Struct.new(
@@ -1547,7 +1595,8 @@ module Aws::KMS
1547
1595
  :encryption_context,
1548
1596
  :grant_tokens,
1549
1597
  :key_id,
1550
- :encryption_algorithm)
1598
+ :encryption_algorithm,
1599
+ :recipient)
1551
1600
  SENSITIVE = []
1552
1601
  include Aws::Structure
1553
1602
  end
@@ -1565,18 +1614,38 @@ module Aws::KMS
1565
1614
  # Decrypted plaintext data. When you use the HTTP API or the Amazon
1566
1615
  # Web Services CLI, the value is Base64-encoded. Otherwise, it is not
1567
1616
  # Base64-encoded.
1617
+ #
1618
+ # If the response includes the `CiphertextForRecipient` field, the
1619
+ # `Plaintext` field is null or empty.
1568
1620
  # @return [String]
1569
1621
  #
1570
1622
  # @!attribute [rw] encryption_algorithm
1571
1623
  # The encryption algorithm that was used to decrypt the ciphertext.
1572
1624
  # @return [String]
1573
1625
  #
1626
+ # @!attribute [rw] ciphertext_for_recipient
1627
+ # The plaintext data encrypted with the public key in the attestation
1628
+ # document.
1629
+ #
1630
+ # This field is included in the response only when the `Recipient`
1631
+ # parameter in the request includes a valid attestation document from
1632
+ # an Amazon Web Services Nitro enclave. For information about the
1633
+ # interaction between KMS and Amazon Web Services Nitro Enclaves, see
1634
+ # [How Amazon Web Services Nitro Enclaves uses KMS][1] in the *Key
1635
+ # Management Service Developer Guide*.
1636
+ #
1637
+ #
1638
+ #
1639
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
1640
+ # @return [String]
1641
+ #
1574
1642
  # @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/DecryptResponse AWS API Documentation
1575
1643
  #
1576
1644
  class DecryptResponse < Struct.new(
1577
1645
  :key_id,
1578
1646
  :plaintext,
1579
- :encryption_algorithm)
1647
+ :encryption_algorithm,
1648
+ :ciphertext_for_recipient)
1580
1649
  SENSITIVE = [:plaintext]
1581
1650
  include Aws::Structure
1582
1651
  end
@@ -1971,6 +2040,10 @@ module Aws::KMS
1971
2040
  # asymmetric encryption algorithms and HMAC algorithms that KMS uses
1972
2041
  # do not support an encryption context.
1973
2042
  #
2043
+ # Do not include confidential or sensitive information in this field.
2044
+ # This field may be displayed in plaintext in CloudTrail logs and
2045
+ # other output.
2046
+ #
1974
2047
  # An *encryption context* is a collection of non-secret key-value
1975
2048
  # pairs that represent additional authenticated data. When you use an
1976
2049
  # encryption context to encrypt data, you must specify the same (an
@@ -2077,6 +2150,10 @@ module Aws::KMS
2077
2150
  # Specifies the encryption context that will be used when encrypting
2078
2151
  # the private key in the data key pair.
2079
2152
  #
2153
+ # Do not include confidential or sensitive information in this field.
2154
+ # This field may be displayed in plaintext in CloudTrail logs and
2155
+ # other output.
2156
+ #
2080
2157
  # An *encryption context* is a collection of non-secret key-value
2081
2158
  # pairs that represent additional authenticated data. When you use an
2082
2159
  # encryption context to encrypt data, you must specify the same (an
@@ -2144,13 +2221,45 @@ module Aws::KMS
2144
2221
  # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/grant-manage.html#using-grant-token
2145
2222
  # @return [Array<String>]
2146
2223
  #
2224
+ # @!attribute [rw] recipient
2225
+ # A signed [attestation document][1] from an Amazon Web Services Nitro
2226
+ # enclave and the encryption algorithm to use with the enclave's
2227
+ # public key. The only valid encryption algorithm is
2228
+ # `RSAES_OAEP_SHA_256`.
2229
+ #
2230
+ # This parameter only supports attestation documents for Amazon Web
2231
+ # Services Nitro Enclaves. To include this parameter, use the [Amazon
2232
+ # Web Services Nitro Enclaves SDK][2] or any Amazon Web Services SDK.
2233
+ #
2234
+ # When you use this parameter, instead of returning a plaintext copy
2235
+ # of the private data key, KMS encrypts the plaintext private data key
2236
+ # under the public key in the attestation document, and returns the
2237
+ # resulting ciphertext in the `CiphertextForRecipient` field in the
2238
+ # response. This ciphertext can be decrypted only with the private key
2239
+ # in the enclave. The `CiphertextBlob` field in the response contains
2240
+ # a copy of the private data key encrypted under the KMS key specified
2241
+ # by the `KeyId` parameter. The `PrivateKeyPlaintext` field in the
2242
+ # response is null or empty.
2243
+ #
2244
+ # For information about the interaction between KMS and Amazon Web
2245
+ # Services Nitro Enclaves, see [How Amazon Web Services Nitro Enclaves
2246
+ # uses KMS][3] in the *Key Management Service Developer Guide*.
2247
+ #
2248
+ #
2249
+ #
2250
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave-how.html#term-attestdoc
2251
+ # [2]: https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk
2252
+ # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
2253
+ # @return [Types::RecipientInfo]
2254
+ #
2147
2255
  # @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/GenerateDataKeyPairRequest AWS API Documentation
2148
2256
  #
2149
2257
  class GenerateDataKeyPairRequest < Struct.new(
2150
2258
  :encryption_context,
2151
2259
  :key_id,
2152
2260
  :key_pair_spec,
2153
- :grant_tokens)
2261
+ :grant_tokens,
2262
+ :recipient)
2154
2263
  SENSITIVE = []
2155
2264
  include Aws::Structure
2156
2265
  end
@@ -2165,6 +2274,9 @@ module Aws::KMS
2165
2274
  # The plaintext copy of the private key. When you use the HTTP API or
2166
2275
  # the Amazon Web Services CLI, the value is Base64-encoded. Otherwise,
2167
2276
  # it is not Base64-encoded.
2277
+ #
2278
+ # If the response includes the `CiphertextForRecipient` field, the
2279
+ # `PrivateKeyPlaintext` field is null or empty.
2168
2280
  # @return [String]
2169
2281
  #
2170
2282
  # @!attribute [rw] public_key
@@ -2186,6 +2298,23 @@ module Aws::KMS
2186
2298
  # The type of data key pair that was generated.
2187
2299
  # @return [String]
2188
2300
  #
2301
+ # @!attribute [rw] ciphertext_for_recipient
2302
+ # The plaintext private data key encrypted with the public key from
2303
+ # the Nitro enclave. This ciphertext can be decrypted only by using a
2304
+ # private key in the Nitro enclave.
2305
+ #
2306
+ # This field is included in the response only when the `Recipient`
2307
+ # parameter in the request includes a valid attestation document from
2308
+ # an Amazon Web Services Nitro enclave. For information about the
2309
+ # interaction between KMS and Amazon Web Services Nitro Enclaves, see
2310
+ # [How Amazon Web Services Nitro Enclaves uses KMS][1] in the *Key
2311
+ # Management Service Developer Guide*.
2312
+ #
2313
+ #
2314
+ #
2315
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
2316
+ # @return [String]
2317
+ #
2189
2318
  # @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/GenerateDataKeyPairResponse AWS API Documentation
2190
2319
  #
2191
2320
  class GenerateDataKeyPairResponse < Struct.new(
@@ -2193,7 +2322,8 @@ module Aws::KMS
2193
2322
  :private_key_plaintext,
2194
2323
  :public_key,
2195
2324
  :key_id,
2196
- :key_pair_spec)
2325
+ :key_pair_spec,
2326
+ :ciphertext_for_recipient)
2197
2327
  SENSITIVE = [:private_key_plaintext]
2198
2328
  include Aws::Structure
2199
2329
  end
@@ -2202,6 +2332,10 @@ module Aws::KMS
2202
2332
  # Specifies the encryption context that will be used when encrypting
2203
2333
  # the private key in the data key pair.
2204
2334
  #
2335
+ # Do not include confidential or sensitive information in this field.
2336
+ # This field may be displayed in plaintext in CloudTrail logs and
2337
+ # other output.
2338
+ #
2205
2339
  # An *encryption context* is a collection of non-secret key-value
2206
2340
  # pairs that represent additional authenticated data. When you use an
2207
2341
  # encryption context to encrypt data, you must specify the same (an
@@ -2346,6 +2480,10 @@ module Aws::KMS
2346
2480
  # Specifies the encryption context that will be used when encrypting
2347
2481
  # the data key.
2348
2482
  #
2483
+ # Do not include confidential or sensitive information in this field.
2484
+ # This field may be displayed in plaintext in CloudTrail logs and
2485
+ # other output.
2486
+ #
2349
2487
  # An *encryption context* is a collection of non-secret key-value
2350
2488
  # pairs that represent additional authenticated data. When you use an
2351
2489
  # encryption context to encrypt data, you must specify the same (an
@@ -2396,6 +2534,36 @@ module Aws::KMS
2396
2534
  # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/grant-manage.html#using-grant-token
2397
2535
  # @return [Array<String>]
2398
2536
  #
2537
+ # @!attribute [rw] recipient
2538
+ # A signed [attestation document][1] from an Amazon Web Services Nitro
2539
+ # enclave and the encryption algorithm to use with the enclave's
2540
+ # public key. The only valid encryption algorithm is
2541
+ # `RSAES_OAEP_SHA_256`.
2542
+ #
2543
+ # This parameter only supports attestation documents for Amazon Web
2544
+ # Services Nitro Enclaves. To include this parameter, use the [Amazon
2545
+ # Web Services Nitro Enclaves SDK][2] or any Amazon Web Services SDK.
2546
+ #
2547
+ # When you use this parameter, instead of returning the plaintext data
2548
+ # key, KMS encrypts the plaintext data key under the public key in the
2549
+ # attestation document, and returns the resulting ciphertext in the
2550
+ # `CiphertextForRecipient` field in the response. This ciphertext can
2551
+ # be decrypted only with the private key in the enclave. The
2552
+ # `CiphertextBlob` field in the response contains a copy of the data
2553
+ # key encrypted under the KMS key specified by the `KeyId` parameter.
2554
+ # The `Plaintext` field in the response is null or empty.
2555
+ #
2556
+ # For information about the interaction between KMS and Amazon Web
2557
+ # Services Nitro Enclaves, see [How Amazon Web Services Nitro Enclaves
2558
+ # uses KMS][3] in the *Key Management Service Developer Guide*.
2559
+ #
2560
+ #
2561
+ #
2562
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave-how.html#term-attestdoc
2563
+ # [2]: https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk
2564
+ # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
2565
+ # @return [Types::RecipientInfo]
2566
+ #
2399
2567
  # @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/GenerateDataKeyRequest AWS API Documentation
2400
2568
  #
2401
2569
  class GenerateDataKeyRequest < Struct.new(
@@ -2403,7 +2571,8 @@ module Aws::KMS
2403
2571
  :encryption_context,
2404
2572
  :number_of_bytes,
2405
2573
  :key_spec,
2406
- :grant_tokens)
2574
+ :grant_tokens,
2575
+ :recipient)
2407
2576
  SENSITIVE = []
2408
2577
  include Aws::Structure
2409
2578
  end
@@ -2419,6 +2588,9 @@ module Aws::KMS
2419
2588
  # Services CLI, the value is Base64-encoded. Otherwise, it is not
2420
2589
  # Base64-encoded. Use this data key to encrypt your data outside of
2421
2590
  # KMS. Then, remove it from memory as soon as possible.
2591
+ #
2592
+ # If the response includes the `CiphertextForRecipient` field, the
2593
+ # `Plaintext` field is null or empty.
2422
2594
  # @return [String]
2423
2595
  #
2424
2596
  # @!attribute [rw] key_id
@@ -2430,12 +2602,30 @@ module Aws::KMS
2430
2602
  # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id-key-ARN
2431
2603
  # @return [String]
2432
2604
  #
2605
+ # @!attribute [rw] ciphertext_for_recipient
2606
+ # The plaintext data key encrypted with the public key from the Nitro
2607
+ # enclave. This ciphertext can be decrypted only by using a private
2608
+ # key in the Nitro enclave.
2609
+ #
2610
+ # This field is included in the response only when the `Recipient`
2611
+ # parameter in the request includes a valid attestation document from
2612
+ # an Amazon Web Services Nitro enclave. For information about the
2613
+ # interaction between KMS and Amazon Web Services Nitro Enclaves, see
2614
+ # [How Amazon Web Services Nitro Enclaves uses KMS][1] in the *Key
2615
+ # Management Service Developer Guide*.
2616
+ #
2617
+ #
2618
+ #
2619
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
2620
+ # @return [String]
2621
+ #
2433
2622
  # @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/GenerateDataKeyResponse AWS API Documentation
2434
2623
  #
2435
2624
  class GenerateDataKeyResponse < Struct.new(
2436
2625
  :ciphertext_blob,
2437
2626
  :plaintext,
2438
- :key_id)
2627
+ :key_id,
2628
+ :ciphertext_for_recipient)
2439
2629
  SENSITIVE = [:plaintext]
2440
2630
  include Aws::Structure
2441
2631
  end
@@ -2470,6 +2660,10 @@ module Aws::KMS
2470
2660
  # Specifies the encryption context that will be used when encrypting
2471
2661
  # the data key.
2472
2662
  #
2663
+ # Do not include confidential or sensitive information in this field.
2664
+ # This field may be displayed in plaintext in CloudTrail logs and
2665
+ # other output.
2666
+ #
2473
2667
  # An *encryption context* is a collection of non-secret key-value
2474
2668
  # pairs that represent additional authenticated data. When you use an
2475
2669
  # encryption context to encrypt data, you must specify the same (an
@@ -2646,11 +2840,40 @@ module Aws::KMS
2646
2840
  # `UnsupportedOperationException`.
2647
2841
  # @return [String]
2648
2842
  #
2843
+ # @!attribute [rw] recipient
2844
+ # A signed [attestation document][1] from an Amazon Web Services Nitro
2845
+ # enclave and the encryption algorithm to use with the enclave's
2846
+ # public key. The only valid encryption algorithm is
2847
+ # `RSAES_OAEP_SHA_256`.
2848
+ #
2849
+ # This parameter only supports attestation documents for Amazon Web
2850
+ # Services Nitro Enclaves. To include this parameter, use the [Amazon
2851
+ # Web Services Nitro Enclaves SDK][2] or any Amazon Web Services SDK.
2852
+ #
2853
+ # When you use this parameter, instead of returning plaintext bytes,
2854
+ # KMS encrypts the plaintext bytes under the public key in the
2855
+ # attestation document, and returns the resulting ciphertext in the
2856
+ # `CiphertextForRecipient` field in the response. This ciphertext can
2857
+ # be decrypted only with the private key in the enclave. The
2858
+ # `Plaintext` field in the response is null or empty.
2859
+ #
2860
+ # For information about the interaction between KMS and Amazon Web
2861
+ # Services Nitro Enclaves, see [How Amazon Web Services Nitro Enclaves
2862
+ # uses KMS][3] in the *Key Management Service Developer Guide*.
2863
+ #
2864
+ #
2865
+ #
2866
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave-how.html#term-attestdoc
2867
+ # [2]: https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk
2868
+ # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
2869
+ # @return [Types::RecipientInfo]
2870
+ #
2649
2871
  # @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/GenerateRandomRequest AWS API Documentation
2650
2872
  #
2651
2873
  class GenerateRandomRequest < Struct.new(
2652
2874
  :number_of_bytes,
2653
- :custom_key_store_id)
2875
+ :custom_key_store_id,
2876
+ :recipient)
2654
2877
  SENSITIVE = []
2655
2878
  include Aws::Structure
2656
2879
  end
@@ -2659,12 +2882,33 @@ module Aws::KMS
2659
2882
  # The random byte string. When you use the HTTP API or the Amazon Web
2660
2883
  # Services CLI, the value is Base64-encoded. Otherwise, it is not
2661
2884
  # Base64-encoded.
2885
+ #
2886
+ # If the response includes the `CiphertextForRecipient` field, the
2887
+ # `Plaintext` field is null or empty.
2888
+ # @return [String]
2889
+ #
2890
+ # @!attribute [rw] ciphertext_for_recipient
2891
+ # The plaintext random bytes encrypted with the public key from the
2892
+ # Nitro enclave. This ciphertext can be decrypted only by using a
2893
+ # private key in the Nitro enclave.
2894
+ #
2895
+ # This field is included in the response only when the `Recipient`
2896
+ # parameter in the request includes a valid attestation document from
2897
+ # an Amazon Web Services Nitro enclave. For information about the
2898
+ # interaction between KMS and Amazon Web Services Nitro Enclaves, see
2899
+ # [How Amazon Web Services Nitro Enclaves uses KMS][1] in the *Key
2900
+ # Management Service Developer Guide*.
2901
+ #
2902
+ #
2903
+ #
2904
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
2662
2905
  # @return [String]
2663
2906
  #
2664
2907
  # @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/GenerateRandomResponse AWS API Documentation
2665
2908
  #
2666
2909
  class GenerateRandomResponse < Struct.new(
2667
- :plaintext)
2910
+ :plaintext,
2911
+ :ciphertext_for_recipient)
2668
2912
  SENSITIVE = [:plaintext]
2669
2913
  include Aws::Structure
2670
2914
  end
@@ -4417,6 +4661,10 @@ module Aws::KMS
4417
4661
  # Specifies that encryption context to use when the reencrypting the
4418
4662
  # data.
4419
4663
  #
4664
+ # Do not include confidential or sensitive information in this field.
4665
+ # This field may be displayed in plaintext in CloudTrail logs and
4666
+ # other output.
4667
+ #
4420
4668
  # A destination encryption context is valid only when the destination
4421
4669
  # KMS key is a symmetric encryption KMS key. The standard ciphertext
4422
4670
  # format for asymmetric KMS keys does not include fields for metadata.
@@ -4531,6 +4779,39 @@ module Aws::KMS
4531
4779
  include Aws::Structure
4532
4780
  end
4533
4781
 
4782
+ # Contains information about the party that receives the response from
4783
+ # the API operation.
4784
+ #
4785
+ # This data type is designed to support Amazon Web Services Nitro
4786
+ # Enclaves, which lets you create an isolated compute environment in
4787
+ # Amazon EC2. For information about the interaction between KMS and
4788
+ # Amazon Web Services Nitro Enclaves, see [How Amazon Web Services Nitro
4789
+ # Enclaves uses KMS][1] in the *Key Management Service Developer Guide*.
4790
+ #
4791
+ #
4792
+ #
4793
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
4794
+ #
4795
+ # @!attribute [rw] key_encryption_algorithm
4796
+ # The encryption algorithm that KMS should use with the public key for
4797
+ # an Amazon Web Services Nitro Enclave to encrypt plaintext values for
4798
+ # the response. The only valid value is `RSAES_OAEP_SHA_256`.
4799
+ # @return [String]
4800
+ #
4801
+ # @!attribute [rw] attestation_document
4802
+ # The attestation document for an Amazon Web Services Nitro Enclave.
4803
+ # This document includes the enclave's public key.
4804
+ # @return [String]
4805
+ #
4806
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/RecipientInfo AWS API Documentation
4807
+ #
4808
+ class RecipientInfo < Struct.new(
4809
+ :key_encryption_algorithm,
4810
+ :attestation_document)
4811
+ SENSITIVE = []
4812
+ include Aws::Structure
4813
+ end
4814
+
4534
4815
  # @!attribute [rw] key_id
4535
4816
  # Identifies the multi-Region primary key that is being replicated. To
4536
4817
  # determine whether a KMS key is a multi-Region primary key, use the
@@ -4666,6 +4947,10 @@ module Aws::KMS
4666
4947
  # A description of the KMS key. The default value is an empty string
4667
4948
  # (no description).
4668
4949
  #
4950
+ # Do not include confidential or sensitive information in this field.
4951
+ # This field may be displayed in plaintext in CloudTrail logs and
4952
+ # other output.
4953
+ #
4669
4954
  # The description is not a shared property of multi-Region keys. You
4670
4955
  # can specify the same description or a different description for each
4671
4956
  # key in a set of related multi-Region keys. KMS does not synchronize
@@ -4677,6 +4962,10 @@ module Aws::KMS
4677
4962
  # tag the KMS key when it is created. To tag an existing KMS key, use
4678
4963
  # the TagResource operation.
4679
4964
  #
4965
+ # Do not include confidential or sensitive information in this field.
4966
+ # This field may be displayed in plaintext in CloudTrail logs and
4967
+ # other output.
4968
+ #
4680
4969
  # <note markdown="1"> Tagging or untagging a KMS key can allow or deny permission to the
4681
4970
  # KMS key. For details, see [ABAC for KMS][1] in the *Key Management
4682
4971
  # Service Developer Guide*.
@@ -5077,6 +5366,10 @@ module Aws::KMS
5077
5366
  # keys and tag values are both required, but tag values can be empty
5078
5367
  # (null) strings.
5079
5368
  #
5369
+ # Do not include confidential or sensitive information in this field.
5370
+ # This field may be displayed in plaintext in CloudTrail logs and other
5371
+ # output.
5372
+ #
5080
5373
  # For information about the rules that apply to tag keys and tag values,
5081
5374
  # see [User-Defined Tag Restrictions][1] in the *Amazon Web Services
5082
5375
  # Billing and Cost Management User Guide*.
@@ -5132,10 +5425,12 @@ module Aws::KMS
5132
5425
  # @return [String]
5133
5426
  #
5134
5427
  # @!attribute [rw] tags
5135
- # One or more tags.
5428
+ # One or more tags. Each tag consists of a tag key and a tag value.
5429
+ # The tag value can be an empty (null) string.
5136
5430
  #
5137
- # Each tag consists of a tag key and a tag value. The tag value can be
5138
- # an empty (null) string.
5431
+ # Do not include confidential or sensitive information in this field.
5432
+ # This field may be displayed in plaintext in CloudTrail logs and
5433
+ # other output.
5139
5434
  #
5140
5435
  # You cannot have more than one tag on a KMS key with the same tag
5141
5436
  # key. If you specify an existing tag key with a different tag value,
@@ -5199,6 +5494,10 @@ module Aws::KMS
5199
5494
  # begin with `alias/` followed by the alias name, such as
5200
5495
  # `alias/ExampleAlias`. You cannot use `UpdateAlias` to change the
5201
5496
  # alias name.
5497
+ #
5498
+ # Do not include confidential or sensitive information in this field.
5499
+ # This field may be displayed in plaintext in CloudTrail logs and
5500
+ # other output.
5202
5501
  # @return [String]
5203
5502
  #
5204
5503
  # @!attribute [rw] target_key_id
@@ -5252,6 +5551,10 @@ module Aws::KMS
5252
5551
  # you specify. The custom key store name must be unique in the Amazon
5253
5552
  # Web Services account.
5254
5553
  #
5554
+ # Do not include confidential or sensitive information in this field.
5555
+ # This field may be displayed in plaintext in CloudTrail logs and
5556
+ # other output.
5557
+ #
5255
5558
  # To change this value, an CloudHSM key store must be disconnected. An
5256
5559
  # external key store can be connected or disconnected.
5257
5560
  # @return [String]
@@ -5414,6 +5717,10 @@ module Aws::KMS
5414
5717
  #
5415
5718
  # @!attribute [rw] description
5416
5719
  # New description for the KMS key.
5720
+ #
5721
+ # Do not include confidential or sensitive information in this field.
5722
+ # This field may be displayed in plaintext in CloudTrail logs and
5723
+ # other output.
5417
5724
  # @return [String]
5418
5725
  #
5419
5726
  # @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/UpdateKeyDescriptionRequest AWS API Documentation
data/lib/aws-sdk-kms.rb CHANGED
@@ -52,6 +52,6 @@ require_relative 'aws-sdk-kms/customizations'
52
52
  # @!group service
53
53
  module Aws::KMS
54
54
 
55
- GEM_VERSION = '1.63.0'
55
+ GEM_VERSION = '1.65.0'
56
56
 
57
57
  end