aws-sdk-kms 1.57.0 → 1.59.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.
@@ -30,7 +30,7 @@ require 'aws-sdk-core/plugins/http_checksum.rb'
30
30
  require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
31
  require 'aws-sdk-core/plugins/defaults_mode.rb'
32
32
  require 'aws-sdk-core/plugins/recursion_detection.rb'
33
- require 'aws-sdk-core/plugins/signature_v4.rb'
33
+ require 'aws-sdk-core/plugins/sign.rb'
34
34
  require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
35
35
 
36
36
  Aws::Plugins::GlobalConfiguration.add_identifier(:kms)
@@ -79,8 +79,9 @@ module Aws::KMS
79
79
  add_plugin(Aws::Plugins::ChecksumAlgorithm)
80
80
  add_plugin(Aws::Plugins::DefaultsMode)
81
81
  add_plugin(Aws::Plugins::RecursionDetection)
82
- add_plugin(Aws::Plugins::SignatureV4)
82
+ add_plugin(Aws::Plugins::Sign)
83
83
  add_plugin(Aws::Plugins::Protocols::JsonRpc)
84
+ add_plugin(Aws::KMS::Plugins::Endpoints)
84
85
 
85
86
  # @overload initialize(options)
86
87
  # @param [Hash] options
@@ -297,6 +298,19 @@ module Aws::KMS
297
298
  # ** Please note ** When response stubbing is enabled, no HTTP
298
299
  # requests are made, and retries are disabled.
299
300
  #
301
+ # @option options [Aws::TokenProvider] :token_provider
302
+ # A Bearer Token Provider. This can be an instance of any one of the
303
+ # following classes:
304
+ #
305
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
306
+ # tokens.
307
+ #
308
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
309
+ # access token generated from `aws login`.
310
+ #
311
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
312
+ # will be used to search for tokens configured for your profile in shared configuration files.
313
+ #
300
314
  # @option options [Boolean] :use_dualstack_endpoint
301
315
  # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
302
316
  # will be used if available.
@@ -310,6 +324,9 @@ module Aws::KMS
310
324
  # When `true`, request parameters are validated before
311
325
  # sending the request.
312
326
  #
327
+ # @option options [Aws::KMS::EndpointProvider] :endpoint_provider
328
+ # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::KMS::EndpointParameters`
329
+ #
313
330
  # @option options [URI::HTTP,String] :http_proxy A proxy to send
314
331
  # requests through. Formatted like 'http://proxy.com:123'.
315
332
  #
@@ -674,7 +691,7 @@ module Aws::KMS
674
691
  # Creates a [custom key store][1] that is associated with an [CloudHSM
675
692
  # cluster][2] that you own and manage.
676
693
  #
677
- # This operation is part of the [Custom Key Store feature][1] feature in
694
+ # This operation is part of the [custom key store feature][1] feature in
678
695
  # KMS, which combines the convenience and extensive integration of KMS
679
696
  # with the isolation and control of a single-tenant key store.
680
697
  #
@@ -724,7 +741,7 @@ module Aws::KMS
724
741
  # Specifies a friendly name for the custom key store. The name must be
725
742
  # unique in your Amazon Web Services account.
726
743
  #
727
- # @option params [required, String] :cloud_hsm_cluster_id
744
+ # @option params [String] :cloud_hsm_cluster_id
728
745
  # Identifies the CloudHSM cluster for the custom key store. Enter the
729
746
  # cluster ID of any active CloudHSM cluster that is not already
730
747
  # associated with a custom key store. To find the cluster ID, use the
@@ -734,7 +751,7 @@ module Aws::KMS
734
751
  #
735
752
  # [1]: https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html
736
753
  #
737
- # @option params [required, String] :trust_anchor_certificate
754
+ # @option params [String] :trust_anchor_certificate
738
755
  # Enter the content of the trust anchor certificate for the cluster.
739
756
  # This is the content of the `customerCA.crt` file that you created when
740
757
  # you [initialized the cluster][1].
@@ -743,7 +760,7 @@ module Aws::KMS
743
760
  #
744
761
  # [1]: https://docs.aws.amazon.com/cloudhsm/latest/userguide/initialize-cluster.html
745
762
  #
746
- # @option params [required, String] :key_store_password
763
+ # @option params [String] :key_store_password
747
764
  # Enter the password of the [ `kmsuser` crypto user (CU) account][1] in
748
765
  # the specified CloudHSM cluster. KMS logs into the cluster as this user
749
766
  # to manage key material on your behalf.
@@ -783,9 +800,9 @@ module Aws::KMS
783
800
  #
784
801
  # resp = client.create_custom_key_store({
785
802
  # custom_key_store_name: "CustomKeyStoreNameType", # required
786
- # cloud_hsm_cluster_id: "CloudHsmClusterIdType", # required
787
- # trust_anchor_certificate: "TrustAnchorCertificateType", # required
788
- # key_store_password: "KeyStorePasswordType", # required
803
+ # cloud_hsm_cluster_id: "CloudHsmClusterIdType",
804
+ # trust_anchor_certificate: "TrustAnchorCertificateType",
805
+ # key_store_password: "KeyStorePasswordType",
789
806
  # })
790
807
  #
791
808
  # @example Response structure
@@ -1079,7 +1096,9 @@ module Aws::KMS
1079
1096
  # : To create a symmetric encryption KMS key, you aren't required to
1080
1097
  # specify any parameters. The default value for `KeySpec`,
1081
1098
  # `SYMMETRIC_DEFAULT`, and the default value for `KeyUsage`,
1082
- # `ENCRYPT_DECRYPT`, create a symmetric encryption KMS key.
1099
+ # `ENCRYPT_DECRYPT`, create a symmetric encryption KMS key. For
1100
+ # technical details, see [ SYMMETRIC\_DEFAULT key spec][2] in the *Key
1101
+ # Management Service Developer Guide*.
1083
1102
  #
1084
1103
  # If you need a key for basic encryption and decryption or you are
1085
1104
  # creating a KMS key to protect your resources in an Amazon Web
@@ -1100,15 +1119,16 @@ module Aws::KMS
1100
1119
  # to encrypt and decrypt or sign and verify. You can't change these
1101
1120
  # properties after the KMS key is created.
1102
1121
  #
1103
- # Asymmetric KMS keys contain an RSA key pair or an Elliptic Curve
1104
- # (ECC) key pair. The private key in an asymmetric KMS key never
1105
- # leaves KMS unencrypted. However, you can use the GetPublicKey
1106
- # operation to download the public key so it can be used outside of
1107
- # KMS. KMS keys with RSA key pairs can be used to encrypt or decrypt
1108
- # data or sign and verify messages (but not both). KMS keys with ECC
1109
- # key pairs can be used only to sign and verify messages. For
1110
- # information about asymmetric KMS keys, see [Asymmetric KMS keys][2]
1111
- # in the *Key Management Service Developer Guide*.
1122
+ # Asymmetric KMS keys contain an RSA key pair, Elliptic Curve (ECC)
1123
+ # key pair, or an SM2 key pair (China Regions only). The private key
1124
+ # in an asymmetric KMS key never leaves KMS unencrypted. However, you
1125
+ # can use the GetPublicKey operation to download the public key so it
1126
+ # can be used outside of KMS. KMS keys with RSA or SM2 key pairs can
1127
+ # be used to encrypt or decrypt data or sign and verify messages (but
1128
+ # not both). KMS keys with ECC key pairs can be used only to sign and
1129
+ # verify messages. For information about asymmetric KMS keys, see
1130
+ # [Asymmetric KMS keys][3] in the *Key Management Service Developer
1131
+ # Guide*.
1112
1132
  #
