aws-sdk-kms 1.112.0 → 1.116.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.
@@ -15,6 +15,7 @@ module Aws::KMS
15
15
  include Seahorse::Model
16
16
 
17
17
  AWSAccountIdType = Shapes::StringShape.new(name: 'AWSAccountIdType')
18
+ AccountIdType = Shapes::StringShape.new(name: 'AccountIdType')
18
19
  AlgorithmSpec = Shapes::StringShape.new(name: 'AlgorithmSpec')
19
20
  AliasList = Shapes::ListShape.new(name: 'AliasList')
20
21
  AliasListEntry = Shapes::StructureShape.new(name: 'AliasListEntry')
@@ -308,6 +309,7 @@ module Aws::KMS
308
309
  CreateCustomKeyStoreRequest.add_member(:xks_proxy_uri_endpoint, Shapes::ShapeRef.new(shape: XksProxyUriEndpointType, location_name: "XksProxyUriEndpoint"))
309
310
  CreateCustomKeyStoreRequest.add_member(:xks_proxy_uri_path, Shapes::ShapeRef.new(shape: XksProxyUriPathType, location_name: "XksProxyUriPath"))
310
311
  CreateCustomKeyStoreRequest.add_member(:xks_proxy_vpc_endpoint_service_name, Shapes::ShapeRef.new(shape: XksProxyVpcEndpointServiceNameType, location_name: "XksProxyVpcEndpointServiceName"))
312
+ CreateCustomKeyStoreRequest.add_member(:xks_proxy_vpc_endpoint_service_owner, Shapes::ShapeRef.new(shape: AccountIdType, location_name: "XksProxyVpcEndpointServiceOwner"))
311
313
  CreateCustomKeyStoreRequest.add_member(:xks_proxy_authentication_credential, Shapes::ShapeRef.new(shape: XksProxyAuthenticationCredentialType, location_name: "XksProxyAuthenticationCredential"))
312
314
  CreateCustomKeyStoreRequest.add_member(:xks_proxy_connectivity, Shapes::ShapeRef.new(shape: XksProxyConnectivityType, location_name: "XksProxyConnectivity"))
313
315
  CreateCustomKeyStoreRequest.struct_class = Types::CreateCustomKeyStoreRequest
@@ -948,6 +950,7 @@ module Aws::KMS
948
950
  UpdateCustomKeyStoreRequest.add_member(:xks_proxy_uri_endpoint, Shapes::ShapeRef.new(shape: XksProxyUriEndpointType, location_name: "XksProxyUriEndpoint"))
949
951
  UpdateCustomKeyStoreRequest.add_member(:xks_proxy_uri_path, Shapes::ShapeRef.new(shape: XksProxyUriPathType, location_name: "XksProxyUriPath"))
950
952
  UpdateCustomKeyStoreRequest.add_member(:xks_proxy_vpc_endpoint_service_name, Shapes::ShapeRef.new(shape: XksProxyVpcEndpointServiceNameType, location_name: "XksProxyVpcEndpointServiceName"))
953
+ UpdateCustomKeyStoreRequest.add_member(:xks_proxy_vpc_endpoint_service_owner, Shapes::ShapeRef.new(shape: AccountIdType, location_name: "XksProxyVpcEndpointServiceOwner"))
951
954
  UpdateCustomKeyStoreRequest.add_member(:xks_proxy_authentication_credential, Shapes::ShapeRef.new(shape: XksProxyAuthenticationCredentialType, location_name: "XksProxyAuthenticationCredential"))
952
955
  UpdateCustomKeyStoreRequest.add_member(:xks_proxy_connectivity, Shapes::ShapeRef.new(shape: XksProxyConnectivityType, location_name: "XksProxyConnectivity"))
953
956
  UpdateCustomKeyStoreRequest.struct_class = Types::UpdateCustomKeyStoreRequest
@@ -1010,6 +1013,7 @@ module Aws::KMS
1010
1013
  XksProxyConfigurationType.add_member(:uri_endpoint, Shapes::ShapeRef.new(shape: XksProxyUriEndpointType, location_name: "UriEndpoint"))
1011
1014
  XksProxyConfigurationType.add_member(:uri_path, Shapes::ShapeRef.new(shape: XksProxyUriPathType, location_name: "UriPath"))
1012
1015
  XksProxyConfigurationType.add_member(:vpc_endpoint_service_name, Shapes::ShapeRef.new(shape: XksProxyVpcEndpointServiceNameType, location_name: "VpcEndpointServiceName"))
1016
+ XksProxyConfigurationType.add_member(:vpc_endpoint_service_owner, Shapes::ShapeRef.new(shape: AccountIdType, location_name: "VpcEndpointServiceOwner"))
1013
1017
  XksProxyConfigurationType.struct_class = Types::XksProxyConfigurationType
1014
1018
 
