aws-sdk-kms 1.134.0 → 1.136.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +10 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-kms/client.rb +376 -22
- data/lib/aws-sdk-kms/client_api.rb +69 -0
- data/lib/aws-sdk-kms/types.rb +251 -6
- data/lib/aws-sdk-kms.rb +1 -1
- data/sig/client.rbs +42 -9
- data/sig/types.rbs +47 -13
- metadata +3 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 5ec239237e7bd70a8d1970abecb35397b740f37bb3c0f08e730f9bccb4193025
|
|
4
|
+
data.tar.gz: 118c0f0aa37c952a2ceff53b679c66dee5f9b35f2a3f7f0f243f1ceba6350522
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: ded191d2ce8ef5739a27758d51512e29efa346963b316b011a36a288871def80f3c8f82eb84c8fc164cfd3764cf29e1e6f179ce9bd276fcc78e4779357db796a
|
|
7
|
+
data.tar.gz: 3f953533e0dbf41cd2cd0148f50ef02c24341ac5d09fed5c0e6c6f396fa284d70f9c963d7c3c3179fe22d14a986089d52530b81a5e038c40a3edf93eebe389ff
|
data/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,16 @@
|
|
|
1
1
|
Unreleased Changes
|
|
2
2
|
------------------
|
|
3
3
|
|
|
4
|
+
1.136.0 (2026-10-26)
|
|
5
|
+
------------------
|
|
6
|
+
|
|
7
|
+
* Feature - This release adds support for ML-KEM (Module-Lattice-Based Key-Encapsulation Mechanism) keys in AWS KMS. ML-KEM, as specified in NIST FIPS 203, is a post-quantum key encapsulation mechanism that can be used to establish a shared secret between two parties.
|
|
8
|
+
|
|
9
|
+
1.135.0 (2026-10-21)
|
|
10
|
+
------------------
|
|
11
|
+
|
|
12
|
+
* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
|
|
13
|
+
|
|
4
14
|
1.134.0 (2026-10-20)
|
|
5
15
|
------------------
|
|
6
16
|
|
data/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
1.
|
|
1
|
+
1.136.0
|
data/lib/aws-sdk-kms/client.rb
CHANGED
|
@@ -1570,7 +1570,7 @@ module Aws::KMS
|
|
|
1570
1570
|
# key_id: "KeyIdType", # required
|
|
1571
1571
|
# grantee_principal: "PrincipalIdType",
|
|
1572
1572
|
# retiring_principal: "PrincipalIdType",
|
|
1573
|
-
# operations: ["Decrypt"], # required, accepts Decrypt, Encrypt, GenerateDataKey, GenerateDataKeyWithoutPlaintext, ReEncryptFrom, ReEncryptTo, Sign, Verify, GetPublicKey, CreateGrant, RetireGrant, DescribeKey, GenerateDataKeyPair, GenerateDataKeyPairWithoutPlaintext, GenerateMac, VerifyMac, DeriveSharedSecret
|
|
1573
|
+
# operations: ["Decrypt"], # required, accepts Decrypt, Encrypt, GenerateDataKey, GenerateDataKeyWithoutPlaintext, ReEncryptFrom, ReEncryptTo, Sign, Verify, GetPublicKey, CreateGrant, RetireGrant, DescribeKey, GenerateDataKeyPair, GenerateDataKeyPairWithoutPlaintext, GenerateMac, VerifyMac, DeriveSharedSecret, Encapsulate, Decapsulate
|
|
1574
1574
|
# constraints: {
|
|
1575
1575
|
# encryption_context_subset: {
|
|
1576
1576
|
# "EncryptionContextKey" => "EncryptionContextValue",
|
|
@@ -1923,6 +1923,9 @@ module Aws::KMS
|
|
|
1923
1923
|
# * For asymmetric KMS keys with ML-DSA key pairs, specify
|
|
1924
1924
|
# `SIGN_VERIFY`.
|
|
1925
1925
|
#
|
|
1926
|
+
# * For asymmetric KMS keys with ML-KEM key pairs, specify
|
|
1927
|
+
# `ENCAPSULATE_DECAPSULATE`.
|
|
1928
|
+
#
|
|
1926
1929
|
# * For asymmetric KMS keys with SM2 key pairs (China Regions only),
|
|
1927
1930
|
# specify `ENCRYPT_DECRYPT`, `SIGN_VERIFY`, or `KEY_AGREEMENT`.
|
|
1928
1931
|
#
|
|
@@ -2017,6 +2020,15 @@ module Aws::KMS
|
|
|
2017
2020
|
# * `ML_DSA_65`
|
|
2018
2021
|
#
|
|
2019
2022
|
# * `ML_DSA_87`
|
|
2023
|
+
# * Asymmetric ML-KEM key pairs (establishing shared secrets)
|
|
2024
|
+
#
|
|
2025
|
+
# * `ML_KEM_512`
|
|
2026
|
+
#
|
|
2027
|
+
# * `ML_KEM_768`
|
|
2028
|
+
#
|
|
2029
|
+
# * `ML_KEM_1024`
|
|
2030
|
+
# The ML-KEM key specs are not available in China Regions.
|
|
2031
|
+
#
|
|
2020
2032
|
# * SM2 key pairs (encryption and decryption -or- signing and
|
|
2021
2033
|
# verification -or- deriving shared secrets)
|
|
2022
2034
|
#
|
|
@@ -2518,9 +2530,9 @@ module Aws::KMS
|
|
|
2518
2530
|
# resp = client.create_key({
|
|
2519
2531
|
# policy: "PolicyType",
|
|
2520
2532
|
# description: "DescriptionType",
|
|
2521
|
-
# key_usage: "SIGN_VERIFY", # accepts SIGN_VERIFY, ENCRYPT_DECRYPT, GENERATE_VERIFY_MAC, KEY_AGREEMENT
|
|
2533
|
+
# key_usage: "SIGN_VERIFY", # accepts SIGN_VERIFY, ENCRYPT_DECRYPT, GENERATE_VERIFY_MAC, KEY_AGREEMENT, ENCAPSULATE_DECAPSULATE
|
|
2522
2534
|
# customer_master_key_spec: "RSA_2048", # accepts RSA_2048, RSA_3072, RSA_4096, ECC_NIST_P256, ECC_NIST_P384, ECC_NIST_P521, ECC_SECG_P256K1, SYMMETRIC_DEFAULT, HMAC_224, HMAC_256, HMAC_384, HMAC_512, SM2
|
|
2523
|
-
# key_spec: "RSA_2048", # accepts RSA_2048, RSA_3072, RSA_4096, ECC_NIST_P256, ECC_NIST_P384, ECC_NIST_P521, ECC_SECG_P256K1, SYMMETRIC_DEFAULT, HMAC_224, HMAC_256, HMAC_384, HMAC_512, SM2, ML_DSA_44, ML_DSA_65, ML_DSA_87, ECC_NIST_EDWARDS25519
|
|
2535
|
+
# key_spec: "RSA_2048", # accepts RSA_2048, RSA_3072, RSA_4096, ECC_NIST_P256, ECC_NIST_P384, ECC_NIST_P521, ECC_SECG_P256K1, SYMMETRIC_DEFAULT, HMAC_224, HMAC_256, HMAC_384, HMAC_512, SM2, ML_DSA_44, ML_DSA_65, ML_DSA_87, ECC_NIST_EDWARDS25519, ML_KEM_512, ML_KEM_768, ML_KEM_1024
|
|
2524
2536
|
# origin: "AWS_KMS", # accepts AWS_KMS, EXTERNAL, AWS_CLOUDHSM, EXTERNAL_KEY_STORE
|
|
2525
2537
|
# custom_key_store_id: "CustomKeyStoreIdType",
|
|
2526
2538
|
# bypass_policy_lockout_safety_check: false,
|
|
@@ -2542,7 +2554,7 @@ module Aws::KMS
|
|
|
2542
2554
|
# resp.key_metadata.creation_date #=> Time
|
|
2543
2555
|
# resp.key_metadata.enabled #=> Boolean
|
|
2544
2556
|
# resp.key_metadata.description #=> String
|
|
2545
|
-
# resp.key_metadata.key_usage #=> String, one of "SIGN_VERIFY", "ENCRYPT_DECRYPT", "GENERATE_VERIFY_MAC", "KEY_AGREEMENT"
|
|
2557
|
+
# resp.key_metadata.key_usage #=> String, one of "SIGN_VERIFY", "ENCRYPT_DECRYPT", "GENERATE_VERIFY_MAC", "KEY_AGREEMENT", "ENCAPSULATE_DECAPSULATE"
|
|
2546
2558
|
# resp.key_metadata.key_state #=> String, one of "Creating", "Enabled", "Disabled", "PendingDeletion", "PendingImport", "PendingReplicaDeletion", "Unavailable", "Updating"
|
|
2547
2559
|
# resp.key_metadata.deletion_date #=> Time
|
|
2548
2560
|
# resp.key_metadata.valid_to #=> Time
|
|
@@ -2552,13 +2564,15 @@ module Aws::KMS
|
|
|
2552
2564
|
# resp.key_metadata.expiration_model #=> String, one of "KEY_MATERIAL_EXPIRES", "KEY_MATERIAL_DOES_NOT_EXPIRE"
|
|
2553
2565
|
# resp.key_metadata.key_manager #=> String, one of "AWS", "CUSTOMER"
|
|
2554
2566
|
# resp.key_metadata.customer_master_key_spec #=> String, one of "RSA_2048", "RSA_3072", "RSA_4096", "ECC_NIST_P256", "ECC_NIST_P384", "ECC_NIST_P521", "ECC_SECG_P256K1", "SYMMETRIC_DEFAULT", "HMAC_224", "HMAC_256", "HMAC_384", "HMAC_512", "SM2"
|
|
2555
|
-
# resp.key_metadata.key_spec #=> String, one of "RSA_2048", "RSA_3072", "RSA_4096", "ECC_NIST_P256", "ECC_NIST_P384", "ECC_NIST_P521", "ECC_SECG_P256K1", "SYMMETRIC_DEFAULT", "HMAC_224", "HMAC_256", "HMAC_384", "HMAC_512", "SM2", "ML_DSA_44", "ML_DSA_65", "ML_DSA_87", "ECC_NIST_EDWARDS25519"
|
|
2567
|
+
# resp.key_metadata.key_spec #=> String, one of "RSA_2048", "RSA_3072", "RSA_4096", "ECC_NIST_P256", "ECC_NIST_P384", "ECC_NIST_P521", "ECC_SECG_P256K1", "SYMMETRIC_DEFAULT", "HMAC_224", "HMAC_256", "HMAC_384", "HMAC_512", "SM2", "ML_DSA_44", "ML_DSA_65", "ML_DSA_87", "ECC_NIST_EDWARDS25519", "ML_KEM_512", "ML_KEM_768", "ML_KEM_1024"
|
|
2556
2568
|
# resp.key_metadata.encryption_algorithms #=> Array
|
|
2557
2569
|
# resp.key_metadata.encryption_algorithms[0] #=> String, one of "SYMMETRIC_DEFAULT", "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256", "SM2PKE"
|
|
2558
2570
|
# resp.key_metadata.signing_algorithms #=> Array
|
|
2559
2571
|
# resp.key_metadata.signing_algorithms[0] #=> String, one of "RSASSA_PSS_SHA_256", "RSASSA_PSS_SHA_384", "RSASSA_PSS_SHA_512", "RSASSA_PKCS1_V1_5_SHA_256", "RSASSA_PKCS1_V1_5_SHA_384", "RSASSA_PKCS1_V1_5_SHA_512", "ECDSA_SHA_256", "ECDSA_SHA_384", "ECDSA_SHA_512", "SM2DSA", "ML_DSA_SHAKE_256", "ED25519_SHA_512", "ED25519_PH_SHA_512"
|
|
2560
2572
|
# resp.key_metadata.key_agreement_algorithms #=> Array
|
|
2561
2573
|
# resp.key_metadata.key_agreement_algorithms[0] #=> String, one of "ECDH"
|
|
2574
|
+
# resp.key_metadata.encapsulation_algorithms #=> Array
|
|
2575
|
+
# resp.key_metadata.encapsulation_algorithms[0] #=> String, one of "ML_KEM"
|
|
2562
2576
|
# resp.key_metadata.multi_region #=> Boolean
|
|
2563
2577
|
# resp.key_metadata.multi_region_configuration.multi_region_key_type #=> String, one of "PRIMARY", "REPLICA"
|
|
2564
2578
|
# resp.key_metadata.multi_region_configuration.primary_key.arn #=> String
|
|
@@ -2581,6 +2595,173 @@ module Aws::KMS
|
|
|
2581
2595
|
req.send_request(options)
|
|
2582
2596
|
end
|
|
2583
2597
|
|
|
2598
|
+
# Recovers the shared secret that was encapsulated with the public key
|
|
2599
|
+
# of an ML-KEM KMS key. Module-Lattice-Based Key-Encapsulation Mechanism
|
|
2600
|
+
# (ML-KEM), specified in [FIPS 203][1] on the NIST website, is a
|
|
2601
|
+
# post-quantum algorithm for establishing a shared secret between two
|
|
2602
|
+
# parties. For an example of how two parties establish a shared secret
|
|
2603
|
+
# over an insecure channel using ML-KEM, see [ML-KEM keys in KMS][2] in
|
|
2604
|
+
# the *Key Management Service Developer Guide*.
|
|
2605
|
+
#
|
|
2606
|
+
# The Decapsulate operation is not available in China Regions.
|
|
2607
|
+
#
|
|
2608
|
+
# `Decapsulate` returns the shared secret as a 32-byte value. You can
|
|
2609
|
+
# use it directly as key material, or run it through a key derivation
|
|
2610
|
+
# function to derive multiple keys and nonces.
|
|
2611
|
+
#
|
|
2612
|
+
# `Decapsulate` returns an `InvalidCiphertextException` when the length
|
|
2613
|
+
# of the `SharedSecretCiphertextBlob` is inconsistent with the ML-KEM
|
|
2614
|
+
# key spec. In all other cases, `Decapsulate` returns a 32-byte
|
|
2615
|
+
# pseudo-random value. This is true even when the
|
|
2616
|
+
# `SharedSecretCiphertextBlob` was created using a different ML-KEM key
|
|
2617
|
+
# or altered from its original value. This behavior is a security
|
|
2618
|
+
# feature called *implicit rejection* that helps protect against
|
|
2619
|
+
# chosen-ciphertext attacks.
|
|
2620
|
+
#
|
|
2621
|
+
# Because a response does not indicate that the ciphertext and key are
|
|
2622
|
+
# valid, confirm the two parties derived the same shared secret before
|
|
2623
|
+
# using it.
|
|
2624
|
+
#
|
|
2625
|
+
# The KMS key that you use for this operation must be in a compatible
|
|
2626
|
+
# key state. For details, see [Key states of KMS keys][3] in the *Key
|
|
2627
|
+
# Management Service Developer Guide*.
|
|
2628
|
+
#
|
|
2629
|
+
# **Cross-account use**: Yes. To perform this operation with a KMS key
|
|
2630
|
+
# in a different Amazon Web Services account, specify the key ARN or
|
|
2631
|
+
# alias ARN in the value of the `KeyId` parameter.
|
|
2632
|
+
#
|
|
2633
|
+
# **Required permissions**: [kms:Decapsulate][4] (key policy)
|
|
2634
|
+
#
|
|
2635
|
+
# **Related operations:**
|
|
2636
|
+
#
|
|
2637
|
+
# * Encapsulate
|
|
2638
|
+
#
|
|
2639
|
+
# * CreateKey
|
|
2640
|
+
#
|
|
2641
|
+
# * GetPublicKey
|
|
2642
|
+
#
|
|
2643
|
+
# * DescribeKey
|
|
2644
|
+
#
|
|
2645
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
|
2646
|
+
# model. For more information, see [KMS eventual consistency][5].
|
|
2647
|
+
#
|
|
2648
|
+
#
|
|
2649
|
+
#
|
|
2650
|
+
# [1]: https://csrc.nist.gov/pubs/fips/203/final
|
|
2651
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/pqkeys.html#mlkem
|
|
2652
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
|
2653
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
|
2654
|
+
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/accessing-kms.html#programming-eventual-consistency
|
|
2655
|
+
#
|
|
2656
|
+
# @option params [required, String] :key_id
|
|
2657
|
+
# Identifies the asymmetric ML-KEM KMS key whose public key was used to
|
|
2658
|
+
# produce the encapsulated shared secret. KMS uses the private key in
|
|
2659
|
+
# the specified key pair to decapsulate the shared secret.
|
|
2660
|
+
#
|
|
2661
|
+
# To specify a KMS key, use its key ID, key ARN, alias name, or alias
|
|
2662
|
+
# ARN. When using an alias name, prefix it with `"alias/"`. To specify a
|
|
2663
|
+
# KMS key in a different Amazon Web Services account, you must use the
|
|
2664
|
+
# key ARN or alias ARN.
|
|
2665
|
+
#
|
|
2666
|
+
# For example:
|
|
2667
|
+
#
|
|
2668
|
+
# * Key ID: `1234abcd-12ab-34cd-56ef-1234567890ab`
|
|
2669
|
+
#
|
|
2670
|
+
# * Key ARN:
|
|
2671
|
+
# `arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`
|
|
2672
|
+
#
|
|
2673
|
+
# * Alias name: `alias/ExampleAlias`
|
|
2674
|
+
#
|
|
2675
|
+
# * Alias ARN: `arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias`
|
|
2676
|
+
#
|
|
2677
|
+
# To get the key ID and key ARN for a KMS key, use ListKeys or
|
|
2678
|
+
# DescribeKey. To get the alias name and alias ARN, use ListAliases.
|
|
2679
|
+
#
|
|
2680
|
+
# @option params [required, String, StringIO, File] :shared_secret_ciphertext_blob
|
|
2681
|
+
# The encapsulated (ciphertext) form of the shared secret to recover.
|
|
2682
|
+
# This is the `SharedSecretCiphertextBlob` value that the Encapsulate
|
|
2683
|
+
# operation returns. When you use the HTTP API or the Amazon Web
|
|
2684
|
+
# Services CLI, the value is Base64-encoded. Otherwise, it is not
|
|
2685
|
+
# Base64-encoded.
|
|
2686
|
+
#
|
|
2687
|
+
# @option params [required, String] :encapsulation_algorithm
|
|
2688
|
+
# Specifies the key encapsulation algorithm used to recover the shared
|
|
2689
|
+
# secret. The only valid value is `ML_KEM`.
|
|
2690
|
+
#
|
|
2691
|
+
# @option params [Array<String>] :grant_tokens
|
|
2692
|
+
# A list of grant tokens.
|
|
2693
|
+
#
|
|
2694
|
+
# Use a grant token when your permission to call this operation comes
|
|
2695
|
+
# from a new grant that has not yet achieved *eventual consistency*. For
|
|
2696
|
+
# more information, see [Grant token][1] and [Using a grant token][2] in
|
|
2697
|
+
# the *Key Management Service Developer Guide*.
|
|
2698
|
+
#
|
|
2699
|
+
#
|
|
2700
|
+
#
|
|
2701
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#grant_token
|
|
2702
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/using-grant-token.html
|
|
2703
|
+
#
|
|
2704
|
+
# @option params [Boolean] :dry_run
|
|
2705
|
+
# Checks if your request will succeed. `DryRun` is an optional
|
|
2706
|
+
# parameter.
|
|
2707
|
+
#
|
|
2708
|
+
# To learn more about how to use this parameter, see [Testing your
|
|
2709
|
+
# permissions][1] in the *Key Management Service Developer Guide*.
|
|
2710
|
+
#
|
|
2711
|
+
#
|
|
2712
|
+
#
|
|
2713
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/testing-permissions.html
|
|
2714
|
+
#
|
|
2715
|
+
# @return [Types::DecapsulateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
|
2716
|
+
#
|
|
2717
|
+
# * {Types::DecapsulateResponse#key_id #key_id} => String
|
|
2718
|
+
# * {Types::DecapsulateResponse#shared_secret #shared_secret} => String
|
|
2719
|
+
# * {Types::DecapsulateResponse#encapsulation_algorithm #encapsulation_algorithm} => String
|
|
2720
|
+
#
|
|
2721
|
+
#
|
|
2722
|
+
# @example Example: To recover a shared secret from its encapsulated ciphertext
|
|
2723
|
+
#
|
|
2724
|
+
# # Recovers a shared secret from its encapsulated ciphertext (SharedSecretCiphertextBlob) using the private key in an
|
|
2725
|
+
# # asymmetric ML-KEM KMS key. Your peer calls Encapsulate to generate the shared secret and ciphertext.
|
|
2726
|
+
#
|
|
2727
|
+
# resp = client.decapsulate({
|
|
2728
|
+
# encapsulation_algorithm: "ML_KEM", # The requested key encapsulation algorithm. The only valid value is ML_KEM.
|
|
2729
|
+
# key_id: "1234abcd-12ab-34cd-56ef-1234567890ab", # The asymmetric ML-KEM KMS key that recovers the shared secret.
|
|
2730
|
+
# shared_secret_ciphertext_blob: "<binary data>", # The encapsulated shared secret that you received from your peer.
|
|
2731
|
+
# })
|
|
2732
|
+
#
|
|
2733
|
+
# resp.to_h outputs the following:
|
|
2734
|
+
# {
|
|
2735
|
+
# encapsulation_algorithm: "ML_KEM", # The key encapsulation algorithm used to recover the shared secret.
|
|
2736
|
+
# key_id: "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", # The key ARN of the asymmetric ML-KEM KMS key that recovered the shared secret.
|
|
2737
|
+
# shared_secret: "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8=", # The raw shared secret. It matches the shared secret that Encapsulate returned to your peer.
|
|
2738
|
+
# }
|
|
2739
|
+
#
|
|
2740
|
+
# @example Request syntax with placeholder values
|
|
2741
|
+
#
|
|
2742
|
+
# resp = client.decapsulate({
|
|
2743
|
+
# key_id: "KeyIdType", # required
|
|
2744
|
+
# shared_secret_ciphertext_blob: "data", # required
|
|
2745
|
+
# encapsulation_algorithm: "ML_KEM", # required, accepts ML_KEM
|
|
2746
|
+
# grant_tokens: ["GrantTokenType"],
|
|
2747
|
+
# dry_run: false,
|
|
2748
|
+
# })
|
|
2749
|
+
#
|
|
2750
|
+
# @example Response structure
|
|
2751
|
+
#
|
|
2752
|
+
# resp.key_id #=> String
|
|
2753
|
+
# resp.shared_secret #=> String
|
|
2754
|
+
# resp.encapsulation_algorithm #=> String, one of "ML_KEM"
|
|
2755
|
+
#
|
|
2756
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/Decapsulate AWS API Documentation
|
|
2757
|
+
#
|
|
2758
|
+
# @overload decapsulate(params = {})
|
|
2759
|
+
# @param [Hash] params ({})
|
|
2760
|
+
def decapsulate(params = {}, options = {})
|
|
2761
|
+
req = build_request(:decapsulate, params)
|
|
2762
|
+
req.send_request(options)
|
|
2763
|
+
end
|
|
2764
|
+
|
|
2584
2765
|
# Decrypts ciphertext that was encrypted by a KMS key using any of the
|
|
2585
2766
|
# following operations:
|
|
2586
2767
|
#
|
|
@@ -4099,7 +4280,7 @@ module Aws::KMS
|
|
|
4099
4280
|
# resp.key_metadata.creation_date #=> Time
|
|
4100
4281
|
# resp.key_metadata.enabled #=> Boolean
|
|
4101
4282
|
# resp.key_metadata.description #=> String
|
|
4102
|
-
# resp.key_metadata.key_usage #=> String, one of "SIGN_VERIFY", "ENCRYPT_DECRYPT", "GENERATE_VERIFY_MAC", "KEY_AGREEMENT"
|
|
4283
|
+
# resp.key_metadata.key_usage #=> String, one of "SIGN_VERIFY", "ENCRYPT_DECRYPT", "GENERATE_VERIFY_MAC", "KEY_AGREEMENT", "ENCAPSULATE_DECAPSULATE"
|
|
4103
4284
|
# resp.key_metadata.key_state #=> String, one of "Creating", "Enabled", "Disabled", "PendingDeletion", "PendingImport", "PendingReplicaDeletion", "Unavailable", "Updating"
|
|
4104
4285
|
# resp.key_metadata.deletion_date #=> Time
|
|
4105
4286
|
# resp.key_metadata.valid_to #=> Time
|
|
@@ -4109,13 +4290,15 @@ module Aws::KMS
|
|
|
4109
4290
|
# resp.key_metadata.expiration_model #=> String, one of "KEY_MATERIAL_EXPIRES", "KEY_MATERIAL_DOES_NOT_EXPIRE"
|
|
4110
4291
|
# resp.key_metadata.key_manager #=> String, one of "AWS", "CUSTOMER"
|
|
4111
4292
|
# resp.key_metadata.customer_master_key_spec #=> String, one of "RSA_2048", "RSA_3072", "RSA_4096", "ECC_NIST_P256", "ECC_NIST_P384", "ECC_NIST_P521", "ECC_SECG_P256K1", "SYMMETRIC_DEFAULT", "HMAC_224", "HMAC_256", "HMAC_384", "HMAC_512", "SM2"
|
|
4112
|
-
# resp.key_metadata.key_spec #=> String, one of "RSA_2048", "RSA_3072", "RSA_4096", "ECC_NIST_P256", "ECC_NIST_P384", "ECC_NIST_P521", "ECC_SECG_P256K1", "SYMMETRIC_DEFAULT", "HMAC_224", "HMAC_256", "HMAC_384", "HMAC_512", "SM2", "ML_DSA_44", "ML_DSA_65", "ML_DSA_87", "ECC_NIST_EDWARDS25519"
|
|
4293
|
+
# resp.key_metadata.key_spec #=> String, one of "RSA_2048", "RSA_3072", "RSA_4096", "ECC_NIST_P256", "ECC_NIST_P384", "ECC_NIST_P521", "ECC_SECG_P256K1", "SYMMETRIC_DEFAULT", "HMAC_224", "HMAC_256", "HMAC_384", "HMAC_512", "SM2", "ML_DSA_44", "ML_DSA_65", "ML_DSA_87", "ECC_NIST_EDWARDS25519", "ML_KEM_512", "ML_KEM_768", "ML_KEM_1024"
|
|
4113
4294
|
# resp.key_metadata.encryption_algorithms #=> Array
|
|
4114
4295
|
# resp.key_metadata.encryption_algorithms[0] #=> String, one of "SYMMETRIC_DEFAULT", "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256", "SM2PKE"
|
|
4115
4296
|
# resp.key_metadata.signing_algorithms #=> Array
|
|
4116
4297
|
# resp.key_metadata.signing_algorithms[0] #=> String, one of "RSASSA_PSS_SHA_256", "RSASSA_PSS_SHA_384", "RSASSA_PSS_SHA_512", "RSASSA_PKCS1_V1_5_SHA_256", "RSASSA_PKCS1_V1_5_SHA_384", "RSASSA_PKCS1_V1_5_SHA_512", "ECDSA_SHA_256", "ECDSA_SHA_384", "ECDSA_SHA_512", "SM2DSA", "ML_DSA_SHAKE_256", "ED25519_SHA_512", "ED25519_PH_SHA_512"
|
|
4117
4298
|
# resp.key_metadata.key_agreement_algorithms #=> Array
|
|
4118
4299
|
# resp.key_metadata.key_agreement_algorithms[0] #=> String, one of "ECDH"
|
|
4300
|
+
# resp.key_metadata.encapsulation_algorithms #=> Array
|
|
4301
|
+
# resp.key_metadata.encapsulation_algorithms[0] #=> String, one of "ML_KEM"
|
|
4119
4302
|
# resp.key_metadata.multi_region #=> Boolean
|
|
4120
4303
|
# resp.key_metadata.multi_region_configuration.multi_region_key_type #=> String, one of "PRIMARY", "REPLICA"
|
|
4121
4304
|
# resp.key_metadata.multi_region_configuration.primary_key.arn #=> String
|
|
@@ -4634,6 +4817,157 @@ module Aws::KMS
|
|
|
4634
4817
|
req.send_request(options)
|
|
4635
4818
|
end
|
|
4636
4819
|
|
|
4820
|
+
# Generates a shared secret and its encapsulated (ciphertext) form using
|
|
4821
|
+
# the public key of an ML-KEM KMS key pair. Module-Lattice-Based
|
|
4822
|
+
# Key-Encapsulation Mechanism (ML-KEM), specified in [FIPS 203][1] on
|
|
4823
|
+
# the NIST website, is a post-quantum algorithm for establishing a
|
|
4824
|
+
# shared secret between two parties.
|
|
4825
|
+
#
|
|
4826
|
+
# For an example of how two parties establish a shared secret over an
|
|
4827
|
+
# insecure channel using ML-KEM, see [ML-KEM keys in KMS][2] in the *Key
|
|
4828
|
+
# Management Service Developer Guide*.
|
|
4829
|
+
#
|
|
4830
|
+
# The Encapsulate operation is not available in China Regions.
|
|
4831
|
+
#
|
|
4832
|
+
# The KMS key that you use for this operation must be in a compatible
|
|
4833
|
+
# key state. For details, see [Key states of KMS keys][3] in the *Key
|
|
4834
|
+
# Management Service Developer Guide*.
|
|
4835
|
+
#
|
|
4836
|
+
# **Cross-account use**: Yes. To perform this operation with a KMS key
|
|
4837
|
+
# in a different Amazon Web Services account, specify the key ARN or
|
|
4838
|
+
# alias ARN in the value of the `KeyId` parameter.
|
|
4839
|
+
#
|
|
4840
|
+
# **Required permissions**: [kms:Encapsulate][4] (key policy)
|
|
4841
|
+
#
|
|
4842
|
+
# **Related operations:**
|
|
4843
|
+
#
|
|
4844
|
+
# * Decapsulate
|
|
4845
|
+
#
|
|
4846
|
+
# * DeriveSharedSecret
|
|
4847
|
+
#
|
|
4848
|
+
# * CreateKey
|
|
4849
|
+
#
|
|
4850
|
+
# * GetPublicKey
|
|
4851
|
+
#
|
|
4852
|
+
# * DescribeKey
|
|
4853
|
+
#
|
|
4854
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
|
4855
|
+
# model. For more information, see [KMS eventual consistency][5].
|
|
4856
|
+
#
|
|
4857
|
+
#
|
|
4858
|
+
#
|
|
4859
|
+
# [1]: https://csrc.nist.gov/pubs/fips/203/final
|
|
4860
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/pqkeys.html#mlkem
|
|
4861
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
|
4862
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
|
4863
|
+
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/accessing-kms.html#programming-eventual-consistency
|
|
4864
|
+
#
|
|
4865
|
+
# @option params [required, String] :key_id
|
|
4866
|
+
# Identifies an asymmetric ML-KEM KMS key. KMS uses the public key in
|
|
4867
|
+
# the specified key pair to encapsulate the shared secret. ML-KEM KMS
|
|
4868
|
+
# keys have a `KeySpec` value of `ML_KEM_512`, `ML_KEM_768`, or
|
|
4869
|
+
# `ML_KEM_1024` and a `KeyUsage` value of `ENCAPSULATE_DECAPSULATE`. To
|
|
4870
|
+
# find the `KeySpec` and `KeyUsage` of a KMS key, use the DescribeKey
|
|
4871
|
+
# operation.
|
|
4872
|
+
#
|
|
4873
|
+
# To specify a KMS key, use its key ID, key ARN, alias name, or alias
|
|
4874
|
+
# ARN. When using an alias name, prefix it with `"alias/"`. To specify a
|
|
4875
|
+
# KMS key in a different Amazon Web Services account, you must use the
|
|
4876
|
+
# key ARN or alias ARN.
|
|
4877
|
+
#
|
|
4878
|
+
# For example:
|
|
4879
|
+
#
|
|
4880
|
+
# * Key ID: `1234abcd-12ab-34cd-56ef-1234567890ab`
|
|
4881
|
+
#
|
|
4882
|
+
# * Key ARN:
|
|
4883
|
+
# `arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`
|
|
4884
|
+
#
|
|
4885
|
+
# * Alias name: `alias/ExampleAlias`
|
|
4886
|
+
#
|
|
4887
|
+
# * Alias ARN: `arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias`
|
|
4888
|
+
#
|
|
4889
|
+
# To get the key ID and key ARN for a KMS key, use ListKeys or
|
|
4890
|
+
# DescribeKey. To get the alias name and alias ARN, use ListAliases.
|
|
4891
|
+
#
|
|
4892
|
+
# @option params [required, String] :encapsulation_algorithm
|
|
4893
|
+
# Specifies the key encapsulation algorithm used to generate the shared
|
|
4894
|
+
# secret and its encapsulated form. The only valid value is `ML_KEM`.
|
|
4895
|
+
#
|
|
4896
|
+
# @option params [Array<String>] :grant_tokens
|
|
4897
|
+
# A list of grant tokens.
|
|
4898
|
+
#
|
|
4899
|
+
# Use a grant token when your permission to call this operation comes
|
|
4900
|
+
# from a new grant that has not yet achieved *eventual consistency*. For
|
|
4901
|
+
# more information, see [Grant token][1] and [Using a grant token][2] in
|
|
4902
|
+
# the *Key Management Service Developer Guide*.
|
|
4903
|
+
#
|
|
4904
|
+
#
|
|
4905
|
+
#
|
|
4906
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#grant_token
|
|
4907
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/using-grant-token.html
|
|
4908
|
+
#
|
|
4909
|
+
# @option params [Boolean] :dry_run
|
|
4910
|
+
# Checks if your request will succeed. `DryRun` is an optional
|
|
4911
|
+
# parameter.
|
|
4912
|
+
#
|
|
4913
|
+
# To learn more about how to use this parameter, see [Testing your
|
|
4914
|
+
# permissions][1] in the *Key Management Service Developer Guide*.
|
|
4915
|
+
#
|
|
4916
|
+
#
|
|
4917
|
+
#
|
|
4918
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/testing-permissions.html
|
|
4919
|
+
#
|
|
4920
|
+
# @return [Types::EncapsulateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
|
4921
|
+
#
|
|
4922
|
+
# * {Types::EncapsulateResponse#key_id #key_id} => String
|
|
4923
|
+
# * {Types::EncapsulateResponse#shared_secret #shared_secret} => String
|
|
4924
|
+
# * {Types::EncapsulateResponse#shared_secret_ciphertext_blob #shared_secret_ciphertext_blob} => String
|
|
4925
|
+
# * {Types::EncapsulateResponse#encapsulation_algorithm #encapsulation_algorithm} => String
|
|
4926
|
+
#
|
|
4927
|
+
#
|
|
4928
|
+
# @example Example: To generate a shared secret and its encapsulated ciphertext
|
|
4929
|
+
#
|
|
4930
|
+
# # Generates a shared secret and its encapsulated ciphertext (SharedSecretCiphertextBlob) using the public key in an
|
|
4931
|
+
# # asymmetric ML-KEM KMS key. Send the ciphertext to your peer, who calls Decapsulate to recover the same shared secret.
|
|
4932
|
+
#
|
|
4933
|
+
# resp = client.encapsulate({
|
|
4934
|
+
# encapsulation_algorithm: "ML_KEM", # The requested key encapsulation algorithm. The only valid value is ML_KEM.
|
|
4935
|
+
# key_id: "1234abcd-12ab-34cd-56ef-1234567890ab", # The asymmetric ML-KEM KMS key that generates the shared secret.
|
|
4936
|
+
# })
|
|
4937
|
+
#
|
|
4938
|
+
# resp.to_h outputs the following:
|
|
4939
|
+
# {
|
|
4940
|
+
# encapsulation_algorithm: "ML_KEM", # The key encapsulation algorithm used to generate the shared secret.
|
|
4941
|
+
# key_id: "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", # The key ARN of the asymmetric ML-KEM KMS key that generated the shared secret.
|
|
4942
|
+
# shared_secret: "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8=", # The raw shared secret.
|
|
4943
|
+
# shared_secret_ciphertext_blob: "<binary data>", # The encapsulated shared secret. Send this ciphertext to your peer, who calls Decapsulate with the same KMS key to recover the same shared secret.
|
|
4944
|
+
# }
|
|
4945
|
+
#
|
|
4946
|
+
# @example Request syntax with placeholder values
|
|
4947
|
+
#
|
|
4948
|
+
# resp = client.encapsulate({
|
|
4949
|
+
# key_id: "KeyIdType", # required
|
|
4950
|
+
# encapsulation_algorithm: "ML_KEM", # required, accepts ML_KEM
|
|
4951
|
+
# grant_tokens: ["GrantTokenType"],
|
|
4952
|
+
# dry_run: false,
|
|
4953
|
+
# })
|
|
4954
|
+
#
|
|
4955
|
+
# @example Response structure
|
|
4956
|
+
#
|
|
4957
|
+
# resp.key_id #=> String
|
|
4958
|
+
# resp.shared_secret #=> String
|
|
4959
|
+
# resp.shared_secret_ciphertext_blob #=> String
|
|
4960
|
+
# resp.encapsulation_algorithm #=> String, one of "ML_KEM"
|
|
4961
|
+
#
|
|
4962
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/Encapsulate AWS API Documentation
|
|
4963
|
+
#
|
|
4964
|
+
# @overload encapsulate(params = {})
|
|
4965
|
+
# @param [Hash] params ({})
|
|
4966
|
+
def encapsulate(params = {}, options = {})
|
|
4967
|
+
req = build_request(:encapsulate, params)
|
|
4968
|
+
req.send_request(options)
|
|
4969
|
+
end
|
|
4970
|
+
|
|
4637
4971
|
# Encrypts plaintext of up to 4,096 bytes using a KMS key. You can use a
|
|
4638
4972
|
# symmetric or asymmetric KMS key with a `KeyUsage` of
|
|
4639
4973
|
# `ENCRYPT_DECRYPT`.
|
|
@@ -5246,6 +5580,12 @@ module Aws::KMS
|
|
|
5246
5580
|
# 5280][1]. The private key is a DER-encoded PKCS8 PrivateKeyInfo, as
|
|
5247
5581
|
# specified in [RFC 5958][2].
|
|
5248
5582
|
#
|
|
5583
|
+
# <note markdown="1"> For ML-KEM data key pairs, the DER-encoded PKCS8 PrivateKeyInfo
|
|
5584
|
+
# contains the private key in seed format. As a result, the length of
|
|
5585
|
+
# the private key is the same for all ML-KEM key pair specs.
|
|
5586
|
+
#
|
|
5587
|
+
# </note>
|
|
5588
|
+
#
|
|
5249
5589
|
# `GenerateDataKeyPair` also supports [Amazon Web Services Nitro
|
|
5250
5590
|
# Enclaves][3], which provide an isolated compute environment in Amazon
|
|
5251
5591
|
# EC2. To call `GenerateDataKeyPair` for an Amazon Web Services Nitro
|
|
@@ -5363,7 +5703,8 @@ module Aws::KMS
|
|
|
5363
5703
|
# that permits you to use ECC KMS keys only to sign and verify, and the
|
|
5364
5704
|
# rule that permits you to use ML-DSA key pairs to sign and verify only
|
|
5365
5705
|
# are not effective on data key pairs, which are used outside of KMS.
|
|
5366
|
-
# The SM2 key spec is only available in China Regions.
|
|
5706
|
+
# The SM2 key spec is only available in China Regions. The ML-KEM key
|
|
5707
|
+
# specs are not available in China Regions.
|
|
5367
5708
|
#
|
|
5368
5709
|
# @option params [Array<String>] :grant_tokens
|
|
5369
5710
|
# A list of grant tokens.
|
|
@@ -5492,7 +5833,7 @@ module Aws::KMS
|
|
|
5492
5833
|
# "EncryptionContextKey" => "EncryptionContextValue",
|
|
5493
5834
|
# },
|
|
5494
5835
|
# key_id: "KeyIdType", # required
|
|
5495
|
-
# key_pair_spec: "RSA_2048", # required, accepts RSA_2048, RSA_3072, RSA_4096, ECC_NIST_P256, ECC_NIST_P384, ECC_NIST_P521, ECC_SECG_P256K1, SM2, ECC_NIST_EDWARDS25519
|
|
5836
|
+
# key_pair_spec: "RSA_2048", # required, accepts RSA_2048, RSA_3072, RSA_4096, ECC_NIST_P256, ECC_NIST_P384, ECC_NIST_P521, ECC_SECG_P256K1, SM2, ECC_NIST_EDWARDS25519, ML_KEM_512, ML_KEM_768, ML_KEM_1024
|
|
5496
5837
|
# grant_tokens: ["GrantTokenType"],
|
|
5497
5838
|
# recipient: {
|
|
5498
5839
|
# key_encryption_algorithm: "RSAES_OAEP_SHA_256", # accepts RSAES_OAEP_SHA_256
|
|
@@ -5507,7 +5848,7 @@ module Aws::KMS
|
|
|
5507
5848
|
# resp.private_key_plaintext #=> String
|
|
5508
5849
|
# resp.public_key #=> String
|
|
5509
5850
|
# resp.key_id #=> String
|
|
5510
|
-
# resp.key_pair_spec #=> String, one of "RSA_2048", "RSA_3072", "RSA_4096", "ECC_NIST_P256", "ECC_NIST_P384", "ECC_NIST_P521", "ECC_SECG_P256K1", "SM2", "ECC_NIST_EDWARDS25519"
|
|
5851
|
+
# resp.key_pair_spec #=> String, one of "RSA_2048", "RSA_3072", "RSA_4096", "ECC_NIST_P256", "ECC_NIST_P384", "ECC_NIST_P521", "ECC_SECG_P256K1", "SM2", "ECC_NIST_EDWARDS25519", "ML_KEM_512", "ML_KEM_768", "ML_KEM_1024"
|
|
5511
5852
|
# resp.ciphertext_for_recipient #=> String
|
|
5512
5853
|
# resp.key_material_id #=> String
|
|
5513
5854
|
#
|
|
@@ -5551,6 +5892,12 @@ module Aws::KMS
|
|
|
5551
5892
|
# a DER-encoded X.509 SubjectPublicKeyInfo, as specified in [RFC
|
|
5552
5893
|
# 5280][1].
|
|
5553
5894
|
#
|
|
5895
|
+
# <note markdown="1"> For ML-KEM data key pairs, the DER-encoded PKCS8 PrivateKeyInfo
|
|
5896
|
+
# contains the private key in seed format. As a result, the length of
|
|
5897
|
+
# the private key is the same for all ML-KEM key pair specs.
|
|
5898
|
+
#
|
|
5899
|
+
# </note>
|
|
5900
|
+
#
|
|
5554
5901
|
# You can use an optional encryption context to add additional security
|
|
5555
5902
|
# to the encryption operation. If you specify an `EncryptionContext`,
|
|
5556
5903
|
# you must specify the same encryption context (a case-sensitive exact
|
|
@@ -5649,7 +5996,8 @@ module Aws::KMS
|
|
|
5649
5996
|
# that permits you to use ECC KMS keys only to sign and verify, and the
|
|
5650
5997
|
# rule that permits you to use ML-DSA key pairs to sign and verify only
|
|
5651
5998
|
# are not effective on data key pairs, which are used outside of KMS.
|
|
5652
|
-
# The SM2 key spec is only available in China Regions.
|
|
5999
|
+
# The SM2 key spec is only available in China Regions. The ML-KEM key
|
|
6000
|
+
# specs are not available in China Regions.
|
|
5653
6001
|
#
|
|
5654
6002
|
# @option params [Array<String>] :grant_tokens
|
|
5655
6003
|
# A list of grant tokens.
|
|
@@ -5710,7 +6058,7 @@ module Aws::KMS
|
|
|
5710
6058
|
# "EncryptionContextKey" => "EncryptionContextValue",
|
|
5711
6059
|
# },
|
|
5712
6060
|
# key_id: "KeyIdType", # required
|
|
5713
|
-
# key_pair_spec: "RSA_2048", # required, accepts RSA_2048, RSA_3072, RSA_4096, ECC_NIST_P256, ECC_NIST_P384, ECC_NIST_P521, ECC_SECG_P256K1, SM2, ECC_NIST_EDWARDS25519
|
|
6061
|
+
# key_pair_spec: "RSA_2048", # required, accepts RSA_2048, RSA_3072, RSA_4096, ECC_NIST_P256, ECC_NIST_P384, ECC_NIST_P521, ECC_SECG_P256K1, SM2, ECC_NIST_EDWARDS25519, ML_KEM_512, ML_KEM_768, ML_KEM_1024
|
|
5714
6062
|
# grant_tokens: ["GrantTokenType"],
|
|
5715
6063
|
# dry_run: false,
|
|
5716
6064
|
# })
|
|
@@ -5720,7 +6068,7 @@ module Aws::KMS
|
|
|
5720
6068
|
# resp.private_key_ciphertext_blob #=> String
|
|
5721
6069
|
# resp.public_key #=> String
|
|
5722
6070
|
# resp.key_id #=> String
|
|
5723
|
-
# resp.key_pair_spec #=> String, one of "RSA_2048", "RSA_3072", "RSA_4096", "ECC_NIST_P256", "ECC_NIST_P384", "ECC_NIST_P521", "ECC_SECG_P256K1", "SM2", "ECC_NIST_EDWARDS25519"
|
|
6071
|
+
# resp.key_pair_spec #=> String, one of "RSA_2048", "RSA_3072", "RSA_4096", "ECC_NIST_P256", "ECC_NIST_P384", "ECC_NIST_P521", "ECC_SECG_P256K1", "SM2", "ECC_NIST_EDWARDS25519", "ML_KEM_512", "ML_KEM_768", "ML_KEM_1024"
|
|
5724
6072
|
# resp.key_material_id #=> String
|
|
5725
6073
|
#
|
|
5726
6074
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/GenerateDataKeyPairWithoutPlaintext AWS API Documentation
|
|
@@ -6283,7 +6631,8 @@ module Aws::KMS
|
|
|
6283
6631
|
# CloudTrail for `DisabledException` entries, as there could be
|
|
6284
6632
|
# infrequent workflows that are dependent on the key. By looking for
|
|
6285
6633
|
# this exception, you can identify potential dependencies and workload
|
|
6286
|
-
# failures before they occur.
|
|
6634
|
+
# failures before they occur. CloudTrail remains the authoritative
|
|
6635
|
+
# source for all API calls made to your key.
|
|
6287
6636
|
#
|
|
6288
6637
|
# </note>
|
|
6289
6638
|
#
|
|
@@ -6364,7 +6713,7 @@ module Aws::KMS
|
|
|
6364
6713
|
# @example Response structure
|
|
6365
6714
|
#
|
|
6366
6715
|
# resp.key_id #=> String
|
|
6367
|
-
# resp.key_last_usage.operation #=> String, one of "Decrypt", "DeriveSharedSecret", "Encrypt", "GenerateDataKey", "GenerateDataKeyPair", "GenerateDataKeyPairWithoutPlaintext", "GenerateDataKeyWithoutPlaintext", "GenerateMac", "ReEncrypt", "Sign", "Verify", "VerifyMac"
|
|
6716
|
+
# resp.key_last_usage.operation #=> String, one of "Decrypt", "DeriveSharedSecret", "Encrypt", "GenerateDataKey", "GenerateDataKeyPair", "GenerateDataKeyPairWithoutPlaintext", "GenerateDataKeyWithoutPlaintext", "GenerateMac", "ReEncrypt", "Sign", "Verify", "VerifyMac", "Encapsulate", "Decapsulate"
|
|
6368
6717
|
# resp.key_last_usage.timestamp #=> Time
|
|
6369
6718
|
# resp.key_last_usage.cloud_trail_event_id #=> String
|
|
6370
6719
|
# resp.key_last_usage.kms_request_id #=> String
|
|
@@ -6985,6 +7334,7 @@ module Aws::KMS
|
|
|
6985
7334
|
# * {Types::GetPublicKeyResponse#encryption_algorithms #encryption_algorithms} => Array<String>
|
|
6986
7335
|
# * {Types::GetPublicKeyResponse#signing_algorithms #signing_algorithms} => Array<String>
|
|
6987
7336
|
# * {Types::GetPublicKeyResponse#key_agreement_algorithms #key_agreement_algorithms} => Array<String>
|
|
7337
|
+
# * {Types::GetPublicKeyResponse#encapsulation_algorithms #encapsulation_algorithms} => Array<String>
|
|
6988
7338
|
#
|
|
6989
7339
|
#
|
|
6990
7340
|
# @example Example: To download the public key of an asymmetric KMS key
|
|
@@ -7021,14 +7371,16 @@ module Aws::KMS
|
|
|
7021
7371
|
# resp.key_id #=> String
|
|
7022
7372
|
# resp.public_key #=> String
|
|
7023
7373
|
# resp.customer_master_key_spec #=> String, one of "RSA_2048", "RSA_3072", "RSA_4096", "ECC_NIST_P256", "ECC_NIST_P384", "ECC_NIST_P521", "ECC_SECG_P256K1", "SYMMETRIC_DEFAULT", "HMAC_224", "HMAC_256", "HMAC_384", "HMAC_512", "SM2"
|
|
7024
|
-
# resp.key_spec #=> String, one of "RSA_2048", "RSA_3072", "RSA_4096", "ECC_NIST_P256", "ECC_NIST_P384", "ECC_NIST_P521", "ECC_SECG_P256K1", "SYMMETRIC_DEFAULT", "HMAC_224", "HMAC_256", "HMAC_384", "HMAC_512", "SM2", "ML_DSA_44", "ML_DSA_65", "ML_DSA_87", "ECC_NIST_EDWARDS25519"
|
|
7025
|
-
# resp.key_usage #=> String, one of "SIGN_VERIFY", "ENCRYPT_DECRYPT", "GENERATE_VERIFY_MAC", "KEY_AGREEMENT"
|
|
7374
|
+
# resp.key_spec #=> String, one of "RSA_2048", "RSA_3072", "RSA_4096", "ECC_NIST_P256", "ECC_NIST_P384", "ECC_NIST_P521", "ECC_SECG_P256K1", "SYMMETRIC_DEFAULT", "HMAC_224", "HMAC_256", "HMAC_384", "HMAC_512", "SM2", "ML_DSA_44", "ML_DSA_65", "ML_DSA_87", "ECC_NIST_EDWARDS25519", "ML_KEM_512", "ML_KEM_768", "ML_KEM_1024"
|
|
7375
|
+
# resp.key_usage #=> String, one of "SIGN_VERIFY", "ENCRYPT_DECRYPT", "GENERATE_VERIFY_MAC", "KEY_AGREEMENT", "ENCAPSULATE_DECAPSULATE"
|
|
7026
7376
|
# resp.encryption_algorithms #=> Array
|
|
7027
7377
|
# resp.encryption_algorithms[0] #=> String, one of "SYMMETRIC_DEFAULT", "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256", "SM2PKE"
|
|
7028
7378
|
# resp.signing_algorithms #=> Array
|
|
7029
7379
|
# resp.signing_algorithms[0] #=> String, one of "RSASSA_PSS_SHA_256", "RSASSA_PSS_SHA_384", "RSASSA_PSS_SHA_512", "RSASSA_PKCS1_V1_5_SHA_256", "RSASSA_PKCS1_V1_5_SHA_384", "RSASSA_PKCS1_V1_5_SHA_512", "ECDSA_SHA_256", "ECDSA_SHA_384", "ECDSA_SHA_512", "SM2DSA", "ML_DSA_SHAKE_256", "ED25519_SHA_512", "ED25519_PH_SHA_512"
|
|
7030
7380
|
# resp.key_agreement_algorithms #=> Array
|
|
7031
7381
|
# resp.key_agreement_algorithms[0] #=> String, one of "ECDH"
|
|
7382
|
+
# resp.encapsulation_algorithms #=> Array
|
|
7383
|
+
# resp.encapsulation_algorithms[0] #=> String, one of "ML_KEM"
|
|
7032
7384
|
#
|
|
7033
7385
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/GetPublicKey AWS API Documentation
|
|
7034
7386
|
#
|
|
@@ -7772,7 +8124,7 @@ module Aws::KMS
|
|
|
7772
8124
|
# resp.grants[0].retiring_principal #=> String
|
|
7773
8125
|
# resp.grants[0].issuing_account #=> String
|
|
7774
8126
|
# resp.grants[0].operations #=> Array
|
|
7775
|
-
# resp.grants[0].operations[0] #=> String, one of "Decrypt", "Encrypt", "GenerateDataKey", "GenerateDataKeyWithoutPlaintext", "ReEncryptFrom", "ReEncryptTo", "Sign", "Verify", "GetPublicKey", "CreateGrant", "RetireGrant", "DescribeKey", "GenerateDataKeyPair", "GenerateDataKeyPairWithoutPlaintext", "GenerateMac", "VerifyMac", "DeriveSharedSecret"
|
|
8127
|
+
# resp.grants[0].operations[0] #=> String, one of "Decrypt", "Encrypt", "GenerateDataKey", "GenerateDataKeyWithoutPlaintext", "ReEncryptFrom", "ReEncryptTo", "Sign", "Verify", "GetPublicKey", "CreateGrant", "RetireGrant", "DescribeKey", "GenerateDataKeyPair", "GenerateDataKeyPairWithoutPlaintext", "GenerateMac", "VerifyMac", "DeriveSharedSecret", "Encapsulate", "Decapsulate"
|
|
7776
8128
|
# resp.grants[0].constraints.encryption_context_subset #=> Hash
|
|
7777
8129
|
# resp.grants[0].constraints.encryption_context_subset["EncryptionContextKey"] #=> String
|
|
7778
8130
|
# resp.grants[0].constraints.encryption_context_equals #=> Hash
|
|
@@ -8468,7 +8820,7 @@ module Aws::KMS
|
|
|
8468
8820
|
# resp.grants[0].retiring_principal #=> String
|
|
8469
8821
|
# resp.grants[0].issuing_account #=> String
|
|
8470
8822
|
# resp.grants[0].operations #=> Array
|
|
8471
|
-
# resp.grants[0].operations[0] #=> String, one of "Decrypt", "Encrypt", "GenerateDataKey", "GenerateDataKeyWithoutPlaintext", "ReEncryptFrom", "ReEncryptTo", "Sign", "Verify", "GetPublicKey", "CreateGrant", "RetireGrant", "DescribeKey", "GenerateDataKeyPair", "GenerateDataKeyPairWithoutPlaintext", "GenerateMac", "VerifyMac", "DeriveSharedSecret"
|
|
8823
|
+
# resp.grants[0].operations[0] #=> String, one of "Decrypt", "Encrypt", "GenerateDataKey", "GenerateDataKeyWithoutPlaintext", "ReEncryptFrom", "ReEncryptTo", "Sign", "Verify", "GetPublicKey", "CreateGrant", "RetireGrant", "DescribeKey", "GenerateDataKeyPair", "GenerateDataKeyPairWithoutPlaintext", "GenerateMac", "VerifyMac", "DeriveSharedSecret", "Encapsulate", "Decapsulate"
|
|
8472
8824
|
# resp.grants[0].constraints.encryption_context_subset #=> Hash
|
|
8473
8825
|
# resp.grants[0].constraints.encryption_context_subset["EncryptionContextKey"] #=> String
|
|
8474
8826
|
# resp.grants[0].constraints.encryption_context_equals #=> Hash
|
|
@@ -9353,7 +9705,7 @@ module Aws::KMS
|
|
|
9353
9705
|
# resp.replica_key_metadata.creation_date #=> Time
|
|
9354
9706
|
# resp.replica_key_metadata.enabled #=> Boolean
|
|
9355
9707
|
# resp.replica_key_metadata.description #=> String
|
|
9356
|
-
# resp.replica_key_metadata.key_usage #=> String, one of "SIGN_VERIFY", "ENCRYPT_DECRYPT", "GENERATE_VERIFY_MAC", "KEY_AGREEMENT"
|
|
9708
|
+
# resp.replica_key_metadata.key_usage #=> String, one of "SIGN_VERIFY", "ENCRYPT_DECRYPT", "GENERATE_VERIFY_MAC", "KEY_AGREEMENT", "ENCAPSULATE_DECAPSULATE"
|
|
9357
9709
|
# resp.replica_key_metadata.key_state #=> String, one of "Creating", "Enabled", "Disabled", "PendingDeletion", "PendingImport", "PendingReplicaDeletion", "Unavailable", "Updating"
|
|
9358
9710
|
# resp.replica_key_metadata.deletion_date #=> Time
|
|
9359
9711
|
# resp.replica_key_metadata.valid_to #=> Time
|
|
@@ -9363,13 +9715,15 @@ module Aws::KMS
|
|
|
9363
9715
|
# resp.replica_key_metadata.expiration_model #=> String, one of "KEY_MATERIAL_EXPIRES", "KEY_MATERIAL_DOES_NOT_EXPIRE"
|
|
9364
9716
|
# resp.replica_key_metadata.key_manager #=> String, one of "AWS", "CUSTOMER"
|
|
9365
9717
|
# resp.replica_key_metadata.customer_master_key_spec #=> String, one of "RSA_2048", "RSA_3072", "RSA_4096", "ECC_NIST_P256", "ECC_NIST_P384", "ECC_NIST_P521", "ECC_SECG_P256K1", "SYMMETRIC_DEFAULT", "HMAC_224", "HMAC_256", "HMAC_384", "HMAC_512", "SM2"
|
|
9366
|
-
# resp.replica_key_metadata.key_spec #=> String, one of "RSA_2048", "RSA_3072", "RSA_4096", "ECC_NIST_P256", "ECC_NIST_P384", "ECC_NIST_P521", "ECC_SECG_P256K1", "SYMMETRIC_DEFAULT", "HMAC_224", "HMAC_256", "HMAC_384", "HMAC_512", "SM2", "ML_DSA_44", "ML_DSA_65", "ML_DSA_87", "ECC_NIST_EDWARDS25519"
|
|
9718
|
+
# resp.replica_key_metadata.key_spec #=> String, one of "RSA_2048", "RSA_3072", "RSA_4096", "ECC_NIST_P256", "ECC_NIST_P384", "ECC_NIST_P521", "ECC_SECG_P256K1", "SYMMETRIC_DEFAULT", "HMAC_224", "HMAC_256", "HMAC_384", "HMAC_512", "SM2", "ML_DSA_44", "ML_DSA_65", "ML_DSA_87", "ECC_NIST_EDWARDS25519", "ML_KEM_512", "ML_KEM_768", "ML_KEM_1024"
|
|
9367
9719
|
# resp.replica_key_metadata.encryption_algorithms #=> Array
|
|
9368
9720
|
# resp.replica_key_metadata.encryption_algorithms[0] #=> String, one of "SYMMETRIC_DEFAULT", "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256", "SM2PKE"
|
|
9369
9721
|
# resp.replica_key_metadata.signing_algorithms #=> Array
|
|
9370
9722
|
# resp.replica_key_metadata.signing_algorithms[0] #=> String, one of "RSASSA_PSS_SHA_256", "RSASSA_PSS_SHA_384", "RSASSA_PSS_SHA_512", "RSASSA_PKCS1_V1_5_SHA_256", "RSASSA_PKCS1_V1_5_SHA_384", "RSASSA_PKCS1_V1_5_SHA_512", "ECDSA_SHA_256", "ECDSA_SHA_384", "ECDSA_SHA_512", "SM2DSA", "ML_DSA_SHAKE_256", "ED25519_SHA_512", "ED25519_PH_SHA_512"
|
|
9371
9723
|
# resp.replica_key_metadata.key_agreement_algorithms #=> Array
|
|
9372
9724
|
# resp.replica_key_metadata.key_agreement_algorithms[0] #=> String, one of "ECDH"
|
|
9725
|
+
# resp.replica_key_metadata.encapsulation_algorithms #=> Array
|
|
9726
|
+
# resp.replica_key_metadata.encapsulation_algorithms[0] #=> String, one of "ML_KEM"
|
|
9373
9727
|
# resp.replica_key_metadata.multi_region #=> Boolean
|
|
9374
9728
|
# resp.replica_key_metadata.multi_region_configuration.multi_region_key_type #=> String, one of "PRIMARY", "REPLICA"
|
|
9375
9729
|
# resp.replica_key_metadata.multi_region_configuration.primary_key.arn #=> String
|
|
@@ -11562,7 +11916,7 @@ module Aws::KMS
|
|
|
11562
11916
|
tracer: tracer
|
|
11563
11917
|
)
|
|
11564
11918
|
context[:gem_name] = 'aws-sdk-kms'
|
|
11565
|
-
context[:gem_version] = '1.
|
|
11919
|
+
context[:gem_version] = '1.136.0'
|
|
11566
11920
|
Seahorse::Client::Request.new(handlers, context)
|
|
11567
11921
|
end
|
|
11568
11922
|
|