1113
1133
  #
1114
1134
  #
@@ -1130,7 +1150,7 @@ module Aws::KMS
1130
1150
  # Region in which HMAC keys are not supported, the `CreateKey`
1131
1151
  # operation returns an `UnsupportedOperationException`. For a list of
1132
1152
  # Regions in which HMAC KMS keys are supported, see [HMAC keys in
1133
- # KMS][3] in the *Key Management Service Developer Guide*.
1153
+ # KMS][4] in the *Key Management Service Developer Guide*.
1134
1154
  #
1135
1155
  #
1136
1156
  #
@@ -1158,7 +1178,7 @@ module Aws::KMS
1158
1178
  # to encrypt data in one Amazon Web Services Region and decrypt it in
1159
1179
  # a different Amazon Web Services Region without re-encrypting the
1160
1180
  # data or making a cross-Region call. For more information about
1161
- # multi-Region keys, see [Multi-Region keys in KMS][4] in the *Key
1181
+ # multi-Region keys, see [Multi-Region keys in KMS][5] in the *Key
1162
1182
  # Management Service Developer Guide*.
1163
1183
  #
1164
1184
  #
@@ -1170,7 +1190,7 @@ module Aws::KMS
1170
1190
  # token, and use the public key to encrypt your key material. Then,
1171
1191
  # use ImportKeyMaterial with your import token to import the key
1172
1192
  # material. For step-by-step instructions, see [Importing Key
1173
- # Material][5] in the <i> <i>Key Management Service Developer
1193
+ # Material][6] in the <i> <i>Key Management Service Developer
1174
1194
  # Guide</i> </i>.
1175
1195
  #
1176
1196
  # This feature supports only symmetric encryption KMS keys, including
@@ -1182,14 +1202,14 @@ module Aws::KMS
1182
1202
  # the `MultiRegion` parameter with a value of `True`. To create
1183
1203
  # replicas of the multi-Region primary key, use the ReplicateKey
1184
1204
  # operation. For more information about multi-Region keys, see
1185
- # [Multi-Region keys in KMS][4] in the *Key Management Service
1205
+ # [Multi-Region keys in KMS][5] in the *Key Management Service
1186
1206
  # Developer Guide*.
1187
1207
  #
1188
1208
  #
1189
1209
  #
1190
1210
  # Custom key store
1191
1211
  #
1192
- # : To create a symmetric encryption KMS key in a [custom key store][6],
1212
+ # : To create a symmetric encryption KMS key in a [custom key store][7],
1193
1213
  # use the `CustomKeyStoreId` parameter to specify the custom key
1194
1214
  # store. You must also use the `Origin` parameter with a value of
1195
1215
  # `AWS_CLOUDHSM`. The CloudHSM cluster that is associated with the
@@ -1199,16 +1219,16 @@ module Aws::KMS
1199
1219
  # Custom key stores support only symmetric encryption KMS keys. You
1200
1220
  # cannot create an HMAC KMS key or an asymmetric KMS key in a custom
1201
1221
  # key store. For information about custom key stores in KMS see
1202
- # [Custom key stores in KMS][6] in the <i> <i>Key Management Service
1222
+ # [Custom key stores in KMS][7] in the <i> <i>Key Management Service
1203
1223
  # Developer Guide</i> </i>.
1204
1224
  #
1205
1225
  # **Cross-account use**\: No. You cannot use this operation to create a
1206
1226
  # KMS key in a different Amazon Web Services account.
1207
1227
  #
1208
- # **Required permissions**\: [kms:CreateKey][7] (IAM policy). To use the
1209
- # `Tags` parameter, [kms:TagResource][7] (IAM policy). For examples and
1228
+ # **Required permissions**\: [kms:CreateKey][8] (IAM policy). To use the
1229
+ # `Tags` parameter, [kms:TagResource][8] (IAM policy). For examples and
1210
1230
  # information about related permissions, see [Allow a user to create KMS
1211
- # keys][8] in the *Key Management Service Developer Guide*.
1231
+ # keys][9] in the *Key Management Service Developer Guide*.
1212
1232
  #
1213
1233
  # **Related operations:**
1214
1234
  #
@@ -1221,13 +1241,14 @@ module Aws::KMS
1221
1241
  #
1222
1242
  #
1223
1243
  # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#kms-keys
1224
- # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
1225
- # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/hmac.html
1226
- # [4]: https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html
1227
- # [5]: https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html
1228
- # [6]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
1229
- # [7]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
1230
- # [8]: https://docs.aws.amazon.com/kms/latest/developerguide/iam-policies.html#iam-policy-example-create-key
1244
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/asymmetric-key-specs.html#key-spec-symmetric-default
1245
+ # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
1246
+ # [4]: https://docs.aws.amazon.com/kms/latest/developerguide/hmac.html
1247
+ # [5]: https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html
1248
+ # [6]: https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html
1249
+ # [7]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
1250
+ # [8]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
1251
+ # [9]: https://docs.aws.amazon.com/kms/latest/developerguide/iam-policies.html#iam-policy-example-create-key
1231
1252
  #
1232
1253
  # @option params [String] :policy
1233
1254
  # The key policy to attach to the KMS key. If you do not specify a key
@@ -1255,31 +1276,30 @@ module Aws::KMS
1255
1276
  # visible][3] in the *Amazon Web Services Identity and Access
1256
1277
  # Management User Guide*.
1257
1278
  #
1258
- # A key policy document must conform to the following rules.
1259
- #
1260
- # * Up to 32 kilobytes (32768 bytes)
1279
+ # A key policy document can include only the following characters:
1261
1280
  #
1262
- # * Must be UTF-8 encoded
1281
+ # * Printable ASCII characters from the space character (`\u0020`)
1282
+ # through the end of the ASCII character range.
1263
1283
  #
1264
- # * The only Unicode characters that are permitted in a key policy
1265
- # document are the horizontal tab (U+0009), linefeed (U+000A),
1266
- # carriage return (U+000D), and characters in the range U+0020 to
1267
- # U+00FF.
1284
+ # * Printable characters in the Basic Latin and Latin-1 Supplement
1285
+ # character set (through `\u00FF`).
1268
1286
  #
1269
- # * The `Sid` element in a key policy statement can include spaces.
1270
- # (Spaces are prohibited in the `Sid` element of an IAM policy
1271
- # document.)
1287
+ # * The tab (`\u0009`), line feed (`\u000A`), and carriage return
1288
+ # (`\u000D`) special characters
1272
1289
  #