1015
1019
  XksProxyIncorrectAuthenticationCredentialException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessageType, location_name: "message"))
@@ -1,8 +0,0 @@
1
- # frozen_string_literal: true
2
- # WARNING ABOUT GENERATED CODE
3
- #
4
- # This file is generated. See the contributing for info on making contributions:
5
- # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
6
- #
7
- # WARNING ABOUT GENERATED CODE
8
-
@@ -13,22 +13,22 @@ module Aws::KMS
13
13
  # @!attribute region
14
14
  # The AWS region used to dispatch the request.
15
15
  #
16
- # @return [String]
16
+ # @return [string]
17
17
  #
18
18
  # @!attribute use_dual_stack
19
19
  # When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.
20
20
  #
21
- # @return [Boolean]
21
+ # @return [boolean]
22
22
  #
23
23
  # @!attribute use_fips
24
24
  # When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.
25
25
  #
26
- # @return [Boolean]
26
+ # @return [boolean]
27
27
  #
28
28
  # @!attribute endpoint
29
29
  # Override the endpoint used to send this request
30
30
  #
31
- # @return [String]
31
+ # @return [string]
32
32
  #
33
33
  EndpointParameters = Struct.new(
34
34
  :region,
@@ -485,6 +485,14 @@ module Aws::KMS
485
485
  # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/create-xks-keystore.html#xks-requirements
486
486
  # @return [String]
487
487
  #
488
+ # @!attribute [rw] xks_proxy_vpc_endpoint_service_owner
489
+ # Specifies the Amazon Web Services account ID that owns the Amazon
490
+ # VPC service endpoint for the interface that is used to communicate
491
+ # with your external key store proxy (XKS proxy). This parameter is
492
+ # optional. If not provided, the Amazon Web Services account ID
493
+ # calling the action will be used.
494
+ # @return [String]
495
+ #
488
496
  # @!attribute [rw] xks_proxy_authentication_credential
489
497
  # Specifies an authentication credential for the external key store
490
498
  # proxy (XKS proxy). This parameter is required for all custom key
@@ -549,6 +557,7 @@ module Aws::KMS
549
557
  :xks_proxy_uri_endpoint,
550
558
  :xks_proxy_uri_path,
551
559
  :xks_proxy_vpc_endpoint_service_name,
560
+ :xks_proxy_vpc_endpoint_service_owner,
552
561
  :xks_proxy_authentication_credential,
553
562
  :xks_proxy_connectivity)
554
563
  SENSITIVE = [:key_store_password]
@@ -847,8 +856,11 @@ module Aws::KMS
847
856
  # Determines the [cryptographic operations][1] for which you can use
848
857
  # the KMS key. The default value is `ENCRYPT_DECRYPT`. This parameter
849
858
  # is optional when you are creating a symmetric encryption KMS key;
850
- # otherwise, it is required. You can't change the `KeyUsage` value
851
- # after the KMS key is created.
859
+ # otherwise, it is required. You can't change the [ `KeyUsage` ][2]
860
+ # value after the KMS key is created. Each KMS key can have only one
861
+ # key usage. This follows key usage best practices according to [NIST
862
+ # SP 800-57 Recommendations for Key Management][3], section 5.2, Key
863
+ # usage.
852
864
  #
853
865
  # Select only one valid value.
854
866
  #
@@ -875,6 +887,8 @@ module Aws::KMS
875
887
  #
876
888
  #
877
889
  # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-cryptography.html#cryptographic-operations
890
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html#key-usage
891
+ # [3]: https://csrc.nist.gov/pubs/sp/800/57/pt1/r5/final
878
892
  # @return [String]
879
893
  #
880
894
  # @!attribute [rw] customer_master_key_spec
@@ -1620,30 +1634,32 @@ module Aws::KMS
1620
1634
  #
1621
1635
  # @!attribute [rw] recipient
1622
1636
  # A signed [attestation document][1] from an Amazon Web Services Nitro
1623
- # enclave and the encryption algorithm to use with the enclave's
1624
- # public key. The only valid encryption algorithm is
1625
- # `RSAES_OAEP_SHA_256`.
1637
+ # enclave or NitroTPM, and the encryption algorithm to use with the
1638
+ # public key in the attestation document. The only valid encryption
1639
+ # algorithm is `RSAES_OAEP_SHA_256`.
1626
1640
  #
1627
- # This parameter only supports attestation documents for Amazon Web
1628
- # Services Nitro Enclaves. To include this parameter, use the [Amazon
1629
- # Web Services Nitro Enclaves SDK][2] or any Amazon Web Services SDK.
1641
+ # This parameter supports the [Amazon Web Services Nitro Enclaves
1642
+ # SDK][2] or any Amazon Web Services SDK for Amazon Web Services Nitro
1643
+ # Enclaves. It supports any Amazon Web Services SDK for Amazon Web
1644
+ # Services NitroTPM.
1630
1645
  #
