aws-sdk-kms 1.76.0 → 1.88.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 +60 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-kms/client.rb +771 -119
- data/lib/aws-sdk-kms/client_api.rb +130 -2
- data/lib/aws-sdk-kms/endpoints.rb +42 -0
- data/lib/aws-sdk-kms/errors.rb +16 -0
- data/lib/aws-sdk-kms/plugins/endpoints.rb +7 -0
- data/lib/aws-sdk-kms/types.rb +472 -36
- data/lib/aws-sdk-kms.rb +1 -1
- data/sig/client.rbs +802 -0
- data/sig/errors.rbs +160 -0
- data/sig/resource.rbs +81 -0
- data/sig/types.rbs +1036 -0
- data/sig/waiters.rbs +13 -0
- metadata +15 -10
data/lib/aws-sdk-kms/types.rb
CHANGED
@@ -242,6 +242,21 @@ module Aws::KMS
|
|
242
242
|
include Aws::Structure
|
243
243
|
end
|
244
244
|
|
245
|
+
# The request was rejected because an automatic rotation of this key is
|
246
|
+
# currently in progress or scheduled to begin within the next 20
|
247
|
+
# minutes.
|
248
|
+
#
|
249
|
+
# @!attribute [rw] message
|
250
|
+
# @return [String]
|
251
|
+
#
|
252
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/ConflictException AWS API Documentation
|
253
|
+
#
|
254
|
+
class ConflictException < Struct.new(
|
255
|
+
:message)
|
256
|
+
SENSITIVE = []
|
257
|
+
include Aws::Structure
|
258
|
+
end
|
259
|
+
|
245
260
|
# @!attribute [rw] custom_key_store_id
|
246
261
|
# Enter the key store ID of the custom key store that you want to
|
247
262
|
# connect. To find the ID of a custom key store, use the
|
@@ -826,14 +841,17 @@ module Aws::KMS
|
|
826
841
|
#
|
827
842
|
# * For HMAC KMS keys (symmetric), specify `GENERATE_VERIFY_MAC`.
|
828
843
|
#
|
829
|
-
# * For asymmetric KMS keys with RSA key
|
844
|
+
# * For asymmetric KMS keys with RSA key pairs, specify
|
830
845
|
# `ENCRYPT_DECRYPT` or `SIGN_VERIFY`.
|
831
846
|
#
|
832
|
-
# * For asymmetric KMS keys with
|
847
|
+
# * For asymmetric KMS keys with NIST-recommended elliptic curve key
|
848
|
+
# pairs, specify `SIGN_VERIFY` or `KEY_AGREEMENT`.
|
849
|
+
#
|
850
|
+
# * For asymmetric KMS keys with `ECC_SECG_P256K1` key pairs specify
|
833
851
|
# `SIGN_VERIFY`.
|
834
852
|
#
|
835
|
-
# * For asymmetric KMS keys with SM2 key
|
836
|
-
#
|
853
|
+
# * For asymmetric KMS keys with SM2 key pairs (China Regions only),
|
854
|
+
# specify `ENCRYPT_DECRYPT`, `SIGN_VERIFY`, or `KEY_AGREEMENT`.
|
837
855
|
#
|
838
856
|
#
|
839
857
|
#
|
@@ -889,7 +907,8 @@ module Aws::KMS
|
|
889
907
|
#
|
890
908
|
# * `HMAC_512`
|
891
909
|
#
|
892
|
-
# * Asymmetric RSA key pairs
|
910
|
+
# * Asymmetric RSA key pairs (encryption and decryption -or- signing
|
911
|
+
# and verification)
|
893
912
|
#
|
894
913
|
# * `RSA_2048`
|
895
914
|
#
|
@@ -897,7 +916,8 @@ module Aws::KMS
|
|
897
916
|
#
|
898
917
|
# * `RSA_4096`
|
899
918
|
#
|
900
|
-
# * Asymmetric NIST-recommended elliptic curve key pairs
|
919
|
+
# * Asymmetric NIST-recommended elliptic curve key pairs (signing and
|
920
|
+
# verification -or- deriving shared secrets)
|
901
921
|
#
|
902
922
|
# * `ECC_NIST_P256` (secp256r1)
|
903
923
|
#
|
@@ -905,16 +925,18 @@ module Aws::KMS
|
|
905
925
|
#
|
906
926
|
# * `ECC_NIST_P521` (secp521r1)
|
907
927
|
#
|
908
|
-
# * Other asymmetric elliptic curve key pairs
|
928
|
+
# * Other asymmetric elliptic curve key pairs (signing and
|
929
|
+
# verification)
|
909
930
|
#
|
910
931
|
# * `ECC_SECG_P256K1` (secp256k1), commonly used for
|
911
932
|
# cryptocurrencies.
|
912
933
|
#
|
913
934
|
# ^
|
914
935
|
#
|
915
|
-
# * SM2 key pairs (
|
936
|
+
# * SM2 key pairs (encryption and decryption -or- signing and
|
937
|
+
# verification -or- deriving shared secrets)
|
916
938
|
#
|
917
|
-
# * `SM2`
|
939
|
+
# * `SM2` (China Regions only)
|
918
940
|
#
|
919
941
|
# ^
|
920
942
|
#
|
@@ -1746,6 +1768,195 @@ module Aws::KMS
|
|
1746
1768
|
include Aws::Structure
|
1747
1769
|
end
|
1748
1770
|
|
1771
|
+
# @!attribute [rw] key_id
|
1772
|
+
# Identifies an asymmetric NIST-recommended ECC or SM2 (China Regions
|
1773
|
+
# only) KMS key. KMS uses the private key in the specified key pair to
|
1774
|
+
# derive the shared secret. The key usage of the KMS key must be
|
1775
|
+
# `KEY_AGREEMENT`. To find the `KeyUsage` of a KMS key, use the
|
1776
|
+
# DescribeKey operation.
|
1777
|
+
#
|
1778
|
+
# To specify a KMS key, use its key ID, key ARN, alias name, or alias
|
1779
|
+
# ARN. When using an alias name, prefix it with `"alias/"`. To specify
|
1780
|
+
# a KMS key in a different Amazon Web Services account, you must use
|
1781
|
+
# the key ARN or alias ARN.
|
1782
|
+
#
|
1783
|
+
# For example:
|
1784
|
+
#
|
1785
|
+
# * Key ID: `1234abcd-12ab-34cd-56ef-1234567890ab`
|
1786
|
+
#
|
1787
|
+
# * Key ARN:
|
1788
|
+
# `arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`
|
1789
|
+
#
|
1790
|
+
# * Alias name: `alias/ExampleAlias`
|
1791
|
+
#
|
1792
|
+
# * Alias ARN: `arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias`
|
1793
|
+
#
|
1794
|
+
# To get the key ID and key ARN for a KMS key, use ListKeys or
|
1795
|
+
# DescribeKey. To get the alias name and alias ARN, use ListAliases.
|
1796
|
+
# @return [String]
|
1797
|
+
#
|
1798
|
+
# @!attribute [rw] key_agreement_algorithm
|
1799
|
+
# Specifies the key agreement algorithm used to derive the shared
|
1800
|
+
# secret. The only valid value is `ECDH`.
|
1801
|
+
# @return [String]
|
1802
|
+
#
|
1803
|
+
# @!attribute [rw] public_key
|
1804
|
+
# Specifies the public key in your peer's NIST-recommended elliptic
|
1805
|
+
# curve (ECC) or SM2 (China Regions only) key pair.
|
1806
|
+
#
|
1807
|
+
# The public key must be a DER-encoded X.509 public key, also known as
|
1808
|
+
# `SubjectPublicKeyInfo` (SPKI), as defined in [RFC 5280][1].
|
1809
|
+
#
|
1810
|
+
# GetPublicKey returns the public key of an asymmetric KMS key pair in
|
1811
|
+
# the required DER-encoded format.
|
1812
|
+
#
|
1813
|
+
# <note markdown="1"> If you use [Amazon Web Services CLI version 1][2], you must provide
|
1814
|
+
# the DER-encoded X.509 public key in a file. Otherwise, the Amazon
|
1815
|
+
# Web Services CLI Base64-encodes the public key a second time,
|
1816
|
+
# resulting in a `ValidationException`.
|
1817
|
+
#
|
1818
|
+
# </note>
|
1819
|
+
#
|
1820
|
+
# You can specify the public key as binary data in a file using fileb
|
1821
|
+
# (`fileb://<path-to-file>`) or in-line using a Base64 encoded string.
|
1822
|
+
#
|
1823
|
+
#
|
1824
|
+
#
|
1825
|
+
# [1]: https://tools.ietf.org/html/rfc5280
|
1826
|
+
# [2]: https://docs.aws.amazon.com/cli/v1/userguide/cli-chap-welcome.html
|
1827
|
+
# @return [String]
|
1828
|
+
#
|
1829
|
+
# @!attribute [rw] grant_tokens
|
1830
|
+
# A list of grant tokens.
|
1831
|
+
#
|
1832
|
+
# Use a grant token when your permission to call this operation comes
|
1833
|
+
# from a new grant that has not yet achieved *eventual consistency*.
|
1834
|
+
# For more information, see [Grant token][1] and [Using a grant
|
1835
|
+
# token][2] in the *Key Management Service Developer Guide*.
|
1836
|
+
#
|
1837
|
+
#
|
1838
|
+
#
|
1839
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#grant_token
|
1840
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/grant-manage.html#using-grant-token
|
1841
|
+
# @return [Array<String>]
|
1842
|
+
#
|
1843
|
+
# @!attribute [rw] dry_run
|
1844
|
+
# Checks if your request will succeed. `DryRun` is an optional
|
1845
|
+
# parameter.
|
1846
|
+
#
|
1847
|
+
# To learn more about how to use this parameter, see [Testing your KMS
|
1848
|
+
# API calls][1] in the *Key Management Service Developer Guide*.
|
1849
|
+
#
|
1850
|
+
#
|
1851
|
+
#
|
1852
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-dryrun.html
|
1853
|
+
# @return [Boolean]
|
1854
|
+
#
|
1855
|
+
# @!attribute [rw] recipient
|
1856
|
+
# A signed [attestation document][1] from an Amazon Web Services Nitro
|
1857
|
+
# enclave and the encryption algorithm to use with the enclave's
|
1858
|
+
# public key. The only valid encryption algorithm is
|
1859
|
+
# `RSAES_OAEP_SHA_256`.
|
1860
|
+
#
|
1861
|
+
# This parameter only supports attestation documents for Amazon Web
|
1862
|
+
# Services Nitro Enclaves. To call DeriveSharedSecret for an Amazon
|
1863
|
+
# Web Services Nitro Enclaves, use the [Amazon Web Services Nitro
|
1864
|
+
# Enclaves SDK][2] to generate the attestation document and then use
|
1865
|
+
# the Recipient parameter from any Amazon Web Services SDK to provide
|
1866
|
+
# the attestation document for the enclave.
|
1867
|
+
#
|
1868
|
+
# When you use this parameter, instead of returning a plaintext copy
|
1869
|
+
# of the shared secret, KMS encrypts the plaintext shared secret under
|
1870
|
+
# the public key in the attestation document, and returns the
|
1871
|
+
# resulting ciphertext in the `CiphertextForRecipient` field in the
|
1872
|
+
# response. This ciphertext can be decrypted only with the private key
|
1873
|
+
# in the enclave. The `CiphertextBlob` field in the response contains
|
1874
|
+
# the encrypted shared secret derived from the KMS key specified by
|
1875
|
+
# the `KeyId` parameter and public key specified by the `PublicKey`
|
1876
|
+
# parameter. The `SharedSecret` field in the response is null or
|
1877
|
+
# empty.
|
1878
|
+
#
|
1879
|
+
# For information about the interaction between KMS and Amazon Web
|
1880
|
+
# Services Nitro Enclaves, see [How Amazon Web Services Nitro Enclaves
|
1881
|
+
# uses KMS][3] in the *Key Management Service Developer Guide*.
|
1882
|
+
#
|
1883
|
+
#
|
1884
|
+
#
|
1885
|
+
# [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave-how.html#term-attestdoc
|
1886
|
+
# [2]: https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk
|
1887
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
|
1888
|
+
# @return [Types::RecipientInfo]
|
1889
|
+
#
|
1890
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/DeriveSharedSecretRequest AWS API Documentation
|
1891
|
+
#
|
1892
|
+
class DeriveSharedSecretRequest < Struct.new(
|
1893
|
+
:key_id,
|
1894
|
+
:key_agreement_algorithm,
|
1895
|
+
:public_key,
|
1896
|
+
:grant_tokens,
|
1897
|
+
:dry_run,
|
1898
|
+
:recipient)
|
1899
|
+
SENSITIVE = []
|
1900
|
+
include Aws::Structure
|
1901
|
+
end
|
1902
|
+
|
1903
|
+
# @!attribute [rw] key_id
|
1904
|
+
# Identifies the KMS key used to derive the shared secret.
|
1905
|
+
# @return [String]
|
1906
|
+
#
|
1907
|
+
# @!attribute [rw] shared_secret
|
1908
|
+
# The raw secret derived from the specified key agreement algorithm,
|
1909
|
+
# private key in the asymmetric KMS key, and your peer's public key.
|
1910
|
+
#
|
1911
|
+
# If the response includes the `CiphertextForRecipient` field, the
|
1912
|
+
# `SharedSecret` field is null or empty.
|
1913
|
+
# @return [String]
|
1914
|
+
#
|
1915
|
+
# @!attribute [rw] ciphertext_for_recipient
|
1916
|
+
# The plaintext shared secret encrypted with the public key in the
|
1917
|
+
# attestation document.
|
1918
|
+
#
|
1919
|
+
# This field is included in the response only when the `Recipient`
|
1920
|
+
# parameter in the request includes a valid attestation document from
|
1921
|
+
# an Amazon Web Services Nitro enclave. For information about the
|
1922
|
+
# interaction between KMS and Amazon Web Services Nitro Enclaves, see
|
1923
|
+
# [How Amazon Web Services Nitro Enclaves uses KMS][1] in the *Key
|
1924
|
+
# Management Service Developer Guide*.
|
1925
|
+
#
|
1926
|
+
#
|
1927
|
+
#
|
1928
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
|
1929
|
+
# @return [String]
|
1930
|
+
#
|
1931
|
+
# @!attribute [rw] key_agreement_algorithm
|
1932
|
+
# Identifies the key agreement algorithm used to derive the shared
|
1933
|
+
# secret.
|
1934
|
+
# @return [String]
|
1935
|
+
#
|
1936
|
+
# @!attribute [rw] key_origin
|
1937
|
+
# The source of the key material for the specified KMS key.
|
1938
|
+
#
|
1939
|
+
# When this value is `AWS_KMS`, KMS created the key material. When
|
1940
|
+
# this value is `EXTERNAL`, the key material was imported or the KMS
|
1941
|
+
# key doesn't have any key material.
|
1942
|
+
#
|
1943
|
+
# The only valid values for DeriveSharedSecret are `AWS_KMS` and
|
1944
|
+
# `EXTERNAL`. DeriveSharedSecret does not support KMS keys with a
|
1945
|
+
# `KeyOrigin` value of `AWS_CLOUDHSM` or `EXTERNAL_KEY_STORE`.
|
1946
|
+
# @return [String]
|
1947
|
+
#
|
1948
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/DeriveSharedSecretResponse AWS API Documentation
|
1949
|
+
#
|
1950
|
+
class DeriveSharedSecretResponse < Struct.new(
|
1951
|
+
:key_id,
|
1952
|
+
:shared_secret,
|
1953
|
+
:ciphertext_for_recipient,
|
1954
|
+
:key_agreement_algorithm,
|
1955
|
+
:key_origin)
|
1956
|
+
SENSITIVE = [:shared_secret]
|
1957
|
+
include Aws::Structure
|
1958
|
+
end
|
1959
|
+
|
1749
1960
|
# @!attribute [rw] custom_key_store_id
|
1750
1961
|
# Gets only information about the specified custom key store. Enter
|
1751
1962
|
# the key store ID.
|
@@ -1801,8 +2012,8 @@ module Aws::KMS
|
|
1801
2012
|
# @!attribute [rw] truncated
|
1802
2013
|
# A flag that indicates whether there are more items in the list. When
|
1803
2014
|
# this value is true, the list in this response is truncated. To get
|
1804
|
-
# more items, pass the value of the `NextMarker` element in
|
1805
|
-
#
|
2015
|
+
# more items, pass the value of the `NextMarker` element in this
|
2016
|
+
# response to the `Marker` parameter in a subsequent request.
|
1806
2017
|
# @return [Boolean]
|
1807
2018
|
#
|
1808
2019
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/DescribeCustomKeyStoresResponse AWS API Documentation
|
@@ -2036,10 +2247,31 @@ module Aws::KMS
|
|
2036
2247
|
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-manage.html#multi-region-rotate
|
2037
2248
|
# @return [String]
|
2038
2249
|
#
|
2250
|
+
# @!attribute [rw] rotation_period_in_days
|
2251
|
+
# Use this parameter to specify a custom period of time between each
|
2252
|
+
# rotation date. If no value is specified, the default value is 365
|
2253
|
+
# days.
|
2254
|
+
#
|
2255
|
+
# The rotation period defines the number of days after you enable
|
2256
|
+
# automatic key rotation that KMS will rotate your key material, and
|
2257
|
+
# the number of days between each automatic rotation thereafter.
|
2258
|
+
#
|
2259
|
+
# You can use the [ `kms:RotationPeriodInDays` ][1] condition key to
|
2260
|
+
# further constrain the values that principals can specify in the
|
2261
|
+
# `RotationPeriodInDays` parameter.
|
2262
|
+
#
|
2263
|
+
#
|
2264
|
+
#
|
2265
|
+
#
|
2266
|
+
#
|
2267
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/conditions-kms.html#conditions-kms-rotation-period-in-days
|
2268
|
+
# @return [Integer]
|
2269
|
+
#
|
2039
2270
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/EnableKeyRotationRequest AWS API Documentation
|
2040
2271
|
#
|
2041
2272
|
class EnableKeyRotationRequest < Struct.new(
|
2042
|
-
:key_id
|
2273
|
+
:key_id,
|
2274
|
+
:rotation_period_in_days)
|
2043
2275
|
SENSITIVE = []
|
2044
2276
|
include Aws::Structure
|
2045
2277
|
end
|
@@ -2281,8 +2513,11 @@ module Aws::KMS
|
|
2281
2513
|
# `RSAES_OAEP_SHA_256`.
|
2282
2514
|
#
|
2283
2515
|
# This parameter only supports attestation documents for Amazon Web
|
2284
|
-
# Services Nitro Enclaves. To
|
2285
|
-
# Web Services Nitro Enclaves
|
2516
|
+
# Services Nitro Enclaves. To call DeriveSharedSecret for an Amazon
|
2517
|
+
# Web Services Nitro Enclaves, use the [Amazon Web Services Nitro
|
2518
|
+
# Enclaves SDK][2] to generate the attestation document and then use
|
2519
|
+
# the Recipient parameter from any Amazon Web Services SDK to provide
|
2520
|
+
# the attestation document for the enclave.
|
2286
2521
|
#
|
2287
2522
|
# When you use this parameter, instead of returning a plaintext copy
|
2288
2523
|
# of the private data key, KMS encrypts the plaintext private data key
|
@@ -3048,7 +3283,8 @@ module Aws::KMS
|
|
3048
3283
|
# @return [String]
|
3049
3284
|
#
|
3050
3285
|
# @!attribute [rw] policy_name
|
3051
|
-
# Specifies the name of the key policy.
|
3286
|
+
# Specifies the name of the key policy. If no policy name is
|
3287
|
+
# specified, the default value is `default`. The only valid name is
|
3052
3288
|
# `default`. To get the names of key policies, use ListKeyPolicies.
|
3053
3289
|
# @return [String]
|
3054
3290
|
#
|
@@ -3065,10 +3301,15 @@ module Aws::KMS
|
|
3065
3301
|
# A key policy document in JSON format.
|
3066
3302
|
# @return [String]
|
3067
3303
|
#
|
3304
|
+
# @!attribute [rw] policy_name
|
3305
|
+
# The name of the key policy. The only valid value is `default`.
|
3306
|
+
# @return [String]
|
3307
|
+
#
|
3068
3308
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/GetKeyPolicyResponse AWS API Documentation
|
3069
3309
|
#
|
3070
3310
|
class GetKeyPolicyResponse < Struct.new(
|
3071
|
-
:policy
|
3311
|
+
:policy,
|
3312
|
+
:policy_name)
|
3072
3313
|
SENSITIVE = []
|
3073
3314
|
include Aws::Structure
|
3074
3315
|
end
|
@@ -3103,10 +3344,42 @@ module Aws::KMS
|
|
3103
3344
|
# A Boolean value that specifies whether key rotation is enabled.
|
3104
3345
|
# @return [Boolean]
|
3105
3346
|
#
|
3347
|
+
# @!attribute [rw] key_id
|
3348
|
+
# Identifies the specified symmetric encryption KMS key.
|
3349
|
+
# @return [String]
|
3350
|
+
#
|
3351
|
+
# @!attribute [rw] rotation_period_in_days
|
3352
|
+
# The number of days between each automatic rotation. The default
|
3353
|
+
# value is 365 days.
|
3354
|
+
# @return [Integer]
|
3355
|
+
#
|
3356
|
+
# @!attribute [rw] next_rotation_date
|
3357
|
+
# The next date that KMS will automatically rotate the key material.
|
3358
|
+
# @return [Time]
|
3359
|
+
#
|
3360
|
+
# @!attribute [rw] on_demand_rotation_start_date
|
3361
|
+
# Identifies the date and time that an in progress on-demand rotation
|
3362
|
+
# was initiated.
|
3363
|
+
#
|
3364
|
+
# The KMS API follows an [eventual consistency][1] model due to the
|
3365
|
+
# distributed nature of the system. As a result, there might be a
|
3366
|
+
# slight delay between initiating on-demand key rotation and the
|
3367
|
+
# rotation's completion. Once the on-demand rotation is complete, use
|
3368
|
+
# ListKeyRotations to view the details of the on-demand rotation.
|
3369
|
+
#
|
3370
|
+
#
|
3371
|
+
#
|
3372
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
3373
|
+
# @return [Time]
|
3374
|
+
#
|
3106
3375
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/GetKeyRotationStatusResponse AWS API Documentation
|
3107
3376
|
#
|
3108
3377
|
class GetKeyRotationStatusResponse < Struct.new(
|
3109
|
-
:key_rotation_enabled
|
3378
|
+
:key_rotation_enabled,
|
3379
|
+
:key_id,
|
3380
|
+
:rotation_period_in_days,
|
3381
|
+
:next_rotation_date,
|
3382
|
+
:on_demand_rotation_start_date)
|
3110
3383
|
SENSITIVE = []
|
3111
3384
|
include Aws::Structure
|
3112
3385
|
end
|
@@ -3314,12 +3587,12 @@ module Aws::KMS
|
|
3314
3587
|
# @return [String]
|
3315
3588
|
#
|
3316
3589
|
# @!attribute [rw] key_usage
|
3317
|
-
# The permitted use of the public key. Valid values
|
3318
|
-
# `ENCRYPT_DECRYPT`
|
3590
|
+
# The permitted use of the public key. Valid values for asymmetric key
|
3591
|
+
# pairs are `ENCRYPT_DECRYPT`, `SIGN_VERIFY`, and `KEY_AGREEMENT`.
|
3319
3592
|
#
|
3320
|
-
# This information is critical.
|
3321
|
-
# usage encrypts data outside of KMS, the ciphertext
|
3322
|
-
# decrypted.
|
3593
|
+
# This information is critical. For example, if a public key with
|
3594
|
+
# `SIGN_VERIFY` key usage encrypts data outside of KMS, the ciphertext
|
3595
|
+
# cannot be decrypted.
|
3323
3596
|
# @return [String]
|
3324
3597
|
#
|
3325
3598
|
# @!attribute [rw] encryption_algorithms
|
@@ -3340,6 +3613,12 @@ module Aws::KMS
|
|
3340
3613
|
# public key is `SIGN_VERIFY`.
|
3341
3614
|
# @return [Array<String>]
|
3342
3615
|
#
|
3616
|
+
# @!attribute [rw] key_agreement_algorithms
|
3617
|
+
# The key agreement algorithm used to derive a shared secret. This
|
3618
|
+
# field is present only when the KMS key has a `KeyUsage` value of
|
3619
|
+
# `KEY_AGREEMENT`.
|
3620
|
+
# @return [Array<String>]
|
3621
|
+
#
|
3343
3622
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/GetPublicKeyResponse AWS API Documentation
|
3344
3623
|
#
|
3345
3624
|
class GetPublicKeyResponse < Struct.new(
|
@@ -3349,7 +3628,8 @@ module Aws::KMS
|
|
3349
3628
|
:key_spec,
|
3350
3629
|
:key_usage,
|
3351
3630
|
:encryption_algorithms,
|
3352
|
-
:signing_algorithms
|
3631
|
+
:signing_algorithms,
|
3632
|
+
:key_agreement_algorithms)
|
3353
3633
|
SENSITIVE = []
|
3354
3634
|
include Aws::Structure
|
3355
3635
|
end
|
@@ -3737,8 +4017,9 @@ module Aws::KMS
|
|
3737
4017
|
# the `KeyUsage` must be `ENCRYPT_DECRYPT`. For signing and verifying
|
3738
4018
|
# messages, the `KeyUsage` must be `SIGN_VERIFY`. For generating and
|
3739
4019
|
# verifying message authentication codes (MACs), the `KeyUsage` must be
|
3740
|
-
# `GENERATE_VERIFY_MAC`.
|
3741
|
-
#
|
4020
|
+
# `GENERATE_VERIFY_MAC`. For deriving key agreement secrets, the
|
4021
|
+
# `KeyUsage` must be `KEY_AGREEMENT`. To find the `KeyUsage` of a KMS
|
4022
|
+
# key, use the DescribeKey operation.
|
3742
4023
|
#
|
3743
4024
|
# To find the encryption or signing algorithms supported for a
|
3744
4025
|
# particular KMS key, use the DescribeKey operation.
|
@@ -4017,6 +4298,10 @@ module Aws::KMS
|
|
4017
4298
|
# `SIGN_VERIFY`.
|
4018
4299
|
# @return [Array<String>]
|
4019
4300
|
#
|
4301
|
+
# @!attribute [rw] key_agreement_algorithms
|
4302
|
+
# The key agreement algorithm used to derive a shared secret.
|
4303
|
+
# @return [Array<String>]
|
4304
|
+
#
|
4020
4305
|
# @!attribute [rw] multi_region
|
4021
4306
|
# Indicates whether the KMS key is a multi-Region (`True`) or regional
|
4022
4307
|
# (`False`) key. This value is `True` for multi-Region primary and
|
@@ -4110,6 +4395,7 @@ module Aws::KMS
|
|
4110
4395
|
:key_spec,
|
4111
4396
|
:encryption_algorithms,
|
4112
4397
|
:signing_algorithms,
|
4398
|
+
:key_agreement_algorithms,
|
4113
4399
|
:multi_region,
|
4114
4400
|
:multi_region_configuration,
|
4115
4401
|
:pending_deletion_window_in_days,
|
@@ -4210,8 +4496,8 @@ module Aws::KMS
|
|
4210
4496
|
# @!attribute [rw] truncated
|
4211
4497
|
# A flag that indicates whether there are more items in the list. When
|
4212
4498
|
# this value is true, the list in this response is truncated. To get
|
4213
|
-
# more items, pass the value of the `NextMarker` element in
|
4214
|
-
#
|
4499
|
+
# more items, pass the value of the `NextMarker` element in this
|
4500
|
+
# response to the `Marker` parameter in a subsequent request.
|
4215
4501
|
# @return [Boolean]
|
4216
4502
|
#
|
4217
4503
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/ListAliasesResponse AWS API Documentation
|
@@ -4293,8 +4579,8 @@ module Aws::KMS
|
|
4293
4579
|
# @!attribute [rw] truncated
|
4294
4580
|
# A flag that indicates whether there are more items in the list. When
|
4295
4581
|
# this value is true, the list in this response is truncated. To get
|
4296
|
-
# more items, pass the value of the `NextMarker` element in
|
4297
|
-
#
|
4582
|
+
# more items, pass the value of the `NextMarker` element in this
|
4583
|
+
# response to the `Marker` parameter in a subsequent request.
|
4298
4584
|
# @return [Boolean]
|
4299
4585
|
#
|
4300
4586
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/ListGrantsResponse AWS API Documentation
|
@@ -4363,8 +4649,8 @@ module Aws::KMS
|
|
4363
4649
|
# @!attribute [rw] truncated
|
4364
4650
|
# A flag that indicates whether there are more items in the list. When
|
4365
4651
|
# this value is true, the list in this response is truncated. To get
|
4366
|
-
# more items, pass the value of the `NextMarker` element in
|
4367
|
-
#
|
4652
|
+
# more items, pass the value of the `NextMarker` element in this
|
4653
|
+
# response to the `Marker` parameter in a subsequent request.
|
4368
4654
|
# @return [Boolean]
|
4369
4655
|
#
|
4370
4656
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/ListKeyPoliciesResponse AWS API Documentation
|
@@ -4377,6 +4663,74 @@ module Aws::KMS
|
|
4377
4663
|
include Aws::Structure
|
4378
4664
|
end
|
4379
4665
|
|
4666
|
+
# @!attribute [rw] key_id
|
4667
|
+
# Gets the key rotations for the specified KMS key.
|
4668
|
+
#
|
4669
|
+
# Specify the key ID or key ARN of the KMS key.
|
4670
|
+
#
|
4671
|
+
# For example:
|
4672
|
+
#
|
4673
|
+
# * Key ID: `1234abcd-12ab-34cd-56ef-1234567890ab`
|
4674
|
+
#
|
4675
|
+
# * Key ARN:
|
4676
|
+
# `arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`
|
4677
|
+
#
|
4678
|
+
# To get the key ID and key ARN for a KMS key, use ListKeys or
|
4679
|
+
# DescribeKey.
|
4680
|
+
# @return [String]
|
4681
|
+
#
|
4682
|
+
# @!attribute [rw] limit
|
4683
|
+
# Use this parameter to specify the maximum number of items to return.
|
4684
|
+
# When this value is present, KMS does not return more than the
|
4685
|
+
# specified number of items, but it might return fewer.
|
4686
|
+
#
|
4687
|
+
# This value is optional. If you include a value, it must be between 1
|
4688
|
+
# and 1000, inclusive. If you do not include a value, it defaults to
|
4689
|
+
# 100.
|
4690
|
+
# @return [Integer]
|
4691
|
+
#
|
4692
|
+
# @!attribute [rw] marker
|
4693
|
+
# Use this parameter in a subsequent request after you receive a
|
4694
|
+
# response with truncated results. Set it to the value of `NextMarker`
|
4695
|
+
# from the truncated response you just received.
|
4696
|
+
# @return [String]
|
4697
|
+
#
|
4698
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/ListKeyRotationsRequest AWS API Documentation
|
4699
|
+
#
|
4700
|
+
class ListKeyRotationsRequest < Struct.new(
|
4701
|
+
:key_id,
|
4702
|
+
:limit,
|
4703
|
+
:marker)
|
4704
|
+
SENSITIVE = []
|
4705
|
+
include Aws::Structure
|
4706
|
+
end
|
4707
|
+
|
4708
|
+
# @!attribute [rw] rotations
|
4709
|
+
# A list of completed key material rotations.
|
4710
|
+
# @return [Array<Types::RotationsListEntry>]
|
4711
|
+
#
|
4712
|
+
# @!attribute [rw] next_marker
|
4713
|
+
# When `Truncated` is true, this element is present and contains the
|
4714
|
+
# value to use for the `Marker` parameter in a subsequent request.
|
4715
|
+
# @return [String]
|
4716
|
+
#
|
4717
|
+
# @!attribute [rw] truncated
|
4718
|
+
# A flag that indicates whether there are more items in the list. When
|
4719
|
+
# this value is true, the list in this response is truncated. To get
|
4720
|
+
# more items, pass the value of the `NextMarker` element in this
|
4721
|
+
# response to the `Marker` parameter in a subsequent request.
|
4722
|
+
# @return [Boolean]
|
4723
|
+
#
|
4724
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/ListKeyRotationsResponse AWS API Documentation
|
4725
|
+
#
|
4726
|
+
class ListKeyRotationsResponse < Struct.new(
|
4727
|
+
:rotations,
|
4728
|
+
:next_marker,
|
4729
|
+
:truncated)
|
4730
|
+
SENSITIVE = []
|
4731
|
+
include Aws::Structure
|
4732
|
+
end
|
4733
|
+
|
4380
4734
|
# @!attribute [rw] limit
|
4381
4735
|
# Use this parameter to specify the maximum number of items to return.
|
4382
4736
|
# When this value is present, KMS does not return more than the
|
@@ -4414,8 +4768,8 @@ module Aws::KMS
|
|
4414
4768
|
# @!attribute [rw] truncated
|
4415
4769
|
# A flag that indicates whether there are more items in the list. When
|
4416
4770
|
# this value is true, the list in this response is truncated. To get
|
4417
|
-
# more items, pass the value of the `NextMarker` element in
|
4418
|
-
#
|
4771
|
+
# more items, pass the value of the `NextMarker` element in this
|
4772
|
+
# response to the `Marker` parameter in a subsequent request.
|
4419
4773
|
# @return [Boolean]
|
4420
4774
|
#
|
4421
4775
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/ListKeysResponse AWS API Documentation
|
@@ -4496,8 +4850,8 @@ module Aws::KMS
|
|
4496
4850
|
# @!attribute [rw] truncated
|
4497
4851
|
# A flag that indicates whether there are more items in the list. When
|
4498
4852
|
# this value is true, the list in this response is truncated. To get
|
4499
|
-
# more items, pass the value of the `NextMarker` element in
|
4500
|
-
#
|
4853
|
+
# more items, pass the value of the `NextMarker` element in this
|
4854
|
+
# response to the `Marker` parameter in a subsequent request.
|
4501
4855
|
# @return [Boolean]
|
4502
4856
|
#
|
4503
4857
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/ListResourceTagsResponse AWS API Documentation
|
@@ -4650,7 +5004,8 @@ module Aws::KMS
|
|
4650
5004
|
# @return [String]
|
4651
5005
|
#
|
4652
5006
|
# @!attribute [rw] policy_name
|
4653
|
-
# The name of the key policy.
|
5007
|
+
# The name of the key policy. If no policy name is specified, the
|
5008
|
+
# default value is `default`. The only valid value is `default`.
|
4654
5009
|
# @return [String]
|
4655
5010
|
#
|
4656
5011
|
# @!attribute [rw] policy
|
@@ -5320,6 +5675,87 @@ module Aws::KMS
|
|
5320
5675
|
include Aws::Structure
|
5321
5676
|
end
|
5322
5677
|
|
5678
|
+
# @!attribute [rw] key_id
|
5679
|
+
# Identifies a symmetric encryption KMS key. You cannot perform
|
5680
|
+
# on-demand rotation of [asymmetric KMS keys][1], [HMAC KMS keys][2],
|
5681
|
+
# KMS keys with [imported key material][3], or KMS keys in a [custom
|
5682
|
+
# key store][4]. To perform on-demand rotation of a set of related
|
5683
|
+
# [multi-Region keys][5], invoke the on-demand rotation on the primary
|
5684
|
+
# key.
|
5685
|
+
#
|
5686
|
+
# Specify the key ID or key ARN of the KMS key.
|
5687
|
+
#
|
5688
|
+
# For example:
|
5689
|
+
#
|
5690
|
+
# * Key ID: `1234abcd-12ab-34cd-56ef-1234567890ab`
|
5691
|
+
#
|
5692
|
+
# * Key ARN:
|
5693
|
+
# `arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`
|
5694
|
+
#
|
5695
|
+
# To get the key ID and key ARN for a KMS key, use ListKeys or
|
5696
|
+
# DescribeKey.
|
5697
|
+
#
|
5698
|
+
#
|
5699
|
+
#
|
5700
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
|
5701
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/hmac.html
|
5702
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html
|
5703
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
|
5704
|
+
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-manage.html#multi-region-rotate
|
5705
|
+
# @return [String]
|
5706
|
+
#
|
5707
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/RotateKeyOnDemandRequest AWS API Documentation
|
5708
|
+
#
|
5709
|
+
class RotateKeyOnDemandRequest < Struct.new(
|
5710
|
+
:key_id)
|
5711
|
+
SENSITIVE = []
|
5712
|
+
include Aws::Structure
|
5713
|
+
end
|
5714
|
+
|
5715
|
+
# @!attribute [rw] key_id
|
5716
|
+
# Identifies the symmetric encryption KMS key that you initiated
|
5717
|
+
# on-demand rotation on.
|
5718
|
+
# @return [String]
|
5719
|
+
#
|
5720
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/RotateKeyOnDemandResponse AWS API Documentation
|
5721
|
+
#
|
5722
|
+
class RotateKeyOnDemandResponse < Struct.new(
|
5723
|
+
:key_id)
|
5724
|
+
SENSITIVE = []
|
5725
|
+
include Aws::Structure
|
5726
|
+
end
|
5727
|
+
|
5728
|
+
# Contains information about completed key material rotations.
|
5729
|
+
#
|
5730
|
+
# @!attribute [rw] key_id
|
5731
|
+
# Unique identifier of the key.
|
5732
|
+
# @return [String]
|
5733
|
+
#
|
5734
|
+
# @!attribute [rw] rotation_date
|
5735
|
+
# Date and time that the key material rotation completed. Formatted as
|
5736
|
+
# Unix time.
|
5737
|
+
# @return [Time]
|
5738
|
+
#
|
5739
|
+
# @!attribute [rw] rotation_type
|
5740
|
+
# Identifies whether the key material rotation was a scheduled
|
5741
|
+
# [automatic rotation][1] or an [on-demand rotation][2].
|
5742
|
+
#
|
5743
|
+
#
|
5744
|
+
#
|
5745
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html#rotating-keys-enable-disable
|
5746
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html#rotating-keys-on-demand
|
5747
|
+
# @return [String]
|
5748
|
+
#
|
5749
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/RotationsListEntry AWS API Documentation
|
5750
|
+
#
|
5751
|
+
class RotationsListEntry < Struct.new(
|
5752
|
+
:key_id,
|
5753
|
+
:rotation_date,
|
5754
|
+
:rotation_type)
|
5755
|
+
SENSITIVE = []
|
5756
|
+
include Aws::Structure
|
5757
|
+
end
|
5758
|
+
|
5323
5759
|
# @!attribute [rw] key_id
|
5324
5760
|
# The unique identifier of the KMS key to delete.
|
5325
5761
|
#
|