1273
- # For help writing and formatting a JSON policy document, see the [IAM
1274
- # JSON Policy Reference][4] in the <i> <i>Identity and Access Management
1275
- # User Guide</i> </i>.
1290
+ # For information about key policies, see [Key policies in KMS][4] in
1291
+ # the *Key Management Service Developer Guide*. For help writing and
1292
+ # formatting a JSON policy document, see the [IAM JSON Policy
1293
+ # Reference][5] in the <i> <i>Identity and Access Management User
1294
+ # Guide</i> </i>.
1276
1295
  #
1277
1296
  #
1278
1297
  #
1279
1298
  # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default
1280
1299
  # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-root-enable-iam
1281
1300
  # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_general.html#troubleshoot_general_eventual-consistency
1282
- # [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html
1301
+ # [4]: https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html
1302
+ # [5]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html
1283
1303
  #
1284
1304
  # @option params [String] :description
1285
1305
  # A description of the KMS key.
@@ -1311,6 +1331,9 @@ module Aws::KMS
1311
1331
  # * For asymmetric KMS keys with ECC key material, specify
1312
1332
  # `SIGN_VERIFY`.
1313
1333
  #
1334
+ # * For asymmetric KMS keys with SM2 key material (China Regions only),
1335
+ # specify `ENCRYPT_DECRYPT` or `SIGN_VERIFY`.
1336
+ #
1314
1337
  #
1315
1338
  #
1316
1339
  # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations
@@ -1325,10 +1348,11 @@ module Aws::KMS
1325
1348
  #
1326
1349
  # @option params [String] :key_spec
1327
1350
  # Specifies the type of KMS key to create. The default value,
1328
- # `SYMMETRIC_DEFAULT`, creates a KMS key with a 256-bit symmetric key
1329
- # for encryption and decryption. For help choosing a key spec for your
1330
- # KMS key, see [Choosing a KMS key type][1] in the <i> <i>Key Management
1331
- # Service Developer Guide</i> </i>.
1351
+ # `SYMMETRIC_DEFAULT`, creates a KMS key with a 256-bit AES-GCM key that
1352
+ # is used for encryption and decryption, except in China Regions, where
1353
+ # it creates a 128-bit symmetric key that uses SM4 encryption. For help
1354
+ # choosing a key spec for your KMS key, see [Choosing a KMS key type][1]
1355
+ # in the <i> <i>Key Management Service Developer Guide</i> </i>.
1332
1356
  #
1333
1357
  # The `KeySpec` determines whether the KMS key contains a symmetric key
1334
1358
  # or an asymmetric key pair. It also determines the cryptographic
@@ -1347,7 +1371,7 @@ module Aws::KMS
1347
1371
  #
1348
1372
  # * Symmetric encryption key (default)
1349
1373
  #
1350
- # * `SYMMETRIC_DEFAULT` (AES-256-GCM)
1374
+ # * `SYMMETRIC_DEFAULT`
1351
1375
  #
1352
1376
  # ^
1353
1377
  #
@@ -1383,6 +1407,12 @@ module Aws::KMS
1383
1407
  #
1384
1408
  # ^
1385
1409
  #
1410
+ # * SM2 key pairs (China Regions only)
1411
+ #
1412
+ # * `SM2`
1413
+ #
1414
+ # ^
1415
+ #
1386
1416
  #
1387
1417
  #
1388
1418
  # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-types.html#symm-asymm-choose
@@ -1431,7 +1461,7 @@ module Aws::KMS
1431
1461
  # The response includes the custom key store ID and the ID of the
1432
1462
  # CloudHSM cluster.
1433
1463
  #
1434
- # This operation is part of the [Custom Key Store feature][1] feature in
1464
+ # This operation is part of the [custom key store feature][1] feature in
1435
1465
  # KMS, which combines the convenience and extensive integration of KMS
1436
1466
  # with the isolation and control of a single-tenant key store.
1437
1467
  #
@@ -1767,8 +1797,8 @@ module Aws::KMS
1767
1797
  # policy: "PolicyType",
1768
1798
  # description: "DescriptionType",
1769
1799
  # key_usage: "SIGN_VERIFY", # accepts SIGN_VERIFY, ENCRYPT_DECRYPT, GENERATE_VERIFY_MAC
1770
- # 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
1771
- # 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
1800
+ # 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
1801
+ # 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
1772
1802
  # origin: "AWS_KMS", # accepts AWS_KMS, EXTERNAL, AWS_CLOUDHSM
1773
1803
  # custom_key_store_id: "CustomKeyStoreIdType",
1774
1804
  # bypass_policy_lockout_safety_check: false,
@@ -1798,12 +1828,12 @@ module Aws::KMS
1798
1828
  # resp.key_metadata.cloud_hsm_cluster_id #=> String
1799
1829
  # resp.key_metadata.expiration_model #=> String, one of "KEY_MATERIAL_EXPIRES", "KEY_MATERIAL_DOES_NOT_EXPIRE"
1800
1830
  # resp.key_metadata.key_manager #=> String, one of "AWS", "CUSTOMER"
1801
- # 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"
1802
- # 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"
1831
+ # 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"
1832
+ # 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"
1803
1833
  # resp.key_metadata.encryption_algorithms #=> Array
1804
- # resp.key_metadata.encryption_algorithms[0] #=> String, one of "SYMMETRIC_DEFAULT", "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256"
1834
+ # resp.key_metadata.encryption_algorithms[0] #=> String, one of "SYMMETRIC_DEFAULT", "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256", "SM2PKE"
1805
1835
  # resp.key_metadata.signing_algorithms #=> Array
1806
- # 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"
1836
+ # 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"
1807
1837
  # resp.key_metadata.multi_region #=> Boolean
1808
1838
  # resp.key_metadata.multi_region_configuration.multi_region_key_type #=> String, one of "PRIMARY", "REPLICA"
1809
1839
  # resp.key_metadata.multi_region_configuration.primary_key.arn #=> String
@@ -2024,14 +2054,14 @@ module Aws::KMS
2024
2054
  # },
2025
2055
  # grant_tokens: ["GrantTokenType"],
2026
2056
  # key_id: "KeyIdType",
2027
- # encryption_algorithm: "SYMMETRIC_DEFAULT", # accepts SYMMETRIC_DEFAULT, RSAES_OAEP_SHA_1, RSAES_OAEP_SHA_256
2057
+ # encryption_algorithm: "SYMMETRIC_DEFAULT", # accepts SYMMETRIC_DEFAULT, RSAES_OAEP_SHA_1, RSAES_OAEP_SHA_256, SM2PKE
2028
2058
  # })
2029
2059
  #
2030
2060
  # @example Response structure
2031
2061
  #
2032
2062
  # resp.key_id #=> String
2033
2063
  # resp.plaintext #=> String