1631
1646
  # When you use this parameter, instead of returning the plaintext
1632
1647
  # data, KMS encrypts the plaintext data with the public key in the
1633
1648
  # attestation document, and returns the resulting ciphertext in the
1634
1649
  # `CiphertextForRecipient` field in the response. This ciphertext can
1635
- # be decrypted only with the private key in the enclave. The
1636
- # `Plaintext` field in the response is null or empty.
1650
+ # be decrypted only with the private key in the attested environment.
1651
+ # The `Plaintext` field in the response is null or empty.
1637
1652
  #
1638
1653
  # For information about the interaction between KMS and Amazon Web
1639
- # Services Nitro Enclaves, see [How Amazon Web Services Nitro Enclaves
1640
- # uses KMS][3] in the *Key Management Service Developer Guide*.
1654
+ # Services Nitro Enclaves or Amazon Web Services NitroTPM, see
1655
+ # [Cryptographic attestation support in KMS][3] in the *Key Management
1656
+ # Service Developer Guide*.
1641
1657
  #
1642
1658
  #
1643
1659
  #
1644
1660
  # [1]: https://docs.aws.amazon.com/enclaves/latest/user/nitro-enclave-concepts.html#term-attestdoc
1645
1661
  # [2]: https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk
1646
- # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
1662
+ # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html
1647
1663
  # @return [Types::RecipientInfo]
1648
1664
  #
1649
1665
  # @!attribute [rw] dry_run
@@ -1695,19 +1711,21 @@ module Aws::KMS
1695
1711
  # @return [String]
1696
1712
  #
1697
1713
  # @!attribute [rw] ciphertext_for_recipient
1698
- # The plaintext data encrypted with the public key in the attestation
1699
- # document.
1714
+ # The plaintext data encrypted with the public key from the
1715
+ # attestation document. This ciphertext can be decrypted only by using
1716
+ # a private key from the attested environment.
1700
1717
  #
1701
1718
  # This field is included in the response only when the `Recipient`
1702
1719
  # parameter in the request includes a valid attestation document from
1703
- # an Amazon Web Services Nitro enclave. For information about the
1704
- # interaction between KMS and Amazon Web Services Nitro Enclaves, see
1705
- # [How Amazon Web Services Nitro Enclaves uses KMS][1] in the *Key
1706
- # Management Service Developer Guide*.
1720
+ # an Amazon Web Services Nitro enclave or NitroTPM. For information
1721
+ # about the interaction between KMS and Amazon Web Services Nitro
1722
+ # Enclaves or Amazon Web Services NitroTPM, see [Cryptographic
1723
+ # attestation support in KMS][1] in the *Key Management Service
1724
+ # Developer Guide*.
1707
1725
  #
1708
1726
  #
1709
1727
  #
1710
- # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
1728
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html
1711
1729
  # @return [String]
1712
1730
  #
1713
1731
  # @!attribute [rw] key_material_id
@@ -1917,37 +1935,41 @@ module Aws::KMS
1917
1935
  #
1918
1936
  # @!attribute [rw] recipient
1919
1937
  # A signed [attestation document][1] from an Amazon Web Services Nitro
1920
- # enclave and the encryption algorithm to use with the enclave's
1921
- # public key. The only valid encryption algorithm is
1922
- # `RSAES_OAEP_SHA_256`.
1938
+ # enclave or NitroTPM, and the encryption algorithm to use with the
1939
+ # public key in the attestation document. The only valid encryption
1940
+ # algorithm is `RSAES_OAEP_SHA_256`.
1923
1941
  #
1924
1942
  # This parameter only supports attestation documents for Amazon Web
1925
- # Services Nitro Enclaves. To call DeriveSharedSecret for an Amazon
1926
- # Web Services Nitro Enclaves, use the [Amazon Web Services Nitro
1927
- # Enclaves SDK][2] to generate the attestation document and then use
1928
- # the Recipient parameter from any Amazon Web Services SDK to provide
1929
- # the attestation document for the enclave.
1943
+ # Services Nitro Enclaves or Amazon Web Services NitroTPM. To call
1944
+ # DeriveSharedSecret generate an attestation document use either
1945
+ # [Amazon Web Services Nitro Enclaves SDK][2] for an Amazon Web
1946
+ # Services Nitro Enclaves or [Amazon Web Services NitroTPM tools][3]
1947
+ # for Amazon Web Services NitroTPM. Then use the Recipient parameter
1948
+ # from any Amazon Web Services SDK to provide the attestation document
1949
+ # for the attested environment.
1930
1950
  #
1931
1951
  # When you use this parameter, instead of returning a plaintext copy
1932
1952
  # of the shared secret, KMS encrypts the plaintext shared secret under
1933
1953
  # the public key in the attestation document, and returns the
1934
1954
  # resulting ciphertext in the `CiphertextForRecipient` field in the
1935
1955
  # response. This ciphertext can be decrypted only with the private key
1936
- # in the enclave. The `CiphertextBlob` field in the response contains
1937
- # the encrypted shared secret derived from the KMS key specified by
1938
- # the `KeyId` parameter and public key specified by the `PublicKey`
1939
- # parameter. The `SharedSecret` field in the response is null or
1940
- # empty.
1956
+ # in the attested environment. The `CiphertextBlob` field in the
1957
+ # response contains the encrypted shared secret derived from the KMS
1958
+ # key specified by the `KeyId` parameter and public key specified by
1959
+ # the `PublicKey` parameter. The `SharedSecret` field in the response
1960
+ # is null or empty.
1941
1961
  #
1942
1962
  # For information about the interaction between KMS and Amazon Web
1943
- # Services Nitro Enclaves, see [How Amazon Web Services Nitro Enclaves
1944
- # uses KMS][3] in the *Key Management Service Developer Guide*.
1963
+ # Services Nitro Enclaves or Amazon Web Services NitroTPM, see
1964
+ # [Cryptographic attestation support in KMS][4] in the *Key Management
1965
+ # Service Developer Guide*.
1945
1966
  #
1946
1967
  #
1947
1968
  #
1948
1969
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave-how.html#term-attestdoc
1949
1970
  # [2]: https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk
1950
- # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
1971
+ # [3]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/attestation-get-doc.html
1972
+ # [4]: https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html
1951
1973
  # @return [Types::RecipientInfo]
1952
1974
  #
1953
1975
  # @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/DeriveSharedSecretRequest AWS API Documentation
@@ -1976,19 +1998,21 @@ module Aws::KMS
1976
1998
  # @return [String]
1977
1999
  #
1978
2000
  # @!attribute [rw] ciphertext_for_recipient
1979
- # The plaintext shared secret encrypted with the public key in the
1980
- # attestation document.
2001
+ # The plaintext shared secret encrypted with the public key from the
2002
+ # attestation document. This ciphertext can be decrypted only by using
2003
+ # a private key from the attested environment.
1981
2004
  #
1982
2005
  # This field is included in the response only when the `Recipient`
1983
2006
  # parameter in the request includes a valid attestation document from
1984
- # an Amazon Web Services Nitro enclave. For information about the
1985
- # interaction between KMS and Amazon Web Services Nitro Enclaves, see
1986
- # [How Amazon Web Services Nitro Enclaves uses KMS][1] in the *Key
1987
- # Management Service Developer Guide*.
2007
+ # an Amazon Web Services Nitro enclave or NitroTPM. For information
2008
+ # about the interaction between KMS and Amazon Web Services Nitro
2009
+ # Enclaves or Amazon Web Services NitroTPM, see [Cryptographic
2010
+ # attestation support in KMS][1] in the *Key Management Service
2011
+ # Developer Guide*.
1988
2012
  #
1989
2013
  #
1990
2014
  #
1991
- # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
2015
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html
1992
2016
  # @return [String]
1993
2017
  #
1994
2018
  # @!attribute [rw] key_agreement_algorithm
@@ -2573,36 +2597,40 @@ module Aws::KMS
2573
2597
  #
2574
2598
  # @!attribute [rw] recipient
2575
2599
  # A signed [attestation document][1] from an Amazon Web Services Nitro
2576
- # enclave and the encryption algorithm to use with the enclave's
2577
- # public key. The only valid encryption algorithm is
2578
- # `RSAES_OAEP_SHA_256`.
2600
+ # enclave or NitroTPM, and the encryption algorithm to use with the
2601
+ # public key in the attestation document. The only valid encryption
2602
+ # algorithm is `RSAES_OAEP_SHA_256`.
2579
2603
  #
2580
2604
  # This parameter only supports attestation documents for Amazon Web
2581
- # Services Nitro Enclaves. To call DeriveSharedSecret for an Amazon
2582
- # Web Services Nitro Enclaves, use the [Amazon Web Services Nitro
2583
- # Enclaves SDK][2] to generate the attestation document and then use
2584
- # the Recipient parameter from any Amazon Web Services SDK to provide
2585
- # the attestation document for the enclave.
2605
+ # Services Nitro Enclaves or Amazon Web Services NitroTPM. To call
2606
+ # GenerateDataKeyPair generate an attestation document use either
2607
+ # [Amazon Web Services Nitro Enclaves SDK][2] for an Amazon Web
2608
+ # Services Nitro Enclaves or [Amazon Web Services NitroTPM tools][3]
2609
+ # for Amazon Web Services NitroTPM. Then use the Recipient parameter
2610
+ # from any Amazon Web Services SDK to provide the attestation document
2611
+ # for the attested environment.
2586
2612
  #