2034
- # resp.encryption_algorithm #=> String, one of "SYMMETRIC_DEFAULT", "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256"
2064
+ # resp.encryption_algorithm #=> String, one of "SYMMETRIC_DEFAULT", "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256", "SM2PKE"
2035
2065
  #
2036
2066
  # @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/Decrypt AWS API Documentation
2037
2067
  #
@@ -2120,15 +2150,15 @@ module Aws::KMS
2120
2150
  # CloudHSM cluster that is associated with the custom key store, or
2121
2151
  # affect any users or keys in the cluster.
2122
2152
  #
2123
- # The custom key store that you delete cannot contain any KMS [KMS
2124
- # keys][2]. Before deleting the key store, verify that you will never
2125
- # need to use any of the KMS keys in the key store for any
2126
- # [cryptographic operations][3]. Then, use ScheduleKeyDeletion to delete
2127
- # the KMS keys from the key store. When the scheduled waiting period
2128
- # expires, the `ScheduleKeyDeletion` operation deletes the KMS keys.
2129
- # Then it makes a best effort to delete the key material from the
2130
- # associated cluster. However, you might need to manually [delete the
2131
- # orphaned key material][4] from the cluster and its backups.
2153
+ # The custom key store that you delete cannot contain any [KMS keys][2].
2154
+ # Before deleting the key store, verify that you will never need to use
2155
+ # any of the KMS keys in the key store for any [cryptographic
2156
+ # operations][3]. Then, use ScheduleKeyDeletion to delete the KMS keys
2157
+ # from the key store. When the scheduled waiting period expires, the
2158
+ # `ScheduleKeyDeletion` operation deletes the KMS keys. Then it makes a
2159
+ # best effort to delete the key material from the associated cluster.
2160
+ # However, you might need to manually [delete the orphaned key
2161
+ # material][4] from the cluster and its backups.
2132
2162
  #
2133
2163
  # After all KMS keys are deleted from KMS, use DisconnectCustomKeyStore
2134
2164
  # to disconnect the key store from KMS. Then, you can delete the custom
@@ -2143,7 +2173,7 @@ module Aws::KMS
2143
2173
  # If the operation succeeds, it returns a JSON object with no
2144
2174
  # properties.
2145
2175
  #
2146
- # This operation is part of the [Custom Key Store feature][1] feature in
2176
+ # This operation is part of the [custom key store feature][1] feature in
2147
2177
  # KMS, which combines the convenience and extensive integration of KMS
2148
2178
  # with the isolation and control of a single-tenant key store.
2149
2179
  #
@@ -2287,7 +2317,7 @@ module Aws::KMS
2287
2317
  # Gets information about [custom key stores][1] in the account and
2288
2318
  # Region.
2289
2319
  #
2290
- # This operation is part of the [Custom Key Store feature][1] feature in
2320
+ # This operation is part of the [custom key store feature][1] feature in
2291
2321
  # KMS, which combines the convenience and extensive integration of KMS
2292
2322
  # with the isolation and control of a single-tenant key store.
2293
2323
  #
@@ -2372,6 +2402,8 @@ module Aws::KMS
2372
2402
  # * {Types::DescribeCustomKeyStoresResponse#next_marker #next_marker} => String
2373
2403
  # * {Types::DescribeCustomKeyStoresResponse#truncated #truncated} => Boolean
2374
2404
  #
2405
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2406
+ #
2375
2407
  #
2376
2408
  # @example Example: To get detailed information about custom key stores in the account and Region
2377
2409
  #
@@ -2427,7 +2459,7 @@ module Aws::KMS
2427
2459
  # resp.custom_key_stores[0].cloud_hsm_cluster_id #=> String
2428
2460
  # resp.custom_key_stores[0].trust_anchor_certificate #=> String
2429
2461
  # resp.custom_key_stores[0].connection_state #=> String, one of "CONNECTED", "CONNECTING", "FAILED", "DISCONNECTED", "DISCONNECTING"
2430
- # resp.custom_key_stores[0].connection_error_code #=> String, one of "INVALID_CREDENTIALS", "CLUSTER_NOT_FOUND", "NETWORK_ERRORS", "INTERNAL_ERROR", "INSUFFICIENT_CLOUDHSM_HSMS", "USER_LOCKED_OUT", "USER_NOT_FOUND", "USER_LOGGED_IN", "SUBNET_NOT_FOUND"
2462
+ # resp.custom_key_stores[0].connection_error_code #=> String, one of "INVALID_CREDENTIALS", "CLUSTER_NOT_FOUND", "NETWORK_ERRORS", "INTERNAL_ERROR", "INSUFFICIENT_CLOUDHSM_HSMS", "USER_LOCKED_OUT", "USER_NOT_FOUND", "USER_LOGGED_IN", "SUBNET_NOT_FOUND", "INSUFFICIENT_FREE_ADDRESSES_IN_SUBNET"
2431
2463
  # resp.custom_key_stores[0].creation_date #=> Time
2432
2464
  # resp.next_marker #=> String
2433
2465
  # resp.truncated #=> Boolean
@@ -2464,7 +2496,7 @@ module Aws::KMS
2464
2496
  # * Whether automatic key rotation is enabled on the KMS key. To get
2465
2497
  # this information, use GetKeyRotationStatus. Also, some key states
2466
2498
  # prevent a KMS key from being automatically rotated. For details, see
2467
- # [How Automatic Key Rotation Works][3] in *Key Management Service
2499
+ # [How Automatic Key Rotation Works][3] in the *Key Management Service
2468
2500
  # Developer Guide*.
2469
2501
  #
2470
2502
  # * Tags on the KMS key. To get this information, use ListResourceTags.
@@ -2724,12 +2756,12 @@ module Aws::KMS
2724
2756
  # resp.key_metadata.cloud_hsm_cluster_id #=> String
2725
2757
  # resp.key_metadata.expiration_model #=> String, one of "KEY_MATERIAL_EXPIRES", "KEY_MATERIAL_DOES_NOT_EXPIRE"
2726
2758
  # resp.key_metadata.key_manager #=> String, one of "AWS", "CUSTOMER"
2727
- # 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"
2728
- # 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"
2759
+ # 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"
2760
+ # 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"
2729
2761
  # resp.key_metadata.encryption_algorithms #=> Array
2730
- # resp.key_metadata.encryption_algorithms[0] #=> String, one of "SYMMETRIC_DEFAULT", "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256"
2762
+ # resp.key_metadata.encryption_algorithms[0] #=> String, one of "SYMMETRIC_DEFAULT", "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256", "SM2PKE"
2731
2763
  # resp.key_metadata.signing_algorithms #=> Array
2732
- # 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"
2764
+ # 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"
2733
2765
  # resp.key_metadata.multi_region #=> Boolean
2734
2766
  # resp.key_metadata.multi_region_configuration.multi_region_key_type #=> String, one of "PRIMARY", "REPLICA"
2735
2767
  # resp.key_metadata.multi_region_configuration.primary_key.arn #=> String
@@ -2940,7 +2972,7 @@ module Aws::KMS
2940
2972
  # If the operation succeeds, it returns a JSON object with no
2941
2973
  # properties.