2587
2613
  # When you use this parameter, instead of returning a plaintext copy
2588
2614
  # of the private data key, KMS encrypts the plaintext private data key
2589
2615
  # under the public key in the attestation document, and returns the
2590
2616
  # resulting ciphertext in the `CiphertextForRecipient` field in the
2591
2617
  # response. This ciphertext can be decrypted only with the private key
2592
- # in the enclave. The `CiphertextBlob` field in the response contains
2593
- # a copy of the private data key encrypted under the KMS key specified
2594
- # by the `KeyId` parameter. The `PrivateKeyPlaintext` field in the
2595
- # response is null or empty.
2618
+ # in the attested environment. The `CiphertextBlob` field in the
2619
+ # response contains a copy of the private data key encrypted under the
2620
+ # KMS key specified by the `KeyId` parameter. The
2621
+ # `PrivateKeyPlaintext` field in the response is null or empty.
2596
2622
  #
2597
2623
  # For information about the interaction between KMS and Amazon Web
2598
- # Services Nitro Enclaves, see [How Amazon Web Services Nitro Enclaves
2599
- # uses KMS][3] in the *Key Management Service Developer Guide*.
2624
+ # Services Nitro Enclaves or Amazon Web Services NitroTPM, see
2625
+ # [Cryptographic attestation support in KMS][4] in the *Key Management
2626
+ # Service Developer Guide*.
2600
2627
  #
2601
2628
  #
2602
2629
  #
2603
2630
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave-how.html#term-attestdoc
2604
2631
  # [2]: https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk
2605
- # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
2632
+ # [3]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/attestation-get-doc.html
2633
+ # [4]: https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html
2606
2634
  # @return [Types::RecipientInfo]
2607
2635
  #
2608
2636
  # @!attribute [rw] dry_run
@@ -2666,19 +2694,20 @@ module Aws::KMS
2666
2694
  #
2667
2695
  # @!attribute [rw] ciphertext_for_recipient
2668
2696
  # The plaintext private data key encrypted with the public key from
2669
- # the Nitro enclave. This ciphertext can be decrypted only by using a
2670
- # private key in the Nitro enclave.
2697
+ # the attestation document. This ciphertext can be decrypted only by
2698
+ # using a private key from the attested environment.
2671
2699
  #
2672
2700
  # This field is included in the response only when the `Recipient`
2673
2701
  # parameter in the request includes a valid attestation document from
2674
- # an Amazon Web Services Nitro enclave. For information about the
2675
- # interaction between KMS and Amazon Web Services Nitro Enclaves, see
2676
- # [How Amazon Web Services Nitro Enclaves uses KMS][1] in the *Key
2677
- # Management Service Developer Guide*.
2702
+ # an Amazon Web Services Nitro enclave or NitroTPM. For information
2703
+ # about the interaction between KMS and Amazon Web Services Nitro
2704
+ # Enclaves or Amazon Web Services NitroTPM, see [Cryptographic
2705
+ # attestation support in KMS][1] in the *Key Management Service
2706
+ # Developer Guide*.
2678
2707
  #
2679
2708
  #
2680
2709
  #
2681
- # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
2710
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html
2682
2711
  # @return [String]
2683
2712
  #
2684
2713
  # @!attribute [rw] key_material_id
@@ -2927,13 +2956,14 @@ module Aws::KMS
2927
2956
  #
2928
2957
  # @!attribute [rw] recipient
2929
2958
  # A signed [attestation document][1] from an Amazon Web Services Nitro
2930
- # enclave and the encryption algorithm to use with the enclave's
2931
- # public key. The only valid encryption algorithm is
2932
- # `RSAES_OAEP_SHA_256`.
2959
+ # enclave or NitroTPM, and the encryption algorithm to use with the
2960
+ # public key in the attestation document. The only valid encryption
2961
+ # algorithm is `RSAES_OAEP_SHA_256`.
2933
2962
  #
2934
- # This parameter only supports attestation documents for Amazon Web
2935
- # Services Nitro Enclaves. To include this parameter, use the [Amazon
2936
- # Web Services Nitro Enclaves SDK][2] or any Amazon Web Services SDK.
2963
+ # This parameter supports the [Amazon Web Services Nitro Enclaves
2964
+ # SDK][2] or any Amazon Web Services SDK for Amazon Web Services Nitro
2965
+ # Enclaves. It supports any Amazon Web Services SDK for Amazon Web
2966
+ # Services NitroTPM.
2937
2967
  #
2938
2968
  # When you use this parameter, instead of returning the plaintext data
2939
2969
  # key, KMS encrypts the plaintext data key under the public key in the
@@ -2945,14 +2975,15 @@ module Aws::KMS
2945
2975
  # The `Plaintext` field in the response is null or empty.
2946
2976
  #