2942
2974
  #
2943
- # This operation is part of the [Custom Key Store feature][1] feature in
2975
+ # This operation is part of the [custom key store feature][1] feature in
2944
2976
  # KMS, which combines the convenience and extensive integration of KMS
2945
2977
  # with the isolation and control of a single-tenant key store.
2946
2978
  #
@@ -3204,7 +3236,7 @@ module Aws::KMS
3204
3236
  #
3205
3237
  # If you specify an asymmetric KMS key, you must also specify the
3206
3238
  # encryption algorithm. The algorithm must be compatible with the KMS
3207
- # key type.
3239
+ # key spec.
3208
3240
  #
3209
3241
  # When you use an asymmetric KMS key to encrypt or reencrypt data, be
3210
3242
  # sure to record the KMS key and encryption algorithm that you choose.
@@ -3246,6 +3278,8 @@ module Aws::KMS
3246
3278
  #
3247
3279
  # * `RSAES_OAEP_SHA_256`\: 446 bytes
3248
3280
  #
3281
+ # * `SM2PKE`\: 1024 bytes (China Regions only)
3282
+ #
3249
3283
  # The KMS key that you use for this operation must be in a compatible
3250
3284
  # key state. For details, see [Key states of KMS keys][2] in the *Key
3251
3285
  # Management Service Developer Guide*.
@@ -3374,14 +3408,14 @@ module Aws::KMS
3374
3408
  # "EncryptionContextKey" => "EncryptionContextValue",
3375
3409
  # },
3376
3410
  # grant_tokens: ["GrantTokenType"],
3377
- # encryption_algorithm: "SYMMETRIC_DEFAULT", # accepts SYMMETRIC_DEFAULT, RSAES_OAEP_SHA_1, RSAES_OAEP_SHA_256
3411
+ # encryption_algorithm: "SYMMETRIC_DEFAULT", # accepts SYMMETRIC_DEFAULT, RSAES_OAEP_SHA_1, RSAES_OAEP_SHA_256, SM2PKE
3378
3412
  # })
3379
3413
  #
3380
3414
  # @example Response structure
3381
3415
  #
3382
3416
  # resp.ciphertext_blob #=> String
3383
3417
  # resp.key_id #=> String
3384
- # resp.encryption_algorithm #=> String, one of "SYMMETRIC_DEFAULT", "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256"
3418
+ # resp.encryption_algorithm #=> String, one of "SYMMETRIC_DEFAULT", "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256", "SM2PKE"
3385
3419
  #
3386
3420
  # @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/Encrypt AWS API Documentation
3387
3421
  #
@@ -3403,9 +3437,16 @@ module Aws::KMS
3403
3437
  # To generate a data key, specify the symmetric encryption KMS key that
3404
3438
  # will be used to encrypt the data key. You cannot use an asymmetric KMS
3405
3439
  # key to encrypt data keys. To get the type of your KMS key, use the
3406
- # DescribeKey operation. You must also specify the length of the data
3407
- # key. Use either the `KeySpec` or `NumberOfBytes` parameters (but not
3408
- # both). For 128-bit and 256-bit data keys, use the `KeySpec` parameter.
3440
+ # DescribeKey operation.
3441
+ #
3442
+ # You must also specify the length of the data key. Use either the
3443
+ # `KeySpec` or `NumberOfBytes` parameters (but not both). For 128-bit
3444
+ # and 256-bit data keys, use the `KeySpec` parameter.
3445
+ #
3446
+ # To generate an SM4 data key (China Regions only), specify a `KeySpec`
3447
+ # value of `AES_128` or `NumberOfBytes` value of `128`. The symmetric
3448
+ # encryption key used in China Regions to encrypt your data key is an
3449
+ # SM4 encryption key.
3409
3450
  #
3410
3451
  # To get only an encrypted copy of the data key, use
3411
3452
  # GenerateDataKeyWithoutPlaintext. To generate an asymmetric data key
@@ -3632,10 +3673,11 @@ module Aws::KMS
3632
3673
  # type and origin of your KMS key, use the DescribeKey operation.
3633
3674
  #
3634
3675
  # Use the `KeyPairSpec` parameter to choose an RSA or Elliptic Curve
3635
- # (ECC) data key pair. KMS recommends that your use ECC key pairs for
3636
- # signing, and use RSA key pairs for either encryption or signing, but
3637
- # not both. However, KMS cannot enforce any restrictions on the use of
3638
- # data key pairs outside of KMS.
3676
+ # (ECC) data key pair. In China Regions, you can also choose an SM2 data
3677
+ # key pair. KMS recommends that you use ECC key pairs for signing, and
3678
+ # use RSA and SM2 key pairs for either encryption or signing, but not
3679
+ # both. However, KMS cannot enforce any restrictions on the use of data
3680
+ # key pairs outside of KMS.
3639
3681
  #
3640
3682
  # If you are using the data key pair to encrypt data, or for any
3641
3683
  # operation where you don't immediately need a private key, consider
@@ -3738,10 +3780,12 @@ module Aws::KMS
3738
3780
  # @option params [required, String] :key_pair_spec
3739
3781
  # Determines the type of data key pair that is generated.
3740
3782
  #
3741
- # The KMS rule that restricts the use of asymmetric RSA KMS keys to
3742
- # encrypt and decrypt or to sign and verify (but not both), and the rule
3743
- # that permits you to use ECC KMS keys only to sign and verify, are not
3744
- # effective on data key pairs, which are used outside of KMS.
3783
+ # The KMS rule that restricts the use of asymmetric RSA and SM2 KMS keys
3784
+ # to encrypt and decrypt or to sign and verify (but not both), and the
3785
+ # rule that permits you to use ECC KMS keys only to sign and verify, are
3786
+ # not effective on data key pairs, which are used outside of KMS. The
3787
+ # SM2 key spec is only available in China Regions. RSA and ECC
3788
+ # asymmetric key pairs are also available in China Regions.
3745
3789
  #
3746
3790
  # @option params [Array<String>] :grant_tokens
3747
3791
  # A list of grant tokens.
@@ -3791,7 +3835,7 @@ module Aws::KMS
3791
3835
  # "EncryptionContextKey" => "EncryptionContextValue",
3792
3836
  # },
3793
3837
  # key_id: "KeyIdType", # required
3794
- # 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
3838
+ # 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
3795
3839
  # grant_tokens: ["GrantTokenType"],
3796
3840
  # })
3797
3841
  #
@@ -3801,7 +3845,7 @@ module Aws::KMS
3801
3845
  # resp.private_key_plaintext #=> String
3802
3846
  # resp.public_key #=> String
3803
3847
  # resp.key_id #=> String
3804
- # 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"
3848
+ # 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"
3805
3849
  #
3806
3850
  # @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/GenerateDataKeyPair AWS API Documentation
3807
3851
  #
@@ -3831,10 +3875,11 @@ module Aws::KMS
3831
3875
  # type and origin of your KMS key, use the DescribeKey operation.
3832
3876
  #
3833
3877
  # Use the `KeyPairSpec` parameter to choose an RSA or Elliptic Curve
3834
- # (ECC) data key pair. KMS recommends that your use ECC key pairs for
3835
- # signing, and use RSA key pairs for either encryption or signing, but
3836
- # not both. However, KMS cannot enforce any restrictions on the use of
3837
- # data key pairs outside of KMS.
3878
+ # (ECC) data key pair. In China Regions, you can also choose an SM2 data
3879
+ # key pair. KMS recommends that you use ECC key pairs for signing, and
3880
+ # use RSA and SM2 key pairs for either encryption or signing, but not
3881
+ # both. However, KMS cannot enforce any restrictions on the use of data
3882
+ # key pairs outside of KMS.
3838
3883
  #
3839
3884
  # `GenerateDataKeyPairWithoutPlaintext` returns a unique data key pair
3840
3885
  # for each request. The bytes in the key are not related to the caller
@@ -3927,10 +3972,12 @@ module Aws::KMS
3927
3972
  # @option params [required, String] :key_pair_spec
3928
3973
  # Determines the type of data key pair that is generated.
3929
3974
  #
3930
- # The KMS rule that restricts the use of asymmetric RSA KMS keys to
3931
- # encrypt and decrypt or to sign and verify (but not both), and the rule
3932
- # that permits you to use ECC KMS keys only to sign and verify, are not
3933
- # effective on data key pairs, which are used outside of KMS.
3975
+ # The KMS rule that restricts the use of asymmetric RSA and SM2 KMS keys
3976
+ # to encrypt and decrypt or to sign and verify (but not both), and the
3977
+ # rule that permits you to use ECC KMS keys only to sign and verify, are
3978
+ # not effective on data key pairs, which are used outside of KMS. The
3979
+ # SM2 key spec is only available in China Regions. RSA and ECC
3980
+ # asymmetric key pairs are also available in China Regions.
3934
3981
  #
3935
3982
  # @option params [Array<String>] :grant_tokens
3936
3983
  # A list of grant tokens.
@@ -3978,7 +4025,7 @@ module Aws::KMS
3978
4025
  # "EncryptionContextKey" => "EncryptionContextValue",
3979
4026
  # },
3980
4027
  # key_id: "KeyIdType", # required
3981
- # 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
4028
+ # 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
3982
4029
  # grant_tokens: ["GrantTokenType"],
3983
4030
  # })
3984
4031
  #
@@ -3987,7 +4034,7 @@ module Aws::KMS
3987
4034
  # resp.private_key_ciphertext_blob #=> String
3988
4035
  # resp.public_key #=> String
3989
4036
  # resp.key_id #=> String
3990
- # 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"
4037
+ # 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"
3991
4038
  #
3992
4039
  # @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/GenerateDataKeyPairWithoutPlaintext AWS API Documentation
3993
4040
  #
@@ -4315,6 +4362,9 @@ module Aws::KMS
4315
4362
 
4316
4363
  # Returns a random byte string that is cryptographically secure.
4317
4364
  #
4365
+ # You must use the `NumberOfBytes` parameter to specify the length of
4366
+ # the random byte string. There is no default value for string length.
4367
+ #
4318
4368
  # By default, the random byte string is generated in KMS. To generate
4319
4369
  # the byte string in the CloudHSM cluster that is associated with a
4320
4370
  # [custom key store][1], specify the custom key store ID.
@@ -4328,6 +4378,9 @@ module Aws::KMS
4328
4378
  # For more information about entropy and random number generation, see
4329
4379
  # [Key Management Service Cryptographic Details][4].
4330
4380
  #
4381
+ # **Cross-account use**\: Not applicable. `GenerateRandom` does not use
4382
+ # any account-specific resources, such as KMS keys.
4383
+ #
4331
4384
  # **Required permissions**\: [kms:GenerateRandom][5] (IAM policy)
4332
4385
  #
4333
4386
  #
@@ -4339,7 +4392,7 @@ module Aws::KMS
4339
4392
  # [5]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
4340
4393
  #
4341
4394
  # @option params [Integer] :number_of_bytes
4342
- # The length of the byte string.
4395
+ # The length of the random byte string. This parameter is required.
4343
4396
  #
4344
4397
  # @option params [String] :custom_key_store_id
4345
4398
  # Generates the random byte string in the CloudHSM cluster that is
@@ -4726,8 +4779,12 @@ module Aws::KMS
4726
4779
  # the public key within KMS, you benefit from the authentication,
4727
4780
  # authorization, and logging that are part of every KMS operation. You
4728
4781
  # also reduce of risk of encrypting data that cannot be decrypted. These
4729
- # features are not effective outside of KMS. For details, see [Special
4730
- # Considerations for Downloading Public Keys][2].
4782
+ # features are not effective outside of KMS.
4783
+ #
4784
+ # To verify a signature outside of KMS with an SM2 public key (China
4785
+ # Regions only), you must specify the distinguishing ID. By default, KMS
4786
+ # uses `1234567812345678` as the distinguishing ID. For more
4787
+ # information, see [Offline verification with SM2 key pairs][2].
4731
4788
  #
4732
4789
  # To help you use the public key safely outside of KMS, `GetPublicKey`
4733
4790
  # returns important information about the public key in the response,
@@ -4764,7 +4821,7 @@ module Aws::KMS
4764
4821
  #
4765
4822
  #
4766
4823
  # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
4767
- # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/download-public-key.html#download-public-key-considerations
4824
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/asymmetric-key-specs.html#key-spec-sm-offline-verification
4768
4825
  # [3]: https://docs.aws.amazon.com/kms/latest/APIReference/API_GetPublicKey.html#KMS-GetPublicKey-response-KeySpec
4769
4826
  # [4]: https://docs.aws.amazon.com/kms/latest/APIReference/API_GetPublicKey.html#KMS-GetPublicKey-response-KeyUsage
4770
4827
  # [5]: https://docs.aws.amazon.com/kms/latest/APIReference/API_GetPublicKey.html#KMS-GetPublicKey-response-EncryptionAlgorithms
@@ -4851,13 +4908,13 @@ module Aws::KMS
4851
4908
  #
4852
4909
  # resp.key_id #=> String
4853
4910
  # resp.public_key #=> String
4854
- # 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"
4855
- # 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"
4911
+ # 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"
4912
+ # 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"
4856
4913
  # resp.key_usage #=> String, one of "SIGN_VERIFY", "ENCRYPT_DECRYPT", "GENERATE_VERIFY_MAC"
4857
4914
  # resp.encryption_algorithms #=> Array
4858
- # resp.encryption_algorithms[0] #=> String, one of "SYMMETRIC_DEFAULT", "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256"
4915
+ # resp.encryption_algorithms[0] #=> String, one of "SYMMETRIC_DEFAULT", "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256", "SM2PKE"
4859
4916
  # resp.signing_algorithms #=> Array
4860
- # 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"
4917
+ # 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"
4861
4918
  #
4862
4919
  # @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/GetPublicKey AWS API Documentation
4863
4920
  #