2947
2977
  # For information about the interaction between KMS and Amazon Web
2948
- # Services Nitro Enclaves, see [How Amazon Web Services Nitro Enclaves
2949
- # uses KMS][3] in the *Key Management Service Developer Guide*.
2978
+ # Services Nitro Enclaves or Amazon Web Services NitroTPM, see
2979
+ # [Cryptographic attestation support in KMS][3] in the *Key Management
2980
+ # Service Developer Guide*.
2950
2981
  #
2951
2982
  #
2952
2983
  #
2953
2984
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave-how.html#term-attestdoc
2954
2985
  # [2]: https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk
2955
- # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
2986
+ # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html
2956
2987
  # @return [Types::RecipientInfo]
2957
2988
  #
2958
2989
  # @!attribute [rw] dry_run
@@ -3007,20 +3038,21 @@ module Aws::KMS
3007
3038
  # @return [String]
3008
3039
  #
3009
3040
  # @!attribute [rw] ciphertext_for_recipient
3010
- # The plaintext data key encrypted with the public key from the Nitro
3011
- # enclave. This ciphertext can be decrypted only by using a private
3012
- # key in the Nitro enclave.
3041
+ # The plaintext data key encrypted with the public key from the
3042
+ # attestation document. This ciphertext can be decrypted only by using
3043
+ # a private key from the attested environment.
3013
3044
  #
3014
3045
  # This field is included in the response only when the `Recipient`
3015
3046
  # parameter in the request includes a valid attestation document from
3016
- # an Amazon Web Services Nitro enclave. For information about the
3017
- # interaction between KMS and Amazon Web Services Nitro Enclaves, see
3018
- # [How Amazon Web Services Nitro Enclaves uses KMS][1] in the *Key
3019
- # Management Service Developer Guide*.
3047
+ # an Amazon Web Services Nitro enclave or NitroTPM. For information
3048
+ # about the interaction between KMS and Amazon Web Services Nitro
3049
+ # Enclaves or Amazon Web Services NitroTPM, see [Cryptographic
3050
+ # attestation support in KMS][1] in the *Key Management Service
3051
+ # Developer Guide*.
3020
3052
  #
3021
3053
  #
3022
3054
  #
3023
- # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
3055
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html
3024
3056
  # @return [String]
3025
3057
  #
3026
3058
  # @!attribute [rw] key_material_id
@@ -3284,30 +3316,32 @@ module Aws::KMS
3284
3316
  #
3285
3317
  # @!attribute [rw] recipient
3286
3318
  # A signed [attestation document][1] from an Amazon Web Services Nitro
3287
- # enclave and the encryption algorithm to use with the enclave's
3288
- # public key. The only valid encryption algorithm is
3289
- # `RSAES_OAEP_SHA_256`.
3319
+ # enclave or NitroTPM, and the encryption algorithm to use with the
3320
+ # public key in the attestation document. The only valid encryption
3321
+ # algorithm is `RSAES_OAEP_SHA_256`.
3290
3322
  #
3291
- # This parameter only supports attestation documents for Amazon Web
3292
- # Services Nitro Enclaves. To include this parameter, use the [Amazon
3293
- # Web Services Nitro Enclaves SDK][2] or any Amazon Web Services SDK.
3323
+ # This parameter supports the [Amazon Web Services Nitro Enclaves
3324
+ # SDK][2] or any Amazon Web Services SDK for Amazon Web Services Nitro
3325
+ # Enclaves. It supports any Amazon Web Services SDK for Amazon Web
3326
+ # Services NitroTPM.
3294
3327
  #
3295
3328
  # When you use this parameter, instead of returning plaintext bytes,
3296
3329
  # KMS encrypts the plaintext bytes under the public key in the
3297
3330
  # attestation document, and returns the resulting ciphertext in the
3298
3331
  # `CiphertextForRecipient` field in the response. This ciphertext can
3299
- # be decrypted only with the private key in the enclave. The
3300
- # `Plaintext` field in the response is null or empty.
3332
+ # be decrypted only with the private key in the attested environment.
3333
+ # The `Plaintext` field in the response is null or empty.
3301
3334
  #
3302
3335
  # For information about the interaction between KMS and Amazon Web
3303
- # Services Nitro Enclaves, see [How Amazon Web Services Nitro Enclaves
3304
- # uses KMS][3] in the *Key Management Service Developer Guide*.
3336
+ # Services Nitro Enclaves or Amazon Web Services NitroTPM, see
3337
+ # [Cryptographic attestation support in KMS][3] in the *Key Management
3338
+ # Service Developer Guide*.
3305
3339
  #
3306
3340
  #
3307
3341
  #
3308
3342
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave-how.html#term-attestdoc
3309
3343
  # [2]: https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk
3310
- # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
3344
+ # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html
3311
3345
  # @return [Types::RecipientInfo]