@@ -5654,6 +5711,8 @@ module Aws::KMS
5654
5711
  # * {Types::ListResourceTagsResponse#next_marker #next_marker} => String
5655
5712
  # * {Types::ListResourceTagsResponse#truncated #truncated} => Boolean
5656
5713
  #
5714
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
5715
+ #
5657
5716
  #
5658
5717
  # @example Example: To list tags for a KMS key
5659
5718
  #
@@ -5782,6 +5841,8 @@ module Aws::KMS
5782
5841
  # * {Types::ListGrantsResponse#next_marker #next_marker} => String
5783
5842
  # * {Types::ListGrantsResponse#truncated #truncated} => Boolean
5784
5843
  #
5844
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
5845
+ #
5785
5846
  #
5786
5847
  # @example Example: To list grants that the specified principal can retire
5787
5848
  #
@@ -5910,25 +5971,29 @@ module Aws::KMS
5910
5971
  # visible][2] in the *Amazon Web Services Identity and Access
5911
5972
  # Management User Guide*.
5912
5973
  #
5913
- # A key policy document must conform to the following rules.
5974
+ # A key policy document can include only the following characters:
5914
5975
  #
5915
- # * Up to 32 kilobytes (32768 bytes)
5976
+ # * Printable ASCII characters from the space character (`\u0020`)
5977
+ # through the end of the ASCII character range.
5916
5978
  #
5917
- # * Must be UTF-8 encoded
5979
+ # * Printable characters in the Basic Latin and Latin-1 Supplement
5980
+ # character set (through `\u00FF`).
5918
5981
  #
5919
- # * The only Unicode characters that are permitted in a key policy
5920
- # document are the horizontal tab (U+0009), linefeed (U+000A),
5921
- # carriage return (U+000D), and characters in the range U+0020 to
5922
- # U+00FF.
5982
+ # * The tab (`\u0009`), line feed (`\u000A`), and carriage return
5983
+ # (`\u000D`) special characters
5923
5984
  #
5924
- # * The `Sid` element in a key policy statement can include spaces.
5925
- # (Spaces are prohibited in the `Sid` element of an IAM policy
5926
- # document.)
5985
+ # For information about key policies, see [Key policies in KMS][3] in
5986
+ # the *Key Management Service Developer Guide*. For help writing and
5987
+ # formatting a JSON policy document, see the [IAM JSON Policy
5988
+ # Reference][4] in the <i> <i>Identity and Access Management User
5989
+ # Guide</i> </i>.
5927
5990
  #
5928
5991
  #
5929
5992
  #
5930
5993
  # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-root-enable-iam
5931
5994
  # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_general.html#troubleshoot_general_eventual-consistency
5995
+ # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html
5996
+ # [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html
5932
5997
  #
5933
5998
  # @option params [Boolean] :bypass_policy_lockout_safety_check
5934
5999
  # A flag to indicate whether to bypass the key policy lockout safety
@@ -6260,8 +6325,8 @@ module Aws::KMS
6260
6325
  # destination_encryption_context: {
6261
6326
  # "EncryptionContextKey" => "EncryptionContextValue",
6262
6327
  # },
6263
- # source_encryption_algorithm: "SYMMETRIC_DEFAULT", # accepts SYMMETRIC_DEFAULT, RSAES_OAEP_SHA_1, RSAES_OAEP_SHA_256
6264
- # destination_encryption_algorithm: "SYMMETRIC_DEFAULT", # accepts SYMMETRIC_DEFAULT, RSAES_OAEP_SHA_1, RSAES_OAEP_SHA_256
6328
+ # source_encryption_algorithm: "SYMMETRIC_DEFAULT", # accepts SYMMETRIC_DEFAULT, RSAES_OAEP_SHA_1, RSAES_OAEP_SHA_256, SM2PKE
6329
+ # destination_encryption_algorithm: "SYMMETRIC_DEFAULT", # accepts SYMMETRIC_DEFAULT, RSAES_OAEP_SHA_1, RSAES_OAEP_SHA_256, SM2PKE
6265
6330
  # grant_tokens: ["GrantTokenType"],
6266
6331
  # })
6267
6332
  #
@@ -6270,8 +6335,8 @@ module Aws::KMS
6270
6335
  # resp.ciphertext_blob #=> String
6271
6336
  # resp.source_key_id #=> String
6272
6337
  # resp.key_id #=> String
6273
- # resp.source_encryption_algorithm #=> String, one of "SYMMETRIC_DEFAULT", "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256"
6274
- # resp.destination_encryption_algorithm #=> String, one of "SYMMETRIC_DEFAULT", "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256"
6338
+ # resp.source_encryption_algorithm #=> String, one of "SYMMETRIC_DEFAULT", "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256", "SM2PKE"
6339
+ # resp.destination_encryption_algorithm #=> String, one of "SYMMETRIC_DEFAULT", "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256", "SM2PKE"
6275
6340
  #
6276
6341
  # @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/ReEncrypt AWS API Documentation
6277
6342
  #
@@ -6466,26 +6531,30 @@ module Aws::KMS
6466
6531
  # visible][3] in the <i> <i>Identity and Access Management User
6467
6532
  # Guide</i> </i>.
6468
6533
  #
6469
- # A key policy document must conform to the following rules.
6534
+ # A key policy document can include only the following characters:
6470
6535
  #
6471
- # * Up to 32 kilobytes (32768 bytes)
6536
+ # * Printable ASCII characters from the space character (`\u0020`)
6537
+ # through the end of the ASCII character range.
6472
6538
  #
6473
- # * Must be UTF-8 encoded
6539
+ # * Printable characters in the Basic Latin and Latin-1 Supplement
6540
+ # character set (through `\u00FF`).
6474
6541
  #
6475
- # * The only Unicode characters that are permitted in a key policy
6476
- # document are the horizontal tab (U+0009), linefeed (U+000A),
6477
- # carriage return (U+000D), and characters in the range U+0020 to
6478
- # U+00FF.
6542
+ # * The tab (`\u0009`), line feed (`\u000A`), and carriage return
6543
+ # (`\u000D`) special characters
6479
6544
  #
6480
- # * The `Sid` element in a key policy statement can include spaces.
6481
- # (Spaces are prohibited in the `Sid` element of an IAM policy
6482
- # document.)
6545
+ # For information about key policies, see [Key policies in KMS][4] in
6546
+ # the *Key Management Service Developer Guide*. For help writing and
6547
+ # formatting a JSON policy document, see the [IAM JSON Policy
6548
+ # Reference][5] in the <i> <i>Identity and Access Management User
6549
+ # Guide</i> </i>.
6483
6550
  #
6484
6551
  #
6485
6552
  #
6486
6553
  # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default
6487
6554
  # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-root-enable-iam
6488
6555
  # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_general.html#troubleshoot_general_eventual-consistency
6556
+ # [4]: https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html
6557
+ # [5]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html
6489
6558
  #
6490
6559
  # @option params [Boolean] :bypass_policy_lockout_safety_check
6491
6560
  # A flag to indicate whether to bypass the key policy lockout safety
@@ -6637,12 +6706,12 @@ module Aws::KMS
6637
6706
  # resp.replica_key_metadata.cloud_hsm_cluster_id #=> String
6638
6707
  # resp.replica_key_metadata.expiration_model #=> String, one of "KEY_MATERIAL_EXPIRES", "KEY_MATERIAL_DOES_NOT_EXPIRE"
6639
6708
  # resp.replica_key_metadata.key_manager #=> String, one of "AWS", "CUSTOMER"
6640
- # 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"
6641
- # 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"
6709
+ # 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"
6710
+ # 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"
6642
6711
  # resp.replica_key_metadata.encryption_algorithms #=> Array
6643
- # resp.replica_key_metadata.encryption_algorithms[0] #=> String, one of "SYMMETRIC_DEFAULT", "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256"
6712
+ # resp.replica_key_metadata.encryption_algorithms[0] #=> String, one of "SYMMETRIC_DEFAULT", "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256", "SM2PKE"
6644
6713
  # resp.replica_key_metadata.signing_algorithms #=> Array
6645
- # 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"
6714
+ # 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"
6646
6715
  # resp.replica_key_metadata.multi_region #=> Boolean
6647
6716
  # resp.replica_key_metadata.multi_region_configuration.multi_region_key_type #=> String, one of "PRIMARY", "REPLICA"
6648
6717
  # resp.replica_key_metadata.multi_region_configuration.primary_key.arn #=> String
@@ -7144,14 +7213,14 @@ module Aws::KMS
7144
7213
  # message: "data", # required
7145
7214
  # message_type: "RAW", # accepts RAW, DIGEST
7146
7215
  # grant_tokens: ["GrantTokenType"],
7147
- # signing_algorithm: "RSASSA_PSS_SHA_256", # required, accepts 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
7216
+ # signing_algorithm: "RSASSA_PSS_SHA_256", # required, accepts 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
7148
7217
  # })
7149
7218
  #
7150
7219
  # @example Response structure
7151
7220
  #
7152
7221
  # resp.key_id #=> String
7153
7222
  # resp.signature #=> String
7154
- # resp.signing_algorithm #=> 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"
7223
+ # resp.signing_algorithm #=> 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"
7155
7224
  #
7156
7225
  # @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/Sign AWS API Documentation
7157
7226
  #
@@ -7442,7 +7511,7 @@ module Aws::KMS
7442
7511
  # @option params [required, String] :alias_name
7443
7512
  # Identifies the alias that is changing its KMS key. This value must
7444
7513
  # begin with `alias/` followed by the alias name, such as
7445
- # `alias/ExampleAlias`. You cannot use UpdateAlias to change the alias
7514
+ # `alias/ExampleAlias`. You cannot use `UpdateAlias` to change the alias
7446
7515
  # name.
7447
7516
  #
7448
7517
  # @option params [required, String] :target_key_id
@@ -7541,7 +7610,7 @@ module Aws::KMS
7541
7610
  # If the operation succeeds, it returns a JSON object with no
7542
7611
  # properties.
7543
7612
  #
7544
- # This operation is part of the [Custom Key Store feature][3] feature in
7613
+ # This operation is part of the [custom key store feature][3] feature in
7545
7614
  # KMS, which combines the convenience and extensive integration of KMS
7546
7615
  # with the isolation and control of a single-tenant key store.
7547
7616
  #
@@ -7888,7 +7957,11 @@ module Aws::KMS
7888
7957
  # You can also verify the digital signature by using the public key of
7889
7958
  # the KMS key outside of KMS. Use the GetPublicKey operation to download
7890
7959
  # the public key in the asymmetric KMS key and then use the public key
7891
- # to verify the signature outside of KMS. The advantage of using the
7960
+ # to verify the signature outside of KMS. To verify a signature outside
7961
+ # of KMS with an SM2 public key, you must specify the distinguishing ID.
7962
+ # By default, KMS uses `1234567812345678` as the distinguishing ID. For
7963
+ # more information, see [Offline verification with SM2 key pairs][2] in
7964
+ # *Key Management Service Developer Guide*. The advantage of using the
7892
7965
  # `Verify` operation is that it is performed within KMS. As a result,
7893
7966
  # it's easy to call, the operation is performed within the FIPS
7894
7967
  # boundary, it is logged in CloudTrail, and you can use key policy and
@@ -7896,22 +7969,23 @@ module Aws::KMS
7896
7969
  # signatures.
7897
7970
  #
7898
7971
  # The KMS key that you use for this operation must be in a compatible
7899
- # key state. For details, see [Key states of KMS keys][2] in the *Key
7972
+ # key state. For details, see [Key states of KMS keys][3] in the *Key
7900
7973
  # Management Service Developer Guide*.
7901
7974
  #
7902
7975
  # **Cross-account use**\: Yes. To perform this operation with a KMS key
7903
7976
  # in a different Amazon Web Services account, specify the key ARN or
7904
7977
  # alias ARN in the value of the `KeyId` parameter.
7905
7978
  #
7906
- # **Required permissions**\: [kms:Verify][3] (key policy)
7979
+ # **Required permissions**\: [kms:Verify][4] (key policy)
7907
7980
  #
7908
7981
  # **Related operations**\: Sign
7909
7982
  #
7910
7983
  #
7911
7984
  #
7912
7985
  # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
7913
- # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
7914
- # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
7986
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/asymmetric-key-specs.html#key-spec-sm-offline-verification
7987
+ # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
7988
+ # [4]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
7915
7989
  #
7916
7990
  # @option params [required, String] :key_id
7917
7991
  # Identifies the asymmetric KMS key that will be used to verify the
@@ -8010,7 +8084,7 @@ module Aws::KMS
8010
8084
  # message: "data", # required
8011
8085
  # message_type: "RAW", # accepts RAW, DIGEST
8012
8086
  # signature: "data", # required
8013
- # signing_algorithm: "RSASSA_PSS_SHA_256", # required, accepts 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
8087
+ # signing_algorithm: "RSASSA_PSS_SHA_256", # required, accepts 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
8014
8088
  # grant_tokens: ["GrantTokenType"],
8015
8089
  # })
8016
8090
  #
@@ -8018,7 +8092,7 @@ module Aws::KMS
8018
8092
  #
8019
8093
  # resp.key_id #=> String
8020
8094
  # resp.signature_valid #=> Boolean
8021
- # resp.signing_algorithm #=> 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"
8095
+ # resp.signing_algorithm #=> 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"
8022
8096
  #
8023
8097
  # @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/Verify AWS API Documentation
8024
8098
  #
@@ -8164,7 +8238,7 @@ module Aws::KMS
8164
8238
  params: params,
8165
8239
  config: config)
8166
8240
  context[:gem_name] = 'aws-sdk-kms'
8167
- context[:gem_version] = '1.57.0'
8241
+ context[:gem_version] = '1.59.0'
8168
8242
  Seahorse::Client::Request.new(handlers, context)
8169
8243
  end
8170
8244