3312
3346
  #
3313
3347
  # @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/GenerateRandomRequest AWS API Documentation
@@ -3331,19 +3365,20 @@ module Aws::KMS
3331
3365
  #
3332
3366
  # @!attribute [rw] ciphertext_for_recipient
3333
3367
  # The plaintext random bytes encrypted with the public key from the
3334
- # Nitro enclave. This ciphertext can be decrypted only by using a
3335
- # private key in the Nitro enclave.
3368
+ # attestation document. This ciphertext can be decrypted only by using
3369
+ # a private key from the attested environment.
3336
3370
  #
3337
3371
  # This field is included in the response only when the `Recipient`
3338
3372
  # parameter in the request includes a valid attestation document from
3339
- # an Amazon Web Services Nitro enclave. For information about the
3340
- # interaction between KMS and Amazon Web Services Nitro Enclaves, see
3341
- # [How Amazon Web Services Nitro Enclaves uses KMS][1] in the *Key
3342
- # Management Service Developer Guide*.
3373
+ # an Amazon Web Services Nitro enclave or NitroTPM. For information
3374
+ # about the interaction between KMS and Amazon Web Services Nitro
3375
+ # Enclaves or Amazon Web Services NitroTPM, see [Cryptographic
3376
+ # attestation support in KMS][1] in the *Key Management Service
3377
+ # Developer Guide*.
3343
3378
  #
3344
3379
  #
3345
3380
  #
3346
- # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
3381
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html
3347
3382
  # @return [String]
3348
3383
  #
3349
3384
  # @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/GenerateRandomResponse AWS API Documentation
@@ -5524,24 +5559,26 @@ module Aws::KMS
5524
5559
  # the API operation.
5525
5560
  #
5526
5561
  # This data type is designed to support Amazon Web Services Nitro
5527
- # Enclaves, which lets you create an isolated compute environment in
5528
- # Amazon EC2. For information about the interaction between KMS and
5529
- # Amazon Web Services Nitro Enclaves, see [How Amazon Web Services Nitro
5530
- # Enclaves uses KMS][1] in the *Key Management Service Developer Guide*.
5562
+ # Enclaves and Amazon Web Services NitroTPM, which lets you create an
5563
+ # attested environment in Amazon EC2. For information about the
5564
+ # interaction between KMS and Amazon Web Services Nitro Enclaves or
5565
+ # Amazon Web Services NitroTPM, see [Cryptographic attestation support
5566
+ # in KMS][1] in the *Key Management Service Developer Guide*.
5531
5567
  #
5532
5568
  #
5533
5569
  #
5534
- # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
5570
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html
5535
5571
  #
5536
5572
  # @!attribute [rw] key_encryption_algorithm
5537
5573
  # The encryption algorithm that KMS should use with the public key for
5538
- # an Amazon Web Services Nitro Enclave to encrypt plaintext values for
5539
- # the response. The only valid value is `RSAES_OAEP_SHA_256`.
5574
+ # an Amazon Web Services Nitro Enclave or NitroTPM to encrypt
5575
+ # plaintext values for the response. The only valid value is
5576
+ # `RSAES_OAEP_SHA_256`.
5540
5577
  # @return [String]
5541
5578
  #
5542
5579
  # @!attribute [rw] attestation_document
5543
- # The attestation document for an Amazon Web Services Nitro Enclave.
5544
- # This document includes the enclave's public key.
5580
+ # The attestation document for an Amazon Web Services Nitro Enclave or
5581
+ # a NitroTPM. This document includes the enclave's public key.
5545
5582
  # @return [String]
5546
5583
  #
5547
5584
  # @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/RecipientInfo AWS API Documentation
@@ -6568,6 +6605,16 @@ module Aws::KMS
6568
6605
  # To change this value, the external key store must be disconnected.
6569
6606
  # @return [String]
6570
6607
  #
6608
+ # @!attribute [rw] xks_proxy_vpc_endpoint_service_owner
6609
+ # Changes the Amazon Web Services account ID that KMS uses to identify
6610
+ # the Amazon VPC endpoint service for your external key store proxy
6611
+ # (XKS proxy). This parameter is optional. If not specified, the
6612
+ # current Amazon Web Services account ID for the VPC endpoint service
6613
+ # will not be updated.
6614
+ #
6615
+ # To change this value, the external key store must be disconnected.
6616
+ # @return [String]
6617
+ #
6571
6618
  # @!attribute [rw] xks_proxy_authentication_credential
6572
6619
  # Changes the credentials that KMS uses to sign requests to the
6573
6620
  # external key store proxy (XKS proxy). This parameter is valid only
@@ -6615,6 +6662,7 @@ module Aws::KMS
6615
6662
  :xks_proxy_uri_endpoint,
6616
6663
  :xks_proxy_uri_path,
6617
6664
  :xks_proxy_vpc_endpoint_service_name,
6665
+ :xks_proxy_vpc_endpoint_service_owner,
6618
6666
  :xks_proxy_authentication_credential,
6619
6667
  :xks_proxy_connectivity)
6620
6668
  SENSITIVE = [:key_store_password]
@@ -7113,6 +7161,13 @@ module Aws::KMS
7113
7161
  # with KMS.
7114
7162
  # @return [String]
7115
7163
  #
7164
+ # @!attribute [rw] vpc_endpoint_service_owner
7165
+ # The Amazon Web Services account ID that owns the Amazon VPC endpoint
7166
+ # service used to communicate with the external key store proxy (XKS).
7167
+ # This field appears only when the XKS uses an VPC endpoint service to
7168
+ # communicate with KMS.
7169
+ # @return [String]
7170
+ #
7116
7171
  # @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/XksProxyConfigurationType AWS API Documentation
7117
7172
  #
7118
7173
  class XksProxyConfigurationType < Struct.new(
@@ -7120,7 +7175,8 @@ module Aws::KMS
7120
7175
  :access_key_id,
7121
7176
  :uri_endpoint,
7122
7177
  :uri_path,
7123
- :vpc_endpoint_service_name)
7178
+ :vpc_endpoint_service_name,
7179
+ :vpc_endpoint_service_owner)
7124
7180
  SENSITIVE = [:access_key_id]
7125
7181
  include Aws::Structure
7126
7182
  end
data/lib/aws-sdk-kms.rb CHANGED
@@ -54,7 +54,7 @@ module Aws::KMS
54
54
  autoload :EndpointProvider, 'aws-sdk-kms/endpoint_provider'
55
55
  autoload :Endpoints, 'aws-sdk-kms/endpoints'
56
56
 
57
- GEM_VERSION = '1.112.0'
57
+ GEM_VERSION = '1.116.0'
58
58
 
59
59
  end
60
60
 
data/sig/client.rbs CHANGED
@@ -119,6 +119,7 @@ module Aws
119
119
  ?xks_proxy_uri_endpoint: ::String,
120
120
  ?xks_proxy_uri_path: ::String,
121
121
  ?xks_proxy_vpc_endpoint_service_name: ::String,
122
+ ?xks_proxy_vpc_endpoint_service_owner: ::String,
122
123
  ?xks_proxy_authentication_credential: {
123
124
  access_key_id: ::String,
124
125
  raw_secret_access_key: ::String
@@ -764,6 +765,7 @@ module Aws
764
765
  ?xks_proxy_uri_endpoint: ::String,
765
766
  ?xks_proxy_uri_path: ::String,
766
767
  ?xks_proxy_vpc_endpoint_service_name: ::String,
768
+ ?xks_proxy_vpc_endpoint_service_owner: ::String,
767
769
  ?xks_proxy_authentication_credential: {
768
770
  access_key_id: ::String,
769
771
  raw_secret_access_key: ::String
data/sig/types.rbs CHANGED
@@ -85,6 +85,7 @@ module Aws::KMS
85
85
  attr_accessor xks_proxy_uri_endpoint: ::String
86
86
  attr_accessor xks_proxy_uri_path: ::String
87
87
  attr_accessor xks_proxy_vpc_endpoint_service_name: ::String
88
+ attr_accessor xks_proxy_vpc_endpoint_service_owner: ::String
88
89
  attr_accessor xks_proxy_authentication_credential: Types::XksProxyAuthenticationCredentialType
89
90
  attr_accessor xks_proxy_connectivity: ("PUBLIC_ENDPOINT" | "VPC_ENDPOINT_SERVICE")
90
91
  SENSITIVE: [:key_store_password]
@@ -926,6 +927,7 @@ module Aws::KMS
926
927
  attr_accessor xks_proxy_uri_endpoint: ::String
927
928
  attr_accessor xks_proxy_uri_path: ::String
928
929
  attr_accessor xks_proxy_vpc_endpoint_service_name: ::String
930
+ attr_accessor xks_proxy_vpc_endpoint_service_owner: ::String
929
931
  attr_accessor xks_proxy_authentication_credential: Types::XksProxyAuthenticationCredentialType
930
932
  attr_accessor xks_proxy_connectivity: ("PUBLIC_ENDPOINT" | "VPC_ENDPOINT_SERVICE")
931
933
  SENSITIVE: [:key_store_password]
@@ -1013,6 +1015,7 @@ module Aws::KMS
1013
1015
  attr_accessor uri_endpoint: ::String
1014
1016
  attr_accessor uri_path: ::String
1015
1017
  attr_accessor vpc_endpoint_service_name: ::String
1018
+ attr_accessor vpc_endpoint_service_owner: ::String
1016
1019
  SENSITIVE: [:access_key_id]
1017
1020
  end
1018
1021