aws-sdk-kms 1.72.0 → 1.96.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +120 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-kms/client.rb +1071 -186
- data/lib/aws-sdk-kms/client_api.rb +131 -2
- data/lib/aws-sdk-kms/endpoint_parameters.rb +9 -6
- data/lib/aws-sdk-kms/endpoint_provider.rb +1 -1
- data/lib/aws-sdk-kms/endpoints.rb +2 -698
- data/lib/aws-sdk-kms/errors.rb +16 -0
- data/lib/aws-sdk-kms/plugins/endpoints.rb +23 -114
- data/lib/aws-sdk-kms/types.rb +509 -74
- data/lib/aws-sdk-kms.rb +15 -11
- data/sig/client.rbs +804 -0
- data/sig/errors.rbs +160 -0
- data/sig/resource.rbs +83 -0
- data/sig/types.rbs +1036 -0
- data/sig/waiters.rbs +13 -0
- metadata +16 -11
data/lib/aws-sdk-kms/client.rb
CHANGED
@@ -22,6 +22,7 @@ require 'aws-sdk-core/plugins/endpoint_pattern.rb'
|
|
22
22
|
require 'aws-sdk-core/plugins/response_paging.rb'
|
23
23
|
require 'aws-sdk-core/plugins/stub_responses.rb'
|
24
24
|
require 'aws-sdk-core/plugins/idempotency_token.rb'
|
25
|
+
require 'aws-sdk-core/plugins/invocation_id.rb'
|
25
26
|
require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
|
26
27
|
require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
|
27
28
|
require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
|
@@ -31,11 +32,10 @@ require 'aws-sdk-core/plugins/checksum_algorithm.rb'
|
|
31
32
|
require 'aws-sdk-core/plugins/request_compression.rb'
|
32
33
|
require 'aws-sdk-core/plugins/defaults_mode.rb'
|
33
34
|
require 'aws-sdk-core/plugins/recursion_detection.rb'
|
35
|
+
require 'aws-sdk-core/plugins/telemetry.rb'
|
34
36
|
require 'aws-sdk-core/plugins/sign.rb'
|
35
37
|
require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
|
36
38
|
|
37
|
-
Aws::Plugins::GlobalConfiguration.add_identifier(:kms)
|
38
|
-
|
39
39
|
module Aws::KMS
|
40
40
|
# An API client for KMS. To construct a client, you need to configure a `:region` and `:credentials`.
|
41
41
|
#
|
@@ -72,6 +72,7 @@ module Aws::KMS
|
|
72
72
|
add_plugin(Aws::Plugins::ResponsePaging)
|
73
73
|
add_plugin(Aws::Plugins::StubResponses)
|
74
74
|
add_plugin(Aws::Plugins::IdempotencyToken)
|
75
|
+
add_plugin(Aws::Plugins::InvocationId)
|
75
76
|
add_plugin(Aws::Plugins::JsonvalueConverter)
|
76
77
|
add_plugin(Aws::Plugins::ClientMetricsPlugin)
|
77
78
|
add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
|
@@ -81,12 +82,18 @@ module Aws::KMS
|
|
81
82
|
add_plugin(Aws::Plugins::RequestCompression)
|
82
83
|
add_plugin(Aws::Plugins::DefaultsMode)
|
83
84
|
add_plugin(Aws::Plugins::RecursionDetection)
|
85
|
+
add_plugin(Aws::Plugins::Telemetry)
|
84
86
|
add_plugin(Aws::Plugins::Sign)
|
85
87
|
add_plugin(Aws::Plugins::Protocols::JsonRpc)
|
86
88
|
add_plugin(Aws::KMS::Plugins::Endpoints)
|
87
89
|
|
88
90
|
# @overload initialize(options)
|
89
91
|
# @param [Hash] options
|
92
|
+
#
|
93
|
+
# @option options [Array<Seahorse::Client::Plugin>] :plugins ([]])
|
94
|
+
# A list of plugins to apply to the client. Each plugin is either a
|
95
|
+
# class name or an instance of a plugin class.
|
96
|
+
#
|
90
97
|
# @option options [required, Aws::CredentialProvider] :credentials
|
91
98
|
# Your AWS credentials. This can be an instance of any one of the
|
92
99
|
# following classes:
|
@@ -121,13 +128,15 @@ module Aws::KMS
|
|
121
128
|
# locations will be searched for credentials:
|
122
129
|
#
|
123
130
|
# * `Aws.config[:credentials]`
|
124
|
-
# * The `:access_key_id`, `:secret_access_key`,
|
125
|
-
#
|
131
|
+
# * The `:access_key_id`, `:secret_access_key`, `:session_token`, and
|
132
|
+
# `:account_id` options.
|
133
|
+
# * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'],
|
134
|
+
# ENV['AWS_SESSION_TOKEN'], and ENV['AWS_ACCOUNT_ID']
|
126
135
|
# * `~/.aws/credentials`
|
127
136
|
# * `~/.aws/config`
|
128
137
|
# * EC2/ECS IMDS instance profile - When used by default, the timeouts
|
129
138
|
# are very aggressive. Construct and pass an instance of
|
130
|
-
# `Aws::
|
139
|
+
# `Aws::InstanceProfileCredentials` or `Aws::ECSCredentials` to
|
131
140
|
# enable retries and extended timeouts. Instance profile credential
|
132
141
|
# fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
|
133
142
|
# to true.
|
@@ -146,6 +155,8 @@ module Aws::KMS
|
|
146
155
|
#
|
147
156
|
# @option options [String] :access_key_id
|
148
157
|
#
|
158
|
+
# @option options [String] :account_id
|
159
|
+
#
|
149
160
|
# @option options [Boolean] :active_endpoint_cache (false)
|
150
161
|
# When set to `true`, a thread polling for endpoints will be running in
|
151
162
|
# the background every 60 secs (default). Defaults to `false`.
|
@@ -196,10 +207,16 @@ module Aws::KMS
|
|
196
207
|
# When set to 'true' the request body will not be compressed
|
197
208
|
# for supported operations.
|
198
209
|
#
|
199
|
-
# @option options [String] :endpoint
|
200
|
-
#
|
201
|
-
#
|
202
|
-
#
|
210
|
+
# @option options [String, URI::HTTPS, URI::HTTP] :endpoint
|
211
|
+
# Normally you should not configure the `:endpoint` option
|
212
|
+
# directly. This is normally constructed from the `:region`
|
213
|
+
# option. Configuring `:endpoint` is normally reserved for
|
214
|
+
# connecting to test or custom endpoints. The endpoint should
|
215
|
+
# be a URI formatted like:
|
216
|
+
#
|
217
|
+
# 'http://example.com'
|
218
|
+
# 'https://example.com'
|
219
|
+
# 'http://example.com:123'
|
203
220
|
#
|
204
221
|
# @option options [Integer] :endpoint_cache_max_entries (1000)
|
205
222
|
# Used for the maximum size limit of the LRU cache storing endpoints data
|
@@ -289,25 +306,31 @@ module Aws::KMS
|
|
289
306
|
# throttling. This is a provisional mode that may change behavior
|
290
307
|
# in the future.
|
291
308
|
#
|
292
|
-
#
|
293
309
|
# @option options [String] :sdk_ua_app_id
|
294
310
|
# A unique and opaque application ID that is appended to the
|
295
|
-
# User-Agent header as app
|
296
|
-
# maximum length of 50.
|
311
|
+
# User-Agent header as app/sdk_ua_app_id. It should have a
|
312
|
+
# maximum length of 50. This variable is sourced from environment
|
313
|
+
# variable AWS_SDK_UA_APP_ID or the shared config profile attribute sdk_ua_app_id.
|
297
314
|
#
|
298
315
|
# @option options [String] :secret_access_key
|
299
316
|
#
|
300
317
|
# @option options [String] :session_token
|
301
318
|
#
|
319
|
+
# @option options [Array] :sigv4a_signing_region_set
|
320
|
+
# A list of regions that should be signed with SigV4a signing. When
|
321
|
+
# not passed, a default `:sigv4a_signing_region_set` is searched for
|
322
|
+
# in the following locations:
|
323
|
+
#
|
324
|
+
# * `Aws.config[:sigv4a_signing_region_set]`
|
325
|
+
# * `ENV['AWS_SIGV4A_SIGNING_REGION_SET']`
|
326
|
+
# * `~/.aws/config`
|
327
|
+
#
|
302
328
|
# @option options [Boolean] :simple_json (false)
|
303
329
|
# Disables request parameter conversion, validation, and formatting.
|
304
|
-
# Also
|
305
|
-
#
|
306
|
-
#
|
307
|
-
# structures.
|
308
|
-
#
|
309
|
-
# When `:simple_json` is enabled, the request parameters hash must
|
310
|
-
# be formatted exactly as the DynamoDB API expects.
|
330
|
+
# Also disables response data type conversions. The request parameters
|
331
|
+
# hash must be formatted exactly as the API expects.This option is useful
|
332
|
+
# when you want to ensure the highest level of performance by avoiding
|
333
|
+
# overhead of walking request parameters and response data structures.
|
311
334
|
#
|
312
335
|
# @option options [Boolean] :stub_responses (false)
|
313
336
|
# Causes the client to return stubbed responses. By default
|
@@ -318,6 +341,16 @@ module Aws::KMS
|
|
318
341
|
# ** Please note ** When response stubbing is enabled, no HTTP
|
319
342
|
# requests are made, and retries are disabled.
|
320
343
|
#
|
344
|
+
# @option options [Aws::Telemetry::TelemetryProviderBase] :telemetry_provider (Aws::Telemetry::NoOpTelemetryProvider)
|
345
|
+
# Allows you to provide a telemetry provider, which is used to
|
346
|
+
# emit telemetry data. By default, uses `NoOpTelemetryProvider` which
|
347
|
+
# will not record or emit any telemetry data. The SDK supports the
|
348
|
+
# following telemetry providers:
|
349
|
+
#
|
350
|
+
# * OpenTelemetry (OTel) - To use the OTel provider, install and require the
|
351
|
+
# `opentelemetry-sdk` gem and then, pass in an instance of a
|
352
|
+
# `Aws::Telemetry::OTelProvider` for telemetry provider.
|
353
|
+
#
|
321
354
|
# @option options [Aws::TokenProvider] :token_provider
|
322
355
|
# A Bearer Token Provider. This can be an instance of any one of the
|
323
356
|
# following classes:
|
@@ -345,52 +378,75 @@ module Aws::KMS
|
|
345
378
|
# sending the request.
|
346
379
|
#
|
347
380
|
# @option options [Aws::KMS::EndpointProvider] :endpoint_provider
|
348
|
-
# The endpoint provider used to resolve endpoints. Any object that responds to
|
349
|
-
#
|
350
|
-
#
|
351
|
-
#
|
352
|
-
#
|
353
|
-
#
|
354
|
-
#
|
355
|
-
# `
|
356
|
-
#
|
357
|
-
#
|
358
|
-
#
|
359
|
-
#
|
360
|
-
#
|
361
|
-
#
|
362
|
-
#
|
363
|
-
#
|
364
|
-
#
|
381
|
+
# The endpoint provider used to resolve endpoints. Any object that responds to
|
382
|
+
# `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to
|
383
|
+
# `Aws::KMS::EndpointParameters`.
|
384
|
+
#
|
385
|
+
# @option options [Float] :http_continue_timeout (1)
|
386
|
+
# The number of seconds to wait for a 100-continue response before sending the
|
387
|
+
# request body. This option has no effect unless the request has "Expect"
|
388
|
+
# header set to "100-continue". Defaults to `nil` which disables this
|
389
|
+
# behaviour. This value can safely be set per request on the session.
|
390
|
+
#
|
391
|
+
# @option options [Float] :http_idle_timeout (5)
|
392
|
+
# The number of seconds a connection is allowed to sit idle before it
|
393
|
+
# is considered stale. Stale connections are closed and removed from the
|
394
|
+
# pool before making a request.
|
395
|
+
#
|
396
|
+
# @option options [Float] :http_open_timeout (15)
|
397
|
+
# The default number of seconds to wait for response data.
|
398
|
+
# This value can safely be set per-request on the session.
|
399
|
+
#
|
400
|
+
# @option options [URI::HTTP,String] :http_proxy
|
401
|
+
# A proxy to send requests through. Formatted like 'http://proxy.com:123'.
|
402
|
+
#
|
403
|
+
# @option options [Float] :http_read_timeout (60)
|
404
|
+
# The default number of seconds to wait for response data.
|
405
|
+
# This value can safely be set per-request on the session.
|
406
|
+
#
|
407
|
+
# @option options [Boolean] :http_wire_trace (false)
|
408
|
+
# When `true`, HTTP debug output will be sent to the `:logger`.
|
409
|
+
#
|
410
|
+
# @option options [Proc] :on_chunk_received
|
411
|
+
# When a Proc object is provided, it will be used as callback when each chunk
|
412
|
+
# of the response body is received. It provides three arguments: the chunk,
|
413
|
+
# the number of bytes received, and the total number of
|
414
|
+
# bytes in the response (or nil if the server did not send a `content-length`).
|
415
|
+
#
|
416
|
+
# @option options [Proc] :on_chunk_sent
|
417
|
+
# When a Proc object is provided, it will be used as callback when each chunk
|
418
|
+
# of the request body is sent. It provides three arguments: the chunk,
|
419
|
+
# the number of bytes read from the body, and the total number of
|
420
|
+
# bytes in the body.
|
421
|
+
#
|
422
|
+
# @option options [Boolean] :raise_response_errors (true)
|
423
|
+
# When `true`, response errors are raised.
|
424
|
+
#
|
425
|
+
# @option options [String] :ssl_ca_bundle
|
426
|
+
# Full path to the SSL certificate authority bundle file that should be used when
|
427
|
+
# verifying peer certificates. If you do not pass `:ssl_ca_bundle` or
|
428
|
+
# `:ssl_ca_directory` the the system default will be used if available.
|
429
|
+
#
|
430
|
+
# @option options [String] :ssl_ca_directory
|
431
|
+
# Full path of the directory that contains the unbundled SSL certificate
|
432
|
+
# authority files for verifying peer certificates. If you do
|
433
|
+
# not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the system
|
434
|
+
# default will be used if available.
|
365
435
|
#
|
366
|
-
# @option options [
|
367
|
-
#
|
368
|
-
# request body. This option has no effect unless the request has
|
369
|
-
# "Expect" header set to "100-continue". Defaults to `nil` which
|
370
|
-
# disables this behaviour. This value can safely be set per
|
371
|
-
# request on the session.
|
436
|
+
# @option options [String] :ssl_ca_store
|
437
|
+
# Sets the X509::Store to verify peer certificate.
|
372
438
|
#
|
373
|
-
# @option options [
|
374
|
-
#
|
439
|
+
# @option options [OpenSSL::X509::Certificate] :ssl_cert
|
440
|
+
# Sets a client certificate when creating http connections.
|
375
441
|
#
|
376
|
-
# @option options [
|
377
|
-
#
|
442
|
+
# @option options [OpenSSL::PKey] :ssl_key
|
443
|
+
# Sets a client key when creating http connections.
|
378
444
|
#
|
379
|
-
# @option options [
|
380
|
-
#
|
381
|
-
# connection.
|
445
|
+
# @option options [Float] :ssl_timeout
|
446
|
+
# Sets the SSL timeout in seconds
|
382
447
|
#
|
383
|
-
# @option options [
|
384
|
-
#
|
385
|
-
# verifying peer certificates. If you do not pass
|
386
|
-
# `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default
|
387
|
-
# will be used if available.
|
388
|
-
#
|
389
|
-
# @option options [String] :ssl_ca_directory Full path of the
|
390
|
-
# directory that contains the unbundled SSL certificate
|
391
|
-
# authority files for verifying peer certificates. If you do
|
392
|
-
# not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the
|
393
|
-
# system default will be used if available.
|
448
|
+
# @option options [Boolean] :ssl_verify_peer (true)
|
449
|
+
# When `true`, SSL peer certificates are verified when establishing a connection.
|
394
450
|
#
|
395
451
|
def initialize(*args)
|
396
452
|
super
|
@@ -417,11 +473,15 @@ module Aws::KMS
|
|
417
473
|
#
|
418
474
|
# **Related operations**: ScheduleKeyDeletion
|
419
475
|
#
|
476
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
477
|
+
# model. For more information, see [KMS eventual consistency][4].
|
478
|
+
#
|
420
479
|
#
|
421
480
|
#
|
422
481
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/deleting-keys.html
|
423
482
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
424
483
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
484
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
425
485
|
#
|
426
486
|
# @option params [required, String] :key_id
|
427
487
|
# Identifies the KMS key whose deletion is being canceled.
|
@@ -564,6 +624,9 @@ module Aws::KMS
|
|
564
624
|
#
|
565
625
|
# * UpdateCustomKeyStore
|
566
626
|
#
|
627
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
628
|
+
# model. For more information, see [KMS eventual consistency][8].
|
629
|
+
#
|
567
630
|
#
|
568
631
|
#
|
569
632
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
|
@@ -573,6 +636,7 @@ module Aws::KMS
|
|
573
636
|
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/fix-keystore.html
|
574
637
|
# [6]: https://docs.aws.amazon.com/kms/latest/developerguide/xks-troubleshooting.html
|
575
638
|
# [7]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
639
|
+
# [8]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
576
640
|
#
|
577
641
|
# @option params [required, String] :custom_key_store_id
|
578
642
|
# Enter the key store ID of the custom key store that you want to
|
@@ -664,6 +728,9 @@ module Aws::KMS
|
|
664
728
|
#
|
665
729
|
# * UpdateAlias
|
666
730
|
#
|
731
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
732
|
+
# model. For more information, see [KMS eventual consistency][7].
|
733
|
+
#
|
667
734
|
#
|
668
735
|
#
|
669
736
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/abac.html
|
@@ -672,6 +739,7 @@ module Aws::KMS
|
|
672
739
|
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
673
740
|
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
674
741
|
# [6]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-alias.html#alias-access
|
742
|
+
# [7]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
675
743
|
#
|
676
744
|
# @option params [required, String] :alias_name
|
677
745
|
# Specifies the alias name. This value must begin with `alias/` followed
|
@@ -829,6 +897,9 @@ module Aws::KMS
|
|
829
897
|
#
|
830
898
|
# * UpdateCustomKeyStore
|
831
899
|
#
|
900
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
901
|
+
# model. For more information, see [KMS eventual consistency][10].
|
902
|
+
#
|
832
903
|
#
|
833
904
|
#
|
834
905
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
|
@@ -840,6 +911,7 @@ module Aws::KMS
|
|
840
911
|
# [7]: https://docs.aws.amazon.com/kms/latest/developerguide/fix-keystore.html
|
841
912
|
# [8]: https://docs.aws.amazon.com/kms/latest/developerguide/xks-troubleshooting.html
|
842
913
|
# [9]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
914
|
+
# [10]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
843
915
|
#
|
844
916
|
# @option params [required, String] :custom_key_store_name
|
845
917
|
# Specifies a friendly name for the custom key store. The name must be
|
@@ -936,7 +1008,7 @@ module Aws::KMS
|
|
936
1008
|
#
|
937
1009
|
# * An external key store with `PUBLIC_ENDPOINT` connectivity cannot use
|
938
1010
|
# the same `XksProxyUriEndpoint` value as an external key store with
|
939
|
-
# `VPC_ENDPOINT_SERVICE` connectivity in
|
1011
|
+
# `VPC_ENDPOINT_SERVICE` connectivity in this Amazon Web Services
|
940
1012
|
# Region.
|
941
1013
|
#
|
942
1014
|
# * Each external key store with `VPC_ENDPOINT_SERVICE` connectivity
|
@@ -1184,6 +1256,9 @@ module Aws::KMS
|
|
1184
1256
|
#
|
1185
1257
|
# * RevokeGrant
|
1186
1258
|
#
|
1259
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
1260
|
+
# model. For more information, see [KMS eventual consistency][6].
|
1261
|
+
#
|
1187
1262
|
#
|
1188
1263
|
#
|
1189
1264
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/grants.html
|
@@ -1191,6 +1266,7 @@ module Aws::KMS
|
|
1191
1266
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/grant-manage.html#using-grant-token
|
1192
1267
|
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
1193
1268
|
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
1269
|
+
# [6]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
1194
1270
|
#
|
1195
1271
|
# @option params [required, String] :key_id
|
1196
1272
|
# Identifies the KMS key for the grant. The grant gives principals
|
@@ -1376,7 +1452,7 @@ module Aws::KMS
|
|
1376
1452
|
# key_id: "KeyIdType", # required
|
1377
1453
|
# grantee_principal: "PrincipalIdType", # required
|
1378
1454
|
# retiring_principal: "PrincipalIdType",
|
1379
|
-
# operations: ["Decrypt"], # required, accepts Decrypt, Encrypt, GenerateDataKey, GenerateDataKeyWithoutPlaintext, ReEncryptFrom, ReEncryptTo, Sign, Verify, GetPublicKey, CreateGrant, RetireGrant, DescribeKey, GenerateDataKeyPair, GenerateDataKeyPairWithoutPlaintext, GenerateMac, VerifyMac
|
1455
|
+
# operations: ["Decrypt"], # required, accepts Decrypt, Encrypt, GenerateDataKey, GenerateDataKeyWithoutPlaintext, ReEncryptFrom, ReEncryptTo, Sign, Verify, GetPublicKey, CreateGrant, RetireGrant, DescribeKey, GenerateDataKeyPair, GenerateDataKeyPairWithoutPlaintext, GenerateMac, VerifyMac, DeriveSharedSecret
|
1380
1456
|
# constraints: {
|
1381
1457
|
# encryption_context_subset: {
|
1382
1458
|
# "EncryptionContextKey" => "EncryptionContextValue",
|
@@ -1463,12 +1539,17 @@ module Aws::KMS
|
|
1463
1539
|
# key pair, or an SM2 key pair (China Regions only). The private key
|
1464
1540
|
# in an asymmetric KMS key never leaves KMS unencrypted. However, you
|
1465
1541
|
# can use the GetPublicKey operation to download the public key so it
|
1466
|
-
# can be used outside of KMS. KMS
|
1467
|
-
#
|
1468
|
-
#
|
1469
|
-
#
|
1470
|
-
#
|
1471
|
-
#
|
1542
|
+
# can be used outside of KMS. Each KMS key can have only one key
|
1543
|
+
# usage. KMS keys with RSA key pairs can be used to encrypt and
|
1544
|
+
# decrypt data or sign and verify messages (but not both). KMS keys
|
1545
|
+
# with NIST-recommended ECC key pairs can be used to sign and verify
|
1546
|
+
# messages or derive shared secrets (but not both). KMS keys with
|
1547
|
+
# `ECC_SECG_P256K1` can be used only to sign and verify messages. KMS
|
1548
|
+
# keys with SM2 key pairs (China Regions only) can be used to either
|
1549
|
+
# encrypt and decrypt data, sign and verify messages, or derive shared
|
1550
|
+
# secrets (you must choose one key usage type). For information about
|
1551
|
+
# asymmetric KMS keys, see [Asymmetric KMS keys][3] in the *Key
|
1552
|
+
# Management Service Developer Guide*.
|
1472
1553
|
#
|
1473
1554
|
#
|
1474
1555
|
#
|
@@ -1609,6 +1690,9 @@ module Aws::KMS
|
|
1609
1690
|
#
|
1610
1691
|
# * ScheduleKeyDeletion
|
1611
1692
|
#
|
1693
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
1694
|
+
# model. For more information, see [KMS eventual consistency][12].
|
1695
|
+
#
|
1612
1696
|
#
|
1613
1697
|
#
|
1614
1698
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#kms-keys
|
@@ -1622,6 +1706,7 @@ module Aws::KMS
|
|
1622
1706
|
# [9]: https://docs.aws.amazon.com/kms/latest/developerguide/keystore-external.html
|
1623
1707
|
# [10]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
1624
1708
|
# [11]: https://docs.aws.amazon.com/kms/latest/developerguide/iam-policies.html#iam-policy-example-create-key
|
1709
|
+
# [12]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
1625
1710
|
#
|
1626
1711
|
# @option params [String] :policy
|
1627
1712
|
# The key policy to attach to the KMS key.
|
@@ -1686,14 +1771,17 @@ module Aws::KMS
|
|
1686
1771
|
#
|
1687
1772
|
# * For HMAC KMS keys (symmetric), specify `GENERATE_VERIFY_MAC`.
|
1688
1773
|
#
|
1689
|
-
# * For asymmetric KMS keys with RSA key
|
1774
|
+
# * For asymmetric KMS keys with RSA key pairs, specify
|
1690
1775
|
# `ENCRYPT_DECRYPT` or `SIGN_VERIFY`.
|
1691
1776
|
#
|
1692
|
-
# * For asymmetric KMS keys with
|
1777
|
+
# * For asymmetric KMS keys with NIST-recommended elliptic curve key
|
1778
|
+
# pairs, specify `SIGN_VERIFY` or `KEY_AGREEMENT`.
|
1779
|
+
#
|
1780
|
+
# * For asymmetric KMS keys with `ECC_SECG_P256K1` key pairs specify
|
1693
1781
|
# `SIGN_VERIFY`.
|
1694
1782
|
#
|
1695
|
-
# * For asymmetric KMS keys with SM2 key
|
1696
|
-
# specify `ENCRYPT_DECRYPT` or `
|
1783
|
+
# * For asymmetric KMS keys with SM2 key pairs (China Regions only),
|
1784
|
+
# specify `ENCRYPT_DECRYPT`, `SIGN_VERIFY`, or `KEY_AGREEMENT`.
|
1697
1785
|
#
|
1698
1786
|
#
|
1699
1787
|
#
|
@@ -1735,7 +1823,6 @@ module Aws::KMS
|
|
1735
1823
|
# * `SYMMETRIC_DEFAULT`
|
1736
1824
|
#
|
1737
1825
|
# ^
|
1738
|
-
#
|
1739
1826
|
# * HMAC keys (symmetric)
|
1740
1827
|
#
|
1741
1828
|
# * `HMAC_224`
|
@@ -1745,32 +1832,31 @@ module Aws::KMS
|
|
1745
1832
|
# * `HMAC_384`
|
1746
1833
|
#
|
1747
1834
|
# * `HMAC_512`
|
1748
|
-
#
|
1749
|
-
#
|
1835
|
+
# * Asymmetric RSA key pairs (encryption and decryption -or- signing and
|
1836
|
+
# verification)
|
1750
1837
|
#
|
1751
1838
|
# * `RSA_2048`
|
1752
1839
|
#
|
1753
1840
|
# * `RSA_3072`
|
1754
1841
|
#
|
1755
1842
|
# * `RSA_4096`
|
1756
|
-
#
|
1757
|
-
#
|
1843
|
+
# * Asymmetric NIST-recommended elliptic curve key pairs (signing and
|
1844
|
+
# verification -or- deriving shared secrets)
|
1758
1845
|
#
|
1759
1846
|
# * `ECC_NIST_P256` (secp256r1)
|
1760
1847
|
#
|
1761
1848
|
# * `ECC_NIST_P384` (secp384r1)
|
1762
1849
|
#
|
1763
1850
|
# * `ECC_NIST_P521` (secp521r1)
|
1764
|
-
#
|
1765
|
-
# * Other asymmetric elliptic curve key pairs
|
1851
|
+
# * Other asymmetric elliptic curve key pairs (signing and verification)
|
1766
1852
|
#
|
1767
1853
|
# * `ECC_SECG_P256K1` (secp256k1), commonly used for cryptocurrencies.
|
1768
1854
|
#
|
1769
1855
|
# ^
|
1856
|
+
# * SM2 key pairs (encryption and decryption -or- signing and
|
1857
|
+
# verification -or- deriving shared secrets)
|
1770
1858
|
#
|
1771
|
-
#
|
1772
|
-
#
|
1773
|
-
# * `SM2`
|
1859
|
+
# * `SM2` (China Regions only)
|
1774
1860
|
#
|
1775
1861
|
# ^
|
1776
1862
|
#
|
@@ -1843,12 +1929,13 @@ module Aws::KMS
|
|
1843
1929
|
# Management Service Developer Guide*.
|
1844
1930
|
#
|
1845
1931
|
# Use this parameter only when you intend to prevent the principal that
|
1846
|
-
# is making the request from making a subsequent PutKeyPolicy
|
1847
|
-
# the KMS key.
|
1932
|
+
# is making the request from making a subsequent [PutKeyPolicy][2]
|
1933
|
+
# request on the KMS key.
|
1848
1934
|
#
|
1849
1935
|
#
|
1850
1936
|
#
|
1851
1937
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-default.html#prevent-unmanageable-key
|
1938
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/APIReference/API_PutKeyPolicy.html
|
1852
1939
|
#
|
1853
1940
|
# @option params [Array<Types::Tag>] :tags
|
1854
1941
|
# Assigns one or more tags to the KMS key. Use this parameter to tag the
|
@@ -2233,7 +2320,7 @@ module Aws::KMS
|
|
2233
2320
|
# resp = client.create_key({
|
2234
2321
|
# policy: "PolicyType",
|
2235
2322
|
# description: "DescriptionType",
|
2236
|
-
# key_usage: "SIGN_VERIFY", # accepts SIGN_VERIFY, ENCRYPT_DECRYPT, GENERATE_VERIFY_MAC
|
2323
|
+
# key_usage: "SIGN_VERIFY", # accepts SIGN_VERIFY, ENCRYPT_DECRYPT, GENERATE_VERIFY_MAC, KEY_AGREEMENT
|
2237
2324
|
# 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
|
2238
2325
|
# 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
|
2239
2326
|
# origin: "AWS_KMS", # accepts AWS_KMS, EXTERNAL, AWS_CLOUDHSM, EXTERNAL_KEY_STORE
|
@@ -2257,7 +2344,7 @@ module Aws::KMS
|
|
2257
2344
|
# resp.key_metadata.creation_date #=> Time
|
2258
2345
|
# resp.key_metadata.enabled #=> Boolean
|
2259
2346
|
# resp.key_metadata.description #=> String
|
2260
|
-
# resp.key_metadata.key_usage #=> String, one of "SIGN_VERIFY", "ENCRYPT_DECRYPT", "GENERATE_VERIFY_MAC"
|
2347
|
+
# resp.key_metadata.key_usage #=> String, one of "SIGN_VERIFY", "ENCRYPT_DECRYPT", "GENERATE_VERIFY_MAC", "KEY_AGREEMENT"
|
2261
2348
|
# resp.key_metadata.key_state #=> String, one of "Creating", "Enabled", "Disabled", "PendingDeletion", "PendingImport", "PendingReplicaDeletion", "Unavailable", "Updating"
|
2262
2349
|
# resp.key_metadata.deletion_date #=> Time
|
2263
2350
|
# resp.key_metadata.valid_to #=> Time
|
@@ -2272,6 +2359,8 @@ module Aws::KMS
|
|
2272
2359
|
# resp.key_metadata.encryption_algorithms[0] #=> String, one of "SYMMETRIC_DEFAULT", "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256", "SM2PKE"
|
2273
2360
|
# resp.key_metadata.signing_algorithms #=> Array
|
2274
2361
|
# 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"
|
2362
|
+
# resp.key_metadata.key_agreement_algorithms #=> Array
|
2363
|
+
# resp.key_metadata.key_agreement_algorithms[0] #=> String, one of "ECDH"
|
2275
2364
|
# resp.key_metadata.multi_region #=> Boolean
|
2276
2365
|
# resp.key_metadata.multi_region_configuration.multi_region_key_type #=> String, one of "PRIMARY", "REPLICA"
|
2277
2366
|
# resp.key_metadata.multi_region_configuration.primary_key.arn #=> String
|
@@ -2350,10 +2439,10 @@ module Aws::KMS
|
|
2350
2439
|
# parameter to provide the attestation document for the enclave. Instead
|
2351
2440
|
# of the plaintext data, the response includes the plaintext data
|
2352
2441
|
# encrypted with the public key from the attestation document
|
2353
|
-
# (`CiphertextForRecipient`).For information about the interaction
|
2442
|
+
# (`CiphertextForRecipient`). For information about the interaction
|
2354
2443
|
# between KMS and Amazon Web Services Nitro Enclaves, see [How Amazon
|
2355
2444
|
# Web Services Nitro Enclaves uses KMS][7] in the *Key Management
|
2356
|
-
# Service Developer Guide
|
2445
|
+
# Service Developer Guide*.
|
2357
2446
|
#
|
2358
2447
|
# The KMS key that you use for this operation must be in a compatible
|
2359
2448
|
# key state. For details, see [Key states of KMS keys][8] in the *Key
|
@@ -2375,6 +2464,9 @@ module Aws::KMS
|
|
2375
2464
|
#
|
2376
2465
|
# * ReEncrypt
|
2377
2466
|
#
|
2467
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
2468
|
+
# model. For more information, see [KMS eventual consistency][10].
|
2469
|
+
#
|
2378
2470
|
#
|
2379
2471
|
#
|
2380
2472
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
|
@@ -2386,6 +2478,7 @@ module Aws::KMS
|
|
2386
2478
|
# [7]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
|
2387
2479
|
# [8]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
2388
2480
|
# [9]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
2481
|
+
# [10]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
2389
2482
|
#
|
2390
2483
|
# @option params [required, String, StringIO, File] :ciphertext_blob
|
2391
2484
|
# Ciphertext to be decrypted. The blob includes metadata.
|
@@ -2492,7 +2585,7 @@ module Aws::KMS
|
|
2492
2585
|
#
|
2493
2586
|
#
|
2494
2587
|
#
|
2495
|
-
# [1]: https://docs.aws.amazon.com/
|
2588
|
+
# [1]: https://docs.aws.amazon.com/enclaves/latest/user/nitro-enclave-concepts.html#term-attestdoc
|
2496
2589
|
# [2]: https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk
|
2497
2590
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
|
2498
2591
|
#
|
@@ -2643,11 +2736,15 @@ module Aws::KMS
|
|
2643
2736
|
#
|
2644
2737
|
# * UpdateAlias
|
2645
2738
|
#
|
2739
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
2740
|
+
# model. For more information, see [KMS eventual consistency][4].
|
2741
|
+
#
|
2646
2742
|
#
|
2647
2743
|
#
|
2648
2744
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/abac.html
|
2649
2745
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
2650
2746
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-alias.html#alias-access
|
2747
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
2651
2748
|
#
|
2652
2749
|
# @option params [required, String] :alias_name
|
2653
2750
|
# The alias to be deleted. The alias name must begin with `alias/`
|
@@ -2734,6 +2831,9 @@ module Aws::KMS
|
|
2734
2831
|
#
|
2735
2832
|
# * UpdateCustomKeyStore
|
2736
2833
|
#
|
2834
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
2835
|
+
# model. For more information, see [KMS eventual consistency][6].
|
2836
|
+
#
|
2737
2837
|
#
|
2738
2838
|
#
|
2739
2839
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
|
@@ -2741,6 +2841,7 @@ module Aws::KMS
|
|
2741
2841
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations
|
2742
2842
|
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/fix-keystore.html#fix-keystore-orphaned-key
|
2743
2843
|
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
2844
|
+
# [6]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
2744
2845
|
#
|
2745
2846
|
# @option params [required, String] :custom_key_store_id
|
2746
2847
|
# Enter the ID of the custom key store you want to delete. To find the
|
@@ -2804,11 +2905,15 @@ module Aws::KMS
|
|
2804
2905
|
#
|
2805
2906
|
# * ImportKeyMaterial
|
2806
2907
|
#
|
2908
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
2909
|
+
# model. For more information, see [KMS eventual consistency][4].
|
2910
|
+
#
|
2807
2911
|
#
|
2808
2912
|
#
|
2809
2913
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html
|
2810
2914
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
2811
2915
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
2916
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
2812
2917
|
#
|
2813
2918
|
# @option params [required, String] :key_id
|
2814
2919
|
# Identifies the KMS key from which you are deleting imported key
|
@@ -2852,6 +2957,270 @@ module Aws::KMS
|
|
2852
2957
|
req.send_request(options)
|
2853
2958
|
end
|
2854
2959
|
|
2960
|
+
# Derives a shared secret using a key agreement algorithm.
|
2961
|
+
#
|
2962
|
+
# <note markdown="1"> You must use an asymmetric NIST-recommended elliptic curve (ECC) or
|
2963
|
+
# SM2 (China Regions only) KMS key pair with a `KeyUsage` value of
|
2964
|
+
# `KEY_AGREEMENT` to call DeriveSharedSecret.
|
2965
|
+
#
|
2966
|
+
# </note>
|
2967
|
+
#
|
2968
|
+
# DeriveSharedSecret uses the [Elliptic Curve Cryptography Cofactor
|
2969
|
+
# Diffie-Hellman Primitive][1] (ECDH) to establish a key agreement
|
2970
|
+
# between two peers by deriving a shared secret from their elliptic
|
2971
|
+
# curve public-private key pairs. You can use the raw shared secret that
|
2972
|
+
# DeriveSharedSecret returns to derive a symmetric key that can encrypt
|
2973
|
+
# and decrypt data that is sent between the two peers, or that can
|
2974
|
+
# generate and verify HMACs. KMS recommends that you follow [NIST
|
2975
|
+
# recommendations for key derivation][2] when using the raw shared
|
2976
|
+
# secret to derive a symmetric key.
|
2977
|
+
#
|
2978
|
+
# The following workflow demonstrates how to establish key agreement
|
2979
|
+
# over an insecure communication channel using DeriveSharedSecret.
|
2980
|
+
#
|
2981
|
+
# 1. **Alice** calls CreateKey to create an asymmetric KMS key pair
|
2982
|
+
# with a `KeyUsage` value of `KEY_AGREEMENT`.
|
2983
|
+
#
|
2984
|
+
# The asymmetric KMS key must use a NIST-recommended elliptic curve
|
2985
|
+
# (ECC) or SM2 (China Regions only) key spec.
|
2986
|
+
#
|
2987
|
+
# 2. **Bob** creates an elliptic curve key pair.
|
2988
|
+
#
|
2989
|
+
# Bob can call CreateKey to create an asymmetric KMS key pair or
|
2990
|
+
# generate a key pair outside of KMS. Bob's key pair must use the
|
2991
|
+
# same NIST-recommended elliptic curve (ECC) or SM2 (China Regions
|
2992
|
+
# ony) curve as Alice.
|
2993
|
+
#
|
2994
|
+
# 3. Alice and Bob **exchange their public keys** through an insecure
|
2995
|
+
# communication channel (like the internet).
|
2996
|
+
#
|
2997
|
+
# Use GetPublicKey to download the public key of your asymmetric KMS
|
2998
|
+
# key pair.
|
2999
|
+
#
|
3000
|
+
# <note markdown="1"> KMS strongly recommends verifying that the public key you receive
|
3001
|
+
# came from the expected party before using it to derive a shared
|
3002
|
+
# secret.
|
3003
|
+
#
|
3004
|
+
# </note>
|
3005
|
+
#
|
3006
|
+
# 4. **Alice** calls DeriveSharedSecret.
|
3007
|
+
#
|
3008
|
+
# KMS uses the private key from the KMS key pair generated in **Step
|
3009
|
+
# 1**, Bob's public key, and the Elliptic Curve Cryptography
|
3010
|
+
# Cofactor Diffie-Hellman Primitive to derive the shared secret. The
|
3011
|
+
# private key in your KMS key pair never leaves KMS unencrypted.
|
3012
|
+
# DeriveSharedSecret returns the raw shared secret.
|
3013
|
+
#
|
3014
|
+
# 5. **Bob** uses the Elliptic Curve Cryptography Cofactor
|
3015
|
+
# Diffie-Hellman Primitive to calculate the same raw secret using
|
3016
|
+
# his private key and Alice's public key.
|
3017
|
+
#
|
3018
|
+
# To derive a shared secret you must provide a key agreement algorithm,
|
3019
|
+
# the private key of the caller's asymmetric NIST-recommended elliptic
|
3020
|
+
# curve or SM2 (China Regions only) KMS key pair, and the public key
|
3021
|
+
# from your peer's NIST-recommended elliptic curve or SM2 (China
|
3022
|
+
# Regions only) key pair. The public key can be from another asymmetric
|
3023
|
+
# KMS key pair or from a key pair generated outside of KMS, but both key
|
3024
|
+
# pairs must be on the same elliptic curve.
|
3025
|
+
#
|
3026
|
+
# The KMS key that you use for this operation must be in a compatible
|
3027
|
+
# key state. For details, see [Key states of KMS keys][3] in the *Key
|
3028
|
+
# Management Service Developer Guide*.
|
3029
|
+
#
|
3030
|
+
# **Cross-account use**: Yes. To perform this operation with a KMS key
|
3031
|
+
# in a different Amazon Web Services account, specify the key ARN or
|
3032
|
+
# alias ARN in the value of the `KeyId` parameter.
|
3033
|
+
#
|
3034
|
+
# **Required permissions**: [kms:DeriveSharedSecret][4] (key policy)
|
3035
|
+
#
|
3036
|
+
# **Related operations:**
|
3037
|
+
#
|
3038
|
+
# * CreateKey
|
3039
|
+
#
|
3040
|
+
# * GetPublicKey
|
3041
|
+
#
|
3042
|
+
# * DescribeKey
|
3043
|
+
#
|
3044
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
3045
|
+
# model. For more information, see [KMS eventual consistency][5].
|
3046
|
+
#
|
3047
|
+
#
|
3048
|
+
#
|
3049
|
+
# [1]: https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-56Ar3.pdf#page=60
|
3050
|
+
# [2]: https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-56Cr2.pdf
|
3051
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
3052
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
3053
|
+
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
3054
|
+
#
|
3055
|
+
# @option params [required, String] :key_id
|
3056
|
+
# Identifies an asymmetric NIST-recommended ECC or SM2 (China Regions
|
3057
|
+
# only) KMS key. KMS uses the private key in the specified key pair to
|
3058
|
+
# derive the shared secret. The key usage of the KMS key must be
|
3059
|
+
# `KEY_AGREEMENT`. To find the `KeyUsage` of a KMS key, use the
|
3060
|
+
# DescribeKey operation.
|
3061
|
+
#
|
3062
|
+
# To specify a KMS key, use its key ID, key ARN, alias name, or alias
|
3063
|
+
# ARN. When using an alias name, prefix it with `"alias/"`. To specify a
|
3064
|
+
# KMS key in a different Amazon Web Services account, you must use the
|
3065
|
+
# key ARN or alias ARN.
|
3066
|
+
#
|
3067
|
+
# For example:
|
3068
|
+
#
|
3069
|
+
# * Key ID: `1234abcd-12ab-34cd-56ef-1234567890ab`
|
3070
|
+
#
|
3071
|
+
# * Key ARN:
|
3072
|
+
# `arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`
|
3073
|
+
#
|
3074
|
+
# * Alias name: `alias/ExampleAlias`
|
3075
|
+
#
|
3076
|
+
# * Alias ARN: `arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias`
|
3077
|
+
#
|
3078
|
+
# To get the key ID and key ARN for a KMS key, use ListKeys or
|
3079
|
+
# DescribeKey. To get the alias name and alias ARN, use ListAliases.
|
3080
|
+
#
|
3081
|
+
# @option params [required, String] :key_agreement_algorithm
|
3082
|
+
# Specifies the key agreement algorithm used to derive the shared
|
3083
|
+
# secret. The only valid value is `ECDH`.
|
3084
|
+
#
|
3085
|
+
# @option params [required, String, StringIO, File] :public_key
|
3086
|
+
# Specifies the public key in your peer's NIST-recommended elliptic
|
3087
|
+
# curve (ECC) or SM2 (China Regions only) key pair.
|
3088
|
+
#
|
3089
|
+
# The public key must be a DER-encoded X.509 public key, also known as
|
3090
|
+
# `SubjectPublicKeyInfo` (SPKI), as defined in [RFC 5280][1].
|
3091
|
+
#
|
3092
|
+
# GetPublicKey returns the public key of an asymmetric KMS key pair in
|
3093
|
+
# the required DER-encoded format.
|
3094
|
+
#
|
3095
|
+
# <note markdown="1"> If you use [Amazon Web Services CLI version 1][2], you must provide
|
3096
|
+
# the DER-encoded X.509 public key in a file. Otherwise, the Amazon Web
|
3097
|
+
# Services CLI Base64-encodes the public key a second time, resulting in
|
3098
|
+
# a `ValidationException`.
|
3099
|
+
#
|
3100
|
+
# </note>
|
3101
|
+
#
|
3102
|
+
# You can specify the public key as binary data in a file using fileb
|
3103
|
+
# (`fileb://<path-to-file>`) or in-line using a Base64 encoded string.
|
3104
|
+
#
|
3105
|
+
#
|
3106
|
+
#
|
3107
|
+
# [1]: https://tools.ietf.org/html/rfc5280
|
3108
|
+
# [2]: https://docs.aws.amazon.com/cli/v1/userguide/cli-chap-welcome.html
|
3109
|
+
#
|
3110
|
+
# @option params [Array<String>] :grant_tokens
|
3111
|
+
# A list of grant tokens.
|
3112
|
+
#
|
3113
|
+
# Use a grant token when your permission to call this operation comes
|
3114
|
+
# from a new grant that has not yet achieved *eventual consistency*. For
|
3115
|
+
# more information, see [Grant token][1] and [Using a grant token][2] in
|
3116
|
+
# the *Key Management Service Developer Guide*.
|
3117
|
+
#
|
3118
|
+
#
|
3119
|
+
#
|
3120
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#grant_token
|
3121
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/grant-manage.html#using-grant-token
|
3122
|
+
#
|
3123
|
+
# @option params [Boolean] :dry_run
|
3124
|
+
# Checks if your request will succeed. `DryRun` is an optional
|
3125
|
+
# parameter.
|
3126
|
+
#
|
3127
|
+
# To learn more about how to use this parameter, see [Testing your KMS
|
3128
|
+
# API calls][1] in the *Key Management Service Developer Guide*.
|
3129
|
+
#
|
3130
|
+
#
|
3131
|
+
#
|
3132
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-dryrun.html
|
3133
|
+
#
|
3134
|
+
# @option params [Types::RecipientInfo] :recipient
|
3135
|
+
# A signed [attestation document][1] from an Amazon Web Services Nitro
|
3136
|
+
# enclave and the encryption algorithm to use with the enclave's public
|
3137
|
+
# key. The only valid encryption algorithm is `RSAES_OAEP_SHA_256`.
|
3138
|
+
#
|
3139
|
+
# This parameter only supports attestation documents for Amazon Web
|
3140
|
+
# Services Nitro Enclaves. To call DeriveSharedSecret for an Amazon Web
|
3141
|
+
# Services Nitro Enclaves, use the [Amazon Web Services Nitro Enclaves
|
3142
|
+
# SDK][2] to generate the attestation document and then use the
|
3143
|
+
# Recipient parameter from any Amazon Web Services SDK to provide the
|
3144
|
+
# attestation document for the enclave.
|
3145
|
+
#
|
3146
|
+
# When you use this parameter, instead of returning a plaintext copy of
|
3147
|
+
# the shared secret, KMS encrypts the plaintext shared secret under the
|
3148
|
+
# public key in the attestation document, and returns the resulting
|
3149
|
+
# ciphertext in the `CiphertextForRecipient` field in the response. This
|
3150
|
+
# ciphertext can be decrypted only with the private key in the enclave.
|
3151
|
+
# The `CiphertextBlob` field in the response contains the encrypted
|
3152
|
+
# shared secret derived from the KMS key specified by the `KeyId`
|
3153
|
+
# parameter and public key specified by the `PublicKey` parameter. The
|
3154
|
+
# `SharedSecret` field in the response is null or empty.
|
3155
|
+
#
|
3156
|
+
# For information about the interaction between KMS and Amazon Web
|
3157
|
+
# Services Nitro Enclaves, see [How Amazon Web Services Nitro Enclaves
|
3158
|
+
# uses KMS][3] in the *Key Management Service Developer Guide*.
|
3159
|
+
#
|
3160
|
+
#
|
3161
|
+
#
|
3162
|
+
# [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave-how.html#term-attestdoc
|
3163
|
+
# [2]: https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk
|
3164
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
|
3165
|
+
#
|
3166
|
+
# @return [Types::DeriveSharedSecretResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
3167
|
+
#
|
3168
|
+
# * {Types::DeriveSharedSecretResponse#key_id #key_id} => String
|
3169
|
+
# * {Types::DeriveSharedSecretResponse#shared_secret #shared_secret} => String
|
3170
|
+
# * {Types::DeriveSharedSecretResponse#ciphertext_for_recipient #ciphertext_for_recipient} => String
|
3171
|
+
# * {Types::DeriveSharedSecretResponse#key_agreement_algorithm #key_agreement_algorithm} => String
|
3172
|
+
# * {Types::DeriveSharedSecretResponse#key_origin #key_origin} => String
|
3173
|
+
#
|
3174
|
+
#
|
3175
|
+
# @example Example: To derive a shared secret
|
3176
|
+
#
|
3177
|
+
# # The following example derives a shared secret using a key agreement algorithm.
|
3178
|
+
#
|
3179
|
+
# resp = client.derive_shared_secret({
|
3180
|
+
# key_agreement_algorithm: "ECDH", # The key agreement algorithm used to derive the shared secret. The only valid value is ECDH.
|
3181
|
+
# key_id: "1234abcd-12ab-34cd-56ef-1234567890ab", # The key identifier for an asymmetric KMS key pair. The private key in the specified key pair is used to derive the shared secret.
|
3182
|
+
# public_key: "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvH3Yj0wbkLEpUl95Cv1cJVjsVNSjwGq3tCLnzXfhVwVvmzGN8pYj3U8nKwgouaHbBWNJYjP5VutbbkKS4Kv4GojwZBJyHN17kmxo8yTjRmjR15SKIQ8cqRA2uaERMLnpztIXdZp232PQPbWGxDyXYJ0aJ5EFSag", # The public key in your peer's asymmetric key pair.
|
3183
|
+
# })
|
3184
|
+
#
|
3185
|
+
# resp.to_h outputs the following:
|
3186
|
+
# {
|
3187
|
+
# key_agreement_algorithm: "ECDH", # The key agreement algorithm used to derive the shared secret.
|
3188
|
+
# key_id: "1234abcd-12ab-34cd-56ef-1234567890ab", # The asymmetric KMS key pair used to derive the shared secret.
|
3189
|
+
# key_origin: "AWS_KMS", # The source of the key material for the specified KMS key.
|
3190
|
+
# shared_secret: "MEYCIQCKZLWyTk5runarx6XiAkU9gv3lbwPO/pHa+DXFehzdDwIhANwpsIV2g/9SPWLLsF6p/hiSskuIXMTRwqrMdVKWTMHG", # The raw secret derived from the specified key agreement algorithm, private key in the asymmetric KMS key, and your peer's public key.
|
3191
|
+
# }
|
3192
|
+
#
|
3193
|
+
# @example Request syntax with placeholder values
|
3194
|
+
#
|
3195
|
+
# resp = client.derive_shared_secret({
|
3196
|
+
# key_id: "KeyIdType", # required
|
3197
|
+
# key_agreement_algorithm: "ECDH", # required, accepts ECDH
|
3198
|
+
# public_key: "data", # required
|
3199
|
+
# grant_tokens: ["GrantTokenType"],
|
3200
|
+
# dry_run: false,
|
3201
|
+
# recipient: {
|
3202
|
+
# key_encryption_algorithm: "RSAES_OAEP_SHA_256", # accepts RSAES_OAEP_SHA_256
|
3203
|
+
# attestation_document: "data",
|
3204
|
+
# },
|
3205
|
+
# })
|
3206
|
+
#
|
3207
|
+
# @example Response structure
|
3208
|
+
#
|
3209
|
+
# resp.key_id #=> String
|
3210
|
+
# resp.shared_secret #=> String
|
3211
|
+
# resp.ciphertext_for_recipient #=> String
|
3212
|
+
# resp.key_agreement_algorithm #=> String, one of "ECDH"
|
3213
|
+
# resp.key_origin #=> String, one of "AWS_KMS", "EXTERNAL", "AWS_CLOUDHSM", "EXTERNAL_KEY_STORE"
|
3214
|
+
#
|
3215
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/DeriveSharedSecret AWS API Documentation
|
3216
|
+
#
|
3217
|
+
# @overload derive_shared_secret(params = {})
|
3218
|
+
# @param [Hash] params ({})
|
3219
|
+
def derive_shared_secret(params = {}, options = {})
|
3220
|
+
req = build_request(:derive_shared_secret, params)
|
3221
|
+
req.send_request(options)
|
3222
|
+
end
|
3223
|
+
|
2855
3224
|
# Gets information about [custom key stores][1] in the account and
|
2856
3225
|
# Region.
|
2857
3226
|
#
|
@@ -2905,12 +3274,16 @@ module Aws::KMS
|
|
2905
3274
|
#
|
2906
3275
|
# * UpdateCustomKeyStore
|
2907
3276
|
#
|
3277
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
3278
|
+
# model. For more information, see [KMS eventual consistency][5].
|
3279
|
+
#
|
2908
3280
|
#
|
2909
3281
|
#
|
2910
3282
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
|
2911
3283
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/fix-keystore.html
|
2912
3284
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/xks-troubleshooting.html
|
2913
3285
|
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
3286
|
+
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
2914
3287
|
#
|
2915
3288
|
# @option params [String] :custom_key_store_id
|
2916
3289
|
# Gets only information about the specified custom key store. Enter the
|
@@ -3094,15 +3467,11 @@ module Aws::KMS
|
|
3094
3467
|
# also displays the key usage (encryption, signing, or generating and
|
3095
3468
|
# verifying MACs) and the algorithms that the KMS key supports.
|
3096
3469
|
#
|
3097
|
-
# For [multi-Region
|
3098
|
-
# keys]
|
3099
|
-
#
|
3100
|
-
# For KMS keys in [
|
3101
|
-
#
|
3102
|
-
# information about the key store, such as the key store ID and the
|
3103
|
-
# CloudHSM cluster ID. For KMS keys in [external key
|
3104
|
-
# stores](kms/latest/developerguide/keystore-external.html), it includes
|
3105
|
-
# the custom key store ID and the ID of the external key.
|
3470
|
+
# For [multi-Region keys][3], `DescribeKey` displays the primary key and
|
3471
|
+
# all related replica keys. For KMS keys in [CloudHSM key stores][4], it
|
3472
|
+
# includes information about the key store, such as the key store ID and
|
3473
|
+
# the CloudHSM cluster ID. For KMS keys in [external key stores][5], it
|
3474
|
+
# includes the custom key store ID and the ID of the external key.
|
3106
3475
|
#
|
3107
3476
|
# `DescribeKey` does not return the following information:
|
3108
3477
|
#
|
@@ -3112,7 +3481,7 @@ module Aws::KMS
|
|
3112
3481
|
# * Whether automatic key rotation is enabled on the KMS key. To get
|
3113
3482
|
# this information, use GetKeyRotationStatus. Also, some key states
|
3114
3483
|
# prevent a KMS key from being automatically rotated. For details, see
|
3115
|
-
# [How Automatic Key Rotation Works][
|
3484
|
+
# [How Automatic Key Rotation Works][6] in the *Key Management Service
|
3116
3485
|
# Developer Guide*.
|
3117
3486
|
#
|
3118
3487
|
# * Tags on the KMS key. To get this information, use ListResourceTags.
|
@@ -3129,7 +3498,7 @@ module Aws::KMS
|
|
3129
3498
|
# in a different Amazon Web Services account, specify the key ARN or
|
3130
3499
|
# alias ARN in the value of the `KeyId` parameter.
|
3131
3500
|
#
|
3132
|
-
# **Required permissions**: [kms:DescribeKey][
|
3501
|
+
# **Required permissions**: [kms:DescribeKey][7] (key policy)
|
3133
3502
|
#
|
3134
3503
|
# **Related operations:**
|
3135
3504
|
#
|
@@ -3147,12 +3516,19 @@ module Aws::KMS
|
|
3147
3516
|
#
|
3148
3517
|
# * ListRetirableGrants
|
3149
3518
|
#
|
3519
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
3520
|
+
# model. For more information, see [KMS eventual consistency][8].
|
3521
|
+
#
|
3150
3522
|
#
|
3151
3523
|
#
|
3152
3524
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk
|
3153
3525
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk
|
3154
|
-
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/
|
3155
|
-
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/
|
3526
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html
|
3527
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/keystore-cloudhsm.html
|
3528
|
+
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/keystore-external.html
|
3529
|
+
# [6]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html#rotate-keys-how-it-works
|
3530
|
+
# [7]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
3531
|
+
# [8]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
3156
3532
|
#
|
3157
3533
|
# @option params [required, String] :key_id
|
3158
3534
|
# Describes the specified KMS key.
|
@@ -3429,7 +3805,7 @@ module Aws::KMS
|
|
3429
3805
|
# resp.key_metadata.creation_date #=> Time
|
3430
3806
|
# resp.key_metadata.enabled #=> Boolean
|
3431
3807
|
# resp.key_metadata.description #=> String
|
3432
|
-
# resp.key_metadata.key_usage #=> String, one of "SIGN_VERIFY", "ENCRYPT_DECRYPT", "GENERATE_VERIFY_MAC"
|
3808
|
+
# resp.key_metadata.key_usage #=> String, one of "SIGN_VERIFY", "ENCRYPT_DECRYPT", "GENERATE_VERIFY_MAC", "KEY_AGREEMENT"
|
3433
3809
|
# resp.key_metadata.key_state #=> String, one of "Creating", "Enabled", "Disabled", "PendingDeletion", "PendingImport", "PendingReplicaDeletion", "Unavailable", "Updating"
|
3434
3810
|
# resp.key_metadata.deletion_date #=> Time
|
3435
3811
|
# resp.key_metadata.valid_to #=> Time
|
@@ -3444,6 +3820,8 @@ module Aws::KMS
|
|
3444
3820
|
# resp.key_metadata.encryption_algorithms[0] #=> String, one of "SYMMETRIC_DEFAULT", "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256", "SM2PKE"
|
3445
3821
|
# resp.key_metadata.signing_algorithms #=> Array
|
3446
3822
|
# 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"
|
3823
|
+
# resp.key_metadata.key_agreement_algorithms #=> Array
|
3824
|
+
# resp.key_metadata.key_agreement_algorithms[0] #=> String, one of "ECDH"
|
3447
3825
|
# resp.key_metadata.multi_region #=> Boolean
|
3448
3826
|
# resp.key_metadata.multi_region_configuration.multi_region_key_type #=> String, one of "PRIMARY", "REPLICA"
|
3449
3827
|
# resp.key_metadata.multi_region_configuration.primary_key.arn #=> String
|
@@ -3483,11 +3861,15 @@ module Aws::KMS
|
|
3483
3861
|
#
|
3484
3862
|
# **Related operations**: EnableKey
|
3485
3863
|
#
|
3864
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
3865
|
+
# model. For more information, see [KMS eventual consistency][4].
|
3866
|
+
#
|
3486
3867
|
#
|
3487
3868
|
#
|
3488
3869
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations
|
3489
3870
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
3490
3871
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
3872
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
3491
3873
|
#
|
3492
3874
|
# @option params [required, String] :key_id
|
3493
3875
|
# Identifies the KMS key to disable.
|
@@ -3567,6 +3949,13 @@ module Aws::KMS
|
|
3567
3949
|
#
|
3568
3950
|
# * GetKeyRotationStatus
|
3569
3951
|
#
|
3952
|
+
# * ListKeyRotations
|
3953
|
+
#
|
3954
|
+
# * RotateKeyOnDemand
|
3955
|
+
#
|
3956
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
3957
|
+
# model. For more information, see [KMS eventual consistency][12].
|
3958
|
+
#
|
3570
3959
|
#
|
3571
3960
|
#
|
3572
3961
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html
|
@@ -3580,6 +3969,7 @@ module Aws::KMS
|
|
3580
3969
|
# [9]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-owned-cmk
|
3581
3970
|
# [10]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
3582
3971
|
# [11]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
3972
|
+
# [12]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
3583
3973
|
#
|
3584
3974
|
# @option params [required, String] :key_id
|
3585
3975
|
# Identifies a symmetric encryption KMS key. You cannot enable or
|
@@ -3679,11 +4069,15 @@ module Aws::KMS
|
|
3679
4069
|
#
|
3680
4070
|
# * UpdateCustomKeyStore
|
3681
4071
|
#
|
4072
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
4073
|
+
# model. For more information, see [KMS eventual consistency][4].
|
4074
|
+
#
|
3682
4075
|
#
|
3683
4076
|
#
|
3684
4077
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
|
3685
4078
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations
|
3686
4079
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
4080
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
3687
4081
|
#
|
3688
4082
|
# @option params [required, String] :custom_key_store_id
|
3689
4083
|
# Enter the ID of the custom key store you want to disconnect. To find
|
@@ -3737,11 +4131,15 @@ module Aws::KMS
|
|
3737
4131
|
#
|
3738
4132
|
# **Related operations**: DisableKey
|
3739
4133
|
#
|
4134
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
4135
|
+
# model. For more information, see [KMS eventual consistency][4].
|
4136
|
+
#
|
3740
4137
|
#
|
3741
4138
|
#
|
3742
4139
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations
|
3743
4140
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
3744
4141
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
4142
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
3745
4143
|
#
|
3746
4144
|
# @option params [required, String] :key_id
|
3747
4145
|
# Identifies the KMS key to enable.
|
@@ -3787,12 +4185,20 @@ module Aws::KMS
|
|
3787
4185
|
# Enables [automatic rotation of the key material][1] of the specified
|
3788
4186
|
# symmetric encryption KMS key.
|
3789
4187
|
#
|
3790
|
-
#
|
3791
|
-
# KMS rotates the key material of the KMS key one year
|
3792
|
-
# 365 days) from the enable date and every year
|
3793
|
-
#
|
3794
|
-
#
|
3795
|
-
#
|
4188
|
+
# By default, when you enable automatic rotation of a [customer managed
|
4189
|
+
# KMS key][2], KMS rotates the key material of the KMS key one year
|
4190
|
+
# (approximately 365 days) from the enable date and every year
|
4191
|
+
# thereafter. You can use the optional `RotationPeriodInDays` parameter
|
4192
|
+
# to specify a custom rotation period when you enable key rotation, or
|
4193
|
+
# you can use `RotationPeriodInDays` to modify the rotation period of a
|
4194
|
+
# key that you previously enabled automatic key rotation on.
|
4195
|
+
#
|
4196
|
+
# You can monitor rotation of the key material for your KMS keys in
|
4197
|
+
# CloudTrail and Amazon CloudWatch. To disable rotation of the key
|
4198
|
+
# material in a customer managed KMS key, use the DisableKeyRotation
|
4199
|
+
# operation. You can use the GetKeyRotationStatus operation to identify
|
4200
|
+
# any in progress rotations. You can use the ListKeyRotations operation
|
4201
|
+
# to view the details of completed rotations.
|
3796
4202
|
#
|
3797
4203
|
# Automatic key rotation is supported only on [symmetric encryption KMS
|
3798
4204
|
# keys][3]. You cannot enable automatic rotation of [asymmetric KMS
|
@@ -3801,10 +4207,11 @@ module Aws::KMS
|
|
3801
4207
|
# disable automatic rotation of a set of related [multi-Region keys][8],
|
3802
4208
|
# set the property on the primary key.
|
3803
4209
|
#
|
3804
|
-
# You cannot enable or disable automatic rotation [Amazon Web
|
3805
|
-
# managed KMS keys][9]. KMS always rotates the key material of
|
3806
|
-
# Web Services managed keys every year. Rotation of [Amazon Web
|
3807
|
-
# owned KMS keys][10]
|
4210
|
+
# You cannot enable or disable automatic rotation of [Amazon Web
|
4211
|
+
# Services managed KMS keys][9]. KMS always rotates the key material of
|
4212
|
+
# Amazon Web Services managed keys every year. Rotation of [Amazon Web
|
4213
|
+
# Services owned KMS keys][10] is managed by the Amazon Web Services
|
4214
|
+
# service that owns the key.
|
3808
4215
|
#
|
3809
4216
|
# <note markdown="1"> In May 2022, KMS changed the rotation schedule for Amazon Web Services
|
3810
4217
|
# managed keys from every three years (approximately 1,095 days) to
|
@@ -3833,9 +4240,22 @@ module Aws::KMS
|
|
3833
4240
|
#
|
3834
4241
|
# * GetKeyRotationStatus
|
3835
4242
|
#
|
4243
|
+
# * ListKeyRotations
|
3836
4244
|
#
|
4245
|
+
# * RotateKeyOnDemand
|
3837
4246
|
#
|
3838
|
-
#
|
4247
|
+
# <note markdown="1"> You can perform on-demand (RotateKeyOnDemand) rotation of the key
|
4248
|
+
# material in customer managed KMS keys, regardless of whether or not
|
4249
|
+
# automatic key rotation is enabled.
|
4250
|
+
#
|
4251
|
+
# </note>
|
4252
|
+
#
|
4253
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
4254
|
+
# model. For more information, see [KMS eventual consistency][13].
|
4255
|
+
#
|
4256
|
+
#
|
4257
|
+
#
|
4258
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html#rotating-keys-enable-disable
|
3839
4259
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk
|
3840
4260
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#symmetric-cmks
|
3841
4261
|
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
|
@@ -3847,6 +4267,7 @@ module Aws::KMS
|
|
3847
4267
|
# [10]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-owned-cmk
|
3848
4268
|
# [11]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
3849
4269
|
# [12]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
4270
|
+
# [13]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
3850
4271
|
#
|
3851
4272
|
# @option params [required, String] :key_id
|
3852
4273
|
# Identifies a symmetric encryption KMS key. You cannot enable automatic
|
@@ -3875,21 +4296,42 @@ module Aws::KMS
|
|
3875
4296
|
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
|
3876
4297
|
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-manage.html#multi-region-rotate
|
3877
4298
|
#
|
4299
|
+
# @option params [Integer] :rotation_period_in_days
|
4300
|
+
# Use this parameter to specify a custom period of time between each
|
4301
|
+
# rotation date. If no value is specified, the default value is 365
|
4302
|
+
# days.
|
4303
|
+
#
|
4304
|
+
# The rotation period defines the number of days after you enable
|
4305
|
+
# automatic key rotation that KMS will rotate your key material, and the
|
4306
|
+
# number of days between each automatic rotation thereafter.
|
4307
|
+
#
|
4308
|
+
# You can use the [ `kms:RotationPeriodInDays` ][1] condition key to
|
4309
|
+
# further constrain the values that principals can specify in the
|
4310
|
+
# `RotationPeriodInDays` parameter.
|
4311
|
+
#
|
4312
|
+
#
|
4313
|
+
#
|
4314
|
+
#
|
4315
|
+
#
|
4316
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/conditions-kms.html#conditions-kms-rotation-period-in-days
|
4317
|
+
#
|
3878
4318
|
# @return [Struct] Returns an empty {Seahorse::Client::Response response}.
|
3879
4319
|
#
|
3880
4320
|
#
|
3881
4321
|
# @example Example: To enable automatic rotation of key material
|
3882
4322
|
#
|
3883
|
-
# # The following example enables automatic
|
4323
|
+
# # The following example enables automatic rotation with a rotation period of 365 days for the specified KMS key.
|
3884
4324
|
#
|
3885
4325
|
# resp = client.enable_key_rotation({
|
3886
|
-
# key_id: "1234abcd-12ab-34cd-56ef-1234567890ab", # The identifier of the KMS key whose key material will be rotated
|
4326
|
+
# key_id: "1234abcd-12ab-34cd-56ef-1234567890ab", # The identifier of the KMS key whose key material will be automatically rotated. You can use the key ID or the Amazon Resource Name (ARN) of the KMS key.
|
4327
|
+
# rotation_period_in_days: 365, # The number of days between each rotation date. Specify a value between 9 and 2560. If no value is specified, the default value is 365 days.
|
3887
4328
|
# })
|
3888
4329
|
#
|
3889
4330
|
# @example Request syntax with placeholder values
|
3890
4331
|
#
|
3891
4332
|
# resp = client.enable_key_rotation({
|
3892
4333
|
# key_id: "KeyIdType", # required
|
4334
|
+
# rotation_period_in_days: 1,
|
3893
4335
|
# })
|
3894
4336
|
#
|
3895
4337
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/EnableKeyRotation AWS API Documentation
|
@@ -3944,25 +4386,21 @@ module Aws::KMS
|
|
3944
4386
|
# * `SYMMETRIC_DEFAULT`: 4096 bytes
|
3945
4387
|
#
|
3946
4388
|
# ^
|
3947
|
-
#
|
3948
4389
|
# * `RSA_2048`
|
3949
4390
|
#
|
3950
4391
|
# * `RSAES_OAEP_SHA_1`: 214 bytes
|
3951
4392
|
#
|
3952
4393
|
# * `RSAES_OAEP_SHA_256`: 190 bytes
|
3953
|
-
#
|
3954
4394
|
# * `RSA_3072`
|
3955
4395
|
#
|
3956
4396
|
# * `RSAES_OAEP_SHA_1`: 342 bytes
|
3957
4397
|
#
|
3958
4398
|
# * `RSAES_OAEP_SHA_256`: 318 bytes
|
3959
|
-
#
|
3960
4399
|
# * `RSA_4096`
|
3961
4400
|
#
|
3962
4401
|
# * `RSAES_OAEP_SHA_1`: 470 bytes
|
3963
4402
|
#
|
3964
4403
|
# * `RSAES_OAEP_SHA_256`: 446 bytes
|
3965
|
-
#
|
3966
4404
|
# * `SM2PKE`: 1024 bytes (China Regions only)
|
3967
4405
|
#
|
3968
4406
|
# The KMS key that you use for this operation must be in a compatible
|
@@ -3983,11 +4421,15 @@ module Aws::KMS
|
|
3983
4421
|
#
|
3984
4422
|
# * GenerateDataKeyPair
|
3985
4423
|
#
|
4424
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
4425
|
+
# model. For more information, see [KMS eventual consistency][4].
|
4426
|
+
#
|
3986
4427
|
#
|
3987
4428
|
#
|
3988
4429
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context
|
3989
4430
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
3990
4431
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
4432
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
3991
4433
|
#
|
3992
4434
|
# @option params [required, String] :key_id
|
3993
4435
|
# Identifies the KMS key to use in the encryption operation. The KMS key
|
@@ -4247,6 +4689,9 @@ module Aws::KMS
|
|
4247
4689
|
#
|
4248
4690
|
# * GenerateDataKeyWithoutPlaintext
|
4249
4691
|
#
|
4692
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
4693
|
+
# model. For more information, see [KMS eventual consistency][10].
|
4694
|
+
#
|
4250
4695
|
#
|
4251
4696
|
#
|
4252
4697
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context
|
@@ -4258,6 +4703,7 @@ module Aws::KMS
|
|
4258
4703
|
# [7]: https://docs.aws.amazon.com/dynamodb-encryption-client/latest/devguide/
|
4259
4704
|
# [8]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingClientSideEncryption.html
|
4260
4705
|
# [9]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
4706
|
+
# [10]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
4261
4707
|
#
|
4262
4708
|
# @option params [required, String] :key_id
|
4263
4709
|
# Specifies the symmetric encryption KMS key that encrypts the data key.
|
@@ -4464,8 +4910,9 @@ module Aws::KMS
|
|
4464
4910
|
# a copy of the private key that is encrypted under the symmetric
|
4465
4911
|
# encryption KMS key you specify. You can use the data key pair to
|
4466
4912
|
# perform asymmetric cryptography and implement digital signatures
|
4467
|
-
# outside of KMS. The bytes in the keys are random; they not related
|
4468
|
-
# the caller or to the KMS key that is used to encrypt the private
|
4913
|
+
# outside of KMS. The bytes in the keys are random; they are not related
|
4914
|
+
# to the caller or to the KMS key that is used to encrypt the private
|
4915
|
+
# key.
|
4469
4916
|
#
|
4470
4917
|
# You can use the public key that `GenerateDataKeyPair` returns to
|
4471
4918
|
# encrypt data or verify a signature outside of KMS. Then, store the
|
@@ -4546,6 +4993,9 @@ module Aws::KMS
|
|
4546
4993
|
#
|
4547
4994
|
# * GenerateDataKeyWithoutPlaintext
|
4548
4995
|
#
|
4996
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
4997
|
+
# model. For more information, see [KMS eventual consistency][9].
|
4998
|
+
#
|
4549
4999
|
#
|
4550
5000
|
#
|
4551
5001
|
# [1]: https://tools.ietf.org/html/rfc5280
|
@@ -4556,6 +5006,7 @@ module Aws::KMS
|
|
4556
5006
|
# [6]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context
|
4557
5007
|
# [7]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
4558
5008
|
# [8]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
5009
|
+
# [9]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
4559
5010
|
#
|
4560
5011
|
# @option params [Hash<String,String>] :encryption_context
|
4561
5012
|
# Specifies the encryption context that will be used when encrypting the
|
@@ -4633,8 +5084,11 @@ module Aws::KMS
|
|
4633
5084
|
# key. The only valid encryption algorithm is `RSAES_OAEP_SHA_256`.
|
4634
5085
|
#
|
4635
5086
|
# This parameter only supports attestation documents for Amazon Web
|
4636
|
-
# Services Nitro Enclaves. To
|
4637
|
-
#
|
5087
|
+
# Services Nitro Enclaves. To call DeriveSharedSecret for an Amazon Web
|
5088
|
+
# Services Nitro Enclaves, use the [Amazon Web Services Nitro Enclaves
|
5089
|
+
# SDK][2] to generate the attestation document and then use the
|
5090
|
+
# Recipient parameter from any Amazon Web Services SDK to provide the
|
5091
|
+
# attestation document for the enclave.
|
4638
5092
|
#
|
4639
5093
|
# When you use this parameter, instead of returning a plaintext copy of
|
4640
5094
|
# the private data key, KMS encrypts the plaintext private data key
|
@@ -4819,12 +5273,16 @@ module Aws::KMS
|
|
4819
5273
|
#
|
4820
5274
|
# * GenerateDataKeyWithoutPlaintext
|
4821
5275
|
#
|
5276
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
5277
|
+
# model. For more information, see [KMS eventual consistency][5].
|
5278
|
+
#
|
4822
5279
|
#
|
4823
5280
|
#
|
4824
5281
|
# [1]: https://tools.ietf.org/html/rfc5280
|
4825
5282
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context
|
4826
5283
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
4827
5284
|
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
5285
|
+
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
4828
5286
|
#
|
4829
5287
|
# @option params [Hash<String,String>] :encryption_context
|
4830
5288
|
# Specifies the encryption context that will be used when encrypting the
|
@@ -5035,11 +5493,15 @@ module Aws::KMS
|
|
5035
5493
|
#
|
5036
5494
|
# * GenerateDataKeyPairWithoutPlaintext
|
5037
5495
|
#
|
5496
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
5497
|
+
# model. For more information, see [KMS eventual consistency][4].
|
5498
|
+
#
|
5038
5499
|
#
|
5039
5500
|
#
|
5040
5501
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context
|
5041
5502
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
5042
5503
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
5504
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
5043
5505
|
#
|
5044
5506
|
# @option params [required, String] :key_id
|
5045
5507
|
# Specifies the symmetric encryption KMS key that encrypts the data key.
|
@@ -5207,12 +5669,16 @@ module Aws::KMS
|
|
5207
5669
|
#
|
5208
5670
|
# **Related operations**: VerifyMac
|
5209
5671
|
#
|
5672
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
5673
|
+
# model. For more information, see [KMS eventual consistency][5].
|
5674
|
+
#
|
5210
5675
|
#
|
5211
5676
|
#
|
5212
5677
|
# [1]: https://datatracker.ietf.org/doc/html/rfc2104
|
5213
5678
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/hmac.html
|
5214
5679
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
5215
5680
|
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
5681
|
+
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
5216
5682
|
#
|
5217
5683
|
# @option params [required, String, StringIO, File] :message
|
5218
5684
|
# The message to be hashed. Specify a message of up to 4,096 bytes.
|
@@ -5343,6 +5809,9 @@ module Aws::KMS
|
|
5343
5809
|
#
|
5344
5810
|
# **Required permissions**: [kms:GenerateRandom][5] (IAM policy)
|
5345
5811
|
#
|
5812
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
5813
|
+
# model. For more information, see [KMS eventual consistency][6].
|
5814
|
+
#
|
5346
5815
|
#
|
5347
5816
|
#
|
5348
5817
|
# [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave.html
|
@@ -5350,6 +5819,7 @@ module Aws::KMS
|
|
5350
5819
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html
|
5351
5820
|
# [4]: https://docs.aws.amazon.com/kms/latest/cryptographic-details/
|
5352
5821
|
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
5822
|
+
# [6]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
5353
5823
|
#
|
5354
5824
|
# @option params [Integer] :number_of_bytes
|
5355
5825
|
# The length of the random byte string. This parameter is required.
|
@@ -5460,11 +5930,16 @@ module Aws::KMS
|
|
5460
5930
|
#
|
5461
5931
|
# **Required permissions**: [kms:GetKeyPolicy][1] (key policy)
|
5462
5932
|
#
|
5463
|
-
# **Related operations**: PutKeyPolicy
|
5933
|
+
# **Related operations**: [PutKeyPolicy][2]
|
5934
|
+
#
|
5935
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
5936
|
+
# model. For more information, see [KMS eventual consistency][3].
|
5464
5937
|
#
|
5465
5938
|
#
|
5466
5939
|
#
|
5467
5940
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
5941
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/APIReference/API_PutKeyPolicy.html
|
5942
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
5468
5943
|
#
|
5469
5944
|
# @option params [required, String] :key_id
|
5470
5945
|
# Gets the key policy for the specified KMS key.
|
@@ -5481,13 +5956,15 @@ module Aws::KMS
|
|
5481
5956
|
# To get the key ID and key ARN for a KMS key, use ListKeys or
|
5482
5957
|
# DescribeKey.
|
5483
5958
|
#
|
5484
|
-
# @option params [
|
5485
|
-
# Specifies the name of the key policy.
|
5486
|
-
# `default`.
|
5959
|
+
# @option params [String] :policy_name
|
5960
|
+
# Specifies the name of the key policy. If no policy name is specified,
|
5961
|
+
# the default value is `default`. The only valid name is `default`. To
|
5962
|
+
# get the names of key policies, use ListKeyPolicies.
|
5487
5963
|
#
|
5488
5964
|
# @return [Types::GetKeyPolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
5489
5965
|
#
|
5490
5966
|
# * {Types::GetKeyPolicyResponse#policy #policy} => String
|
5967
|
+
# * {Types::GetKeyPolicyResponse#policy_name #policy_name} => String
|
5491
5968
|
#
|
5492
5969
|
#
|
5493
5970
|
# @example Example: To retrieve a key policy
|
@@ -5508,12 +5985,13 @@ module Aws::KMS
|
|
5508
5985
|
#
|
5509
5986
|
# resp = client.get_key_policy({
|
5510
5987
|
# key_id: "KeyIdType", # required
|
5511
|
-
# policy_name: "PolicyNameType",
|
5988
|
+
# policy_name: "PolicyNameType",
|
5512
5989
|
# })
|
5513
5990
|
#
|
5514
5991
|
# @example Response structure
|
5515
5992
|
#
|
5516
5993
|
# resp.policy #=> String
|
5994
|
+
# resp.policy_name #=> String
|
5517
5995
|
#
|
5518
5996
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/GetKeyPolicy AWS API Documentation
|
5519
5997
|
#
|
@@ -5524,14 +6002,10 @@ module Aws::KMS
|
|
5524
6002
|
req.send_request(options)
|
5525
6003
|
end
|
5526
6004
|
|
5527
|
-
#
|
5528
|
-
# key material][1] is
|
5529
|
-
#
|
5530
|
-
#
|
5531
|
-
# KMS rotates the key material of the KMS key one year (approximately
|
5532
|
-
# 365 days) from the enable date and every year thereafter. You can
|
5533
|
-
# monitor rotation of the key material for your KMS keys in CloudTrail
|
5534
|
-
# and Amazon CloudWatch.
|
6005
|
+
# Provides detailed information about the rotation status for a KMS key,
|
6006
|
+
# including whether [automatic rotation of the key material][1] is
|
6007
|
+
# enabled for the specified KMS key, the [rotation period][2], and the
|
6008
|
+
# next scheduled rotation date.
|
5535
6009
|
#
|
5536
6010
|
# Automatic key rotation is supported only on [symmetric encryption KMS
|
5537
6011
|
# keys][3]. You cannot enable automatic rotation of [asymmetric KMS
|
@@ -5547,6 +6021,13 @@ module Aws::KMS
|
|
5547
6021
|
# Services managed KMS keys every year. The key rotation status for
|
5548
6022
|
# Amazon Web Services managed KMS keys is always `true`.
|
5549
6023
|
#
|
6024
|
+
# You can perform on-demand (RotateKeyOnDemand) rotation of the key
|
6025
|
+
# material in customer managed KMS keys, regardless of whether or not
|
6026
|
+
# automatic key rotation is enabled. You can use GetKeyRotationStatus to
|
6027
|
+
# identify the date and time that an in progress on-demand rotation was
|
6028
|
+
# initiated. You can use ListKeyRotations to view the details of
|
6029
|
+
# completed rotations.
|
6030
|
+
#
|
5550
6031
|
# <note markdown="1"> In May 2022, KMS changed the rotation schedule for Amazon Web Services
|
5551
6032
|
# managed keys from every three years to every year. For details, see
|
5552
6033
|
# EnableKeyRotation.
|
@@ -5583,10 +6064,17 @@ module Aws::KMS
|
|
5583
6064
|
#
|
5584
6065
|
# * EnableKeyRotation
|
5585
6066
|
#
|
6067
|
+
# * ListKeyRotations
|
6068
|
+
#
|
6069
|
+
# * RotateKeyOnDemand
|
6070
|
+
#
|
6071
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
6072
|
+
# model. For more information, see [KMS eventual consistency][12].
|
6073
|
+
#
|
5586
6074
|
#
|
5587
6075
|
#
|
5588
6076
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html
|
5589
|
-
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/
|
6077
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html#rotation-period
|
5590
6078
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#symmetric-cmks
|
5591
6079
|
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
|
5592
6080
|
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/hmac.html
|
@@ -5596,6 +6084,7 @@ module Aws::KMS
|
|
5596
6084
|
# [9]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk
|
5597
6085
|
# [10]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
5598
6086
|
# [11]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
6087
|
+
# [12]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
5599
6088
|
#
|
5600
6089
|
# @option params [required, String] :key_id
|
5601
6090
|
# Gets the rotation status for the specified KMS key.
|
@@ -5616,11 +6105,16 @@ module Aws::KMS
|
|
5616
6105
|
# @return [Types::GetKeyRotationStatusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
5617
6106
|
#
|
5618
6107
|
# * {Types::GetKeyRotationStatusResponse#key_rotation_enabled #key_rotation_enabled} => Boolean
|
6108
|
+
# * {Types::GetKeyRotationStatusResponse#key_id #key_id} => String
|
6109
|
+
# * {Types::GetKeyRotationStatusResponse#rotation_period_in_days #rotation_period_in_days} => Integer
|
6110
|
+
# * {Types::GetKeyRotationStatusResponse#next_rotation_date #next_rotation_date} => Time
|
6111
|
+
# * {Types::GetKeyRotationStatusResponse#on_demand_rotation_start_date #on_demand_rotation_start_date} => Time
|
5619
6112
|
#
|
5620
6113
|
#
|
5621
6114
|
# @example Example: To retrieve the rotation status for a KMS key
|
5622
6115
|
#
|
5623
|
-
# # The following example retrieves
|
6116
|
+
# # The following example retrieves detailed information about the rotation status for a KMS key, including whether
|
6117
|
+
# # automatic key rotation is enabled for the specified KMS key, the rotation period, and the next scheduled rotation date.
|
5624
6118
|
#
|
5625
6119
|
# resp = client.get_key_rotation_status({
|
5626
6120
|
# key_id: "1234abcd-12ab-34cd-56ef-1234567890ab", # The identifier of the KMS key whose key material rotation status you want to retrieve. You can use the key ID or the Amazon Resource Name (ARN) of the KMS key.
|
@@ -5628,7 +6122,11 @@ module Aws::KMS
|
|
5628
6122
|
#
|
5629
6123
|
# resp.to_h outputs the following:
|
5630
6124
|
# {
|
5631
|
-
#
|
6125
|
+
# key_id: "1234abcd-12ab-34cd-56ef-1234567890ab", # Identifies the specified symmetric encryption KMS key.
|
6126
|
+
# key_rotation_enabled: true, # A boolean that indicates the key material rotation status. Returns true when automatic rotation of the key material is enabled, or false when it is not.
|
6127
|
+
# next_rotation_date: Time.parse("2024-04-05T15:14:47.757000+00:00"), # The next date that the key material will be automatically rotated.
|
6128
|
+
# on_demand_rotation_start_date: Time.parse("2024-03-02T10:11:36.564000+00:00"), # Identifies the date and time that an in progress on-demand rotation was initiated.
|
6129
|
+
# rotation_period_in_days: 365, # The number of days between each automatic rotation. The default value is 365 days.
|
5632
6130
|
# }
|
5633
6131
|
#
|
5634
6132
|
# @example Request syntax with placeholder values
|
@@ -5640,6 +6138,10 @@ module Aws::KMS
|
|
5640
6138
|
# @example Response structure
|
5641
6139
|
#
|
5642
6140
|
# resp.key_rotation_enabled #=> Boolean
|
6141
|
+
# resp.key_id #=> String
|
6142
|
+
# resp.rotation_period_in_days #=> Integer
|
6143
|
+
# resp.next_rotation_date #=> Time
|
6144
|
+
# resp.on_demand_rotation_start_date #=> Time
|
5643
6145
|
#
|
5644
6146
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/GetKeyRotationStatus AWS API Documentation
|
5645
6147
|
#
|
@@ -5665,14 +6167,11 @@ module Aws::KMS
|
|
5665
6167
|
# material. You can import key material for a symmetric encryption KMS
|
5666
6168
|
# key, HMAC KMS key, asymmetric encryption KMS key, or asymmetric
|
5667
6169
|
# signing KMS key. You can also import key material into a [multi-Region
|
5668
|
-
# key]
|
5669
|
-
#
|
5670
|
-
#
|
5671
|
-
#
|
5672
|
-
#
|
5673
|
-
# token to [reimport the original key
|
5674
|
-
# material](kms/latest/developerguide/importing-keys.html#reimport-key-material)
|
5675
|
-
# into a KMS key whose key material expired or was deleted.
|
6170
|
+
# key][2] of any supported type. However, you can't import key material
|
6171
|
+
# into a KMS key in a [custom key store][3]. You can also use
|
6172
|
+
# `GetParametersForImport` to get a public key and import token to
|
6173
|
+
# [reimport the original key material][4] into a KMS key whose key
|
6174
|
+
# material expired or was deleted.
|
5676
6175
|
#
|
5677
6176
|
# `GetParametersForImport` returns the items that you need to import
|
5678
6177
|
# your key material.
|
@@ -5709,13 +6208,13 @@ module Aws::KMS
|
|
5709
6208
|
# algorithm each time you import or reimport the same key material.
|
5710
6209
|
#
|
5711
6210
|
# The KMS key that you use for this operation must be in a compatible
|
5712
|
-
# key state. For details, see [Key states of KMS keys][
|
6211
|
+
# key state. For details, see [Key states of KMS keys][5] in the *Key
|
5713
6212
|
# Management Service Developer Guide*.
|
5714
6213
|
#
|
5715
6214
|
# **Cross-account use**: No. You cannot perform this operation on a KMS
|
5716
6215
|
# key in a different Amazon Web Services account.
|
5717
6216
|
#
|
5718
|
-
# **Required permissions**: [kms:GetParametersForImport][
|
6217
|
+
# **Required permissions**: [kms:GetParametersForImport][6] (key policy)
|
5719
6218
|
#
|
5720
6219
|
# **Related operations:**
|
5721
6220
|
#
|
@@ -5723,11 +6222,18 @@ module Aws::KMS
|
|
5723
6222
|
#
|
5724
6223
|
# * DeleteImportedKeyMaterial
|
5725
6224
|
#
|
6225
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
6226
|
+
# model. For more information, see [KMS eventual consistency][7].
|
6227
|
+
#
|
5726
6228
|
#
|
5727
6229
|
#
|
5728
6230
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html
|
5729
|
-
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/
|
5730
|
-
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/
|
6231
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html
|
6232
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
|
6233
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html#reimport-key-material
|
6234
|
+
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
6235
|
+
# [6]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
6236
|
+
# [7]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
5731
6237
|
#
|
5732
6238
|
# @option params [required, String] :key_id
|
5733
6239
|
# The identifier of the KMS key that will be associated with the
|
@@ -5782,8 +6288,8 @@ module Aws::KMS
|
|
5782
6288
|
# You cannot use the RSAES\_OAEP\_SHA\_1 wrapping algorithm with the
|
5783
6289
|
# RSA\_2048 wrapping key spec to wrap ECC\_NIST\_P521 key material.
|
5784
6290
|
#
|
5785
|
-
# * **RSAES\_PKCS1\_V1\_5** (Deprecated) —
|
5786
|
-
#
|
6291
|
+
# * **RSAES\_PKCS1\_V1\_5** (Deprecated) — As of October 10, 2023, KMS
|
6292
|
+
# does not support the RSAES\_PKCS1\_V1\_5 wrapping algorithm.
|
5787
6293
|
#
|
5788
6294
|
# @option params [required, String] :wrapping_key_spec
|
5789
6295
|
# The type of RSA public key to return in the response. You will use
|
@@ -5886,8 +6392,8 @@ module Aws::KMS
|
|
5886
6392
|
#
|
5887
6393
|
# resp = client.get_parameters_for_import({
|
5888
6394
|
# key_id: "KeyIdType", # required
|
5889
|
-
# wrapping_algorithm: "RSAES_PKCS1_V1_5", # required, accepts RSAES_PKCS1_V1_5, RSAES_OAEP_SHA_1, RSAES_OAEP_SHA_256, RSA_AES_KEY_WRAP_SHA_1, RSA_AES_KEY_WRAP_SHA_256
|
5890
|
-
# wrapping_key_spec: "RSA_2048", # required, accepts RSA_2048, RSA_3072, RSA_4096
|
6395
|
+
# wrapping_algorithm: "RSAES_PKCS1_V1_5", # required, accepts RSAES_PKCS1_V1_5, RSAES_OAEP_SHA_1, RSAES_OAEP_SHA_256, RSA_AES_KEY_WRAP_SHA_1, RSA_AES_KEY_WRAP_SHA_256, SM2PKE
|
6396
|
+
# wrapping_key_spec: "RSA_2048", # required, accepts RSA_2048, RSA_3072, RSA_4096, SM2
|
5891
6397
|
# })
|
5892
6398
|
#
|
5893
6399
|
# @example Response structure
|
@@ -5929,7 +6435,8 @@ module Aws::KMS
|
|
5929
6435
|
# * [KeySpec][2]: The type of key material in the public key, such as
|
5930
6436
|
# `RSA_4096` or `ECC_NIST_P521`.
|
5931
6437
|
#
|
5932
|
-
# * [KeyUsage][3]: Whether the key is used for encryption or
|
6438
|
+
# * [KeyUsage][3]: Whether the key is used for encryption, signing, or
|
6439
|
+
# deriving a shared secret.
|
5933
6440
|
#
|
5934
6441
|
# * [EncryptionAlgorithms][4] or [SigningAlgorithms][5]: A list of the
|
5935
6442
|
# encryption algorithms or the signing algorithms for the key.
|
@@ -5959,6 +6466,9 @@ module Aws::KMS
|
|
5959
6466
|
#
|
5960
6467
|
# **Related operations**: CreateKey
|
5961
6468
|
#
|
6469
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
6470
|
+
# model. For more information, see [KMS eventual consistency][9].
|
6471
|
+
#
|
5962
6472
|
#
|
5963
6473
|
#
|
5964
6474
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
|
@@ -5969,6 +6479,7 @@ module Aws::KMS
|
|
5969
6479
|
# [6]: https://docs.aws.amazon.com/kms/latest/developerguide/asymmetric-key-specs.html#key-spec-sm-offline-verification
|
5970
6480
|
# [7]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
5971
6481
|
# [8]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
6482
|
+
# [9]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
5972
6483
|
#
|
5973
6484
|
# @option params [required, String] :key_id
|
5974
6485
|
# Identifies the asymmetric KMS key that includes the public key.
|
@@ -6014,6 +6525,7 @@ module Aws::KMS
|
|
6014
6525
|
# * {Types::GetPublicKeyResponse#key_usage #key_usage} => String
|
6015
6526
|
# * {Types::GetPublicKeyResponse#encryption_algorithms #encryption_algorithms} => Array<String>
|
6016
6527
|
# * {Types::GetPublicKeyResponse#signing_algorithms #signing_algorithms} => Array<String>
|
6528
|
+
# * {Types::GetPublicKeyResponse#key_agreement_algorithms #key_agreement_algorithms} => Array<String>
|
6017
6529
|
#
|
6018
6530
|
#
|
6019
6531
|
# @example Example: To download the public key of an asymmetric KMS key
|
@@ -6051,11 +6563,13 @@ module Aws::KMS
|
|
6051
6563
|
# resp.public_key #=> String
|
6052
6564
|
# 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"
|
6053
6565
|
# 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"
|
6054
|
-
# resp.key_usage #=> String, one of "SIGN_VERIFY", "ENCRYPT_DECRYPT", "GENERATE_VERIFY_MAC"
|
6566
|
+
# resp.key_usage #=> String, one of "SIGN_VERIFY", "ENCRYPT_DECRYPT", "GENERATE_VERIFY_MAC", "KEY_AGREEMENT"
|
6055
6567
|
# resp.encryption_algorithms #=> Array
|
6056
6568
|
# resp.encryption_algorithms[0] #=> String, one of "SYMMETRIC_DEFAULT", "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256", "SM2PKE"
|
6057
6569
|
# resp.signing_algorithms #=> Array
|
6058
6570
|
# 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"
|
6571
|
+
# resp.key_agreement_algorithms #=> Array
|
6572
|
+
# resp.key_agreement_algorithms[0] #=> String, one of "ECDH"
|
6059
6573
|
#
|
6060
6574
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/GetPublicKey AWS API Documentation
|
6061
6575
|
#
|
@@ -6082,9 +6596,7 @@ module Aws::KMS
|
|
6082
6596
|
# import different key material. You might reimport key material to
|
6083
6597
|
# replace key material that expired or key material that you deleted.
|
6084
6598
|
# You might also reimport key material to change the expiration model or
|
6085
|
-
# expiration date of the key material.
|
6086
|
-
# if necessary, call DeleteImportedKeyMaterial to delete the current
|
6087
|
-
# imported key material.
|
6599
|
+
# expiration date of the key material.
|
6088
6600
|
#
|
6089
6601
|
# Each time you import key material into KMS, you can determine whether
|
6090
6602
|
# (`ExpirationModel`) and when (`ValidTo`) the key material expires. To
|
@@ -6179,6 +6691,9 @@ module Aws::KMS
|
|
6179
6691
|
#
|
6180
6692
|
# * GetParametersForImport
|
6181
6693
|
#
|
6694
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
6695
|
+
# model. For more information, see [KMS eventual consistency][7].
|
6696
|
+
#
|
6182
6697
|
#
|
6183
6698
|
#
|
6184
6699
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html
|
@@ -6187,6 +6702,7 @@ module Aws::KMS
|
|
6187
6702
|
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html#importing-keys-overview
|
6188
6703
|
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
6189
6704
|
# [6]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
6705
|
+
# [7]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
6190
6706
|
#
|
6191
6707
|
# @option params [required, String] :key_id
|
6192
6708
|
# The identifier of the KMS key that will be associated with the
|
@@ -6343,11 +6859,15 @@ module Aws::KMS
|
|
6343
6859
|
#
|
6344
6860
|
# * UpdateAlias
|
6345
6861
|
#
|
6862
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
6863
|
+
# model. For more information, see [KMS eventual consistency][4].
|
6864
|
+
#
|
6346
6865
|
#
|
6347
6866
|
#
|
6348
6867
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/limits.html#aliases-limit
|
6349
6868
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
6350
6869
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-alias.html#alias-access
|
6870
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
6351
6871
|
#
|
6352
6872
|
# @option params [String] :key_id
|
6353
6873
|
# Lists only aliases that are associated with the specified KMS key.
|
@@ -6507,12 +7027,16 @@ module Aws::KMS
|
|
6507
7027
|
#
|
6508
7028
|
# * RevokeGrant
|
6509
7029
|
#
|
7030
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
7031
|
+
# model. For more information, see [KMS eventual consistency][5].
|
7032
|
+
#
|
6510
7033
|
#
|
6511
7034
|
#
|
6512
7035
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/grants.html
|
6513
7036
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-grants.html
|
6514
7037
|
# [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#principal-services
|
6515
7038
|
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
7039
|
+
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
6516
7040
|
#
|
6517
7041
|
# @option params [Integer] :limit
|
6518
7042
|
# Use this parameter to specify the maximum number of items to return.
|
@@ -6648,7 +7172,7 @@ module Aws::KMS
|
|
6648
7172
|
# resp.grants[0].retiring_principal #=> String
|
6649
7173
|
# resp.grants[0].issuing_account #=> String
|
6650
7174
|
# resp.grants[0].operations #=> Array
|
6651
|
-
# resp.grants[0].operations[0] #=> String, one of "Decrypt", "Encrypt", "GenerateDataKey", "GenerateDataKeyWithoutPlaintext", "ReEncryptFrom", "ReEncryptTo", "Sign", "Verify", "GetPublicKey", "CreateGrant", "RetireGrant", "DescribeKey", "GenerateDataKeyPair", "GenerateDataKeyPairWithoutPlaintext", "GenerateMac", "VerifyMac"
|
7175
|
+
# resp.grants[0].operations[0] #=> String, one of "Decrypt", "Encrypt", "GenerateDataKey", "GenerateDataKeyWithoutPlaintext", "ReEncryptFrom", "ReEncryptTo", "Sign", "Verify", "GetPublicKey", "CreateGrant", "RetireGrant", "DescribeKey", "GenerateDataKeyPair", "GenerateDataKeyPairWithoutPlaintext", "GenerateMac", "VerifyMac", "DeriveSharedSecret"
|
6652
7176
|
# resp.grants[0].constraints.encryption_context_subset #=> Hash
|
6653
7177
|
# resp.grants[0].constraints.encryption_context_subset["EncryptionContextKey"] #=> String
|
6654
7178
|
# resp.grants[0].constraints.encryption_context_equals #=> Hash
|
@@ -6679,11 +7203,16 @@ module Aws::KMS
|
|
6679
7203
|
#
|
6680
7204
|
# * GetKeyPolicy
|
6681
7205
|
#
|
6682
|
-
# * PutKeyPolicy
|
7206
|
+
# * [PutKeyPolicy][2]
|
7207
|
+
#
|
7208
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
7209
|
+
# model. For more information, see [KMS eventual consistency][3].
|
6683
7210
|
#
|
6684
7211
|
#
|
6685
7212
|
#
|
6686
7213
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
7214
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/APIReference/API_PutKeyPolicy.html
|
7215
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
6687
7216
|
#
|
6688
7217
|
# @option params [required, String] :key_id
|
6689
7218
|
# Gets the names of key policies for the specified KMS key.
|
@@ -6765,6 +7294,129 @@ module Aws::KMS
|
|
6765
7294
|
req.send_request(options)
|
6766
7295
|
end
|
6767
7296
|
|
7297
|
+
# Returns information about all completed key material rotations for the
|
7298
|
+
# specified KMS key.
|
7299
|
+
#
|
7300
|
+
# You must specify the KMS key in all requests. You can refine the key
|
7301
|
+
# rotations list by limiting the number of rotations returned.
|
7302
|
+
#
|
7303
|
+
# For detailed information about automatic and on-demand key rotations,
|
7304
|
+
# see [Rotating KMS keys][1] in the *Key Management Service Developer
|
7305
|
+
# Guide*.
|
7306
|
+
#
|
7307
|
+
# **Cross-account use**: No. You cannot perform this operation on a KMS
|
7308
|
+
# key in a different Amazon Web Services account.
|
7309
|
+
#
|
7310
|
+
# **Required permissions**: [kms:ListKeyRotations][2] (key policy)
|
7311
|
+
#
|
7312
|
+
# **Related operations:**
|
7313
|
+
#
|
7314
|
+
# * EnableKeyRotation
|
7315
|
+
#
|
7316
|
+
# * DisableKeyRotation
|
7317
|
+
#
|
7318
|
+
# * GetKeyRotationStatus
|
7319
|
+
#
|
7320
|
+
# * RotateKeyOnDemand
|
7321
|
+
#
|
7322
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
7323
|
+
# model. For more information, see [KMS eventual consistency][3].
|
7324
|
+
#
|
7325
|
+
#
|
7326
|
+
#
|
7327
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html
|
7328
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
7329
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
7330
|
+
#
|
7331
|
+
# @option params [required, String] :key_id
|
7332
|
+
# Gets the key rotations for the specified KMS key.
|
7333
|
+
#
|
7334
|
+
# Specify the key ID or key ARN of the KMS key.
|
7335
|
+
#
|
7336
|
+
# For example:
|
7337
|
+
#
|
7338
|
+
# * Key ID: `1234abcd-12ab-34cd-56ef-1234567890ab`
|
7339
|
+
#
|
7340
|
+
# * Key ARN:
|
7341
|
+
# `arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`
|
7342
|
+
#
|
7343
|
+
# To get the key ID and key ARN for a KMS key, use ListKeys or
|
7344
|
+
# DescribeKey.
|
7345
|
+
#
|
7346
|
+
# @option params [Integer] :limit
|
7347
|
+
# Use this parameter to specify the maximum number of items to return.
|
7348
|
+
# When this value is present, KMS does not return more than the
|
7349
|
+
# specified number of items, but it might return fewer.
|
7350
|
+
#
|
7351
|
+
# This value is optional. If you include a value, it must be between 1
|
7352
|
+
# and 1000, inclusive. If you do not include a value, it defaults to
|
7353
|
+
# 100.
|
7354
|
+
#
|
7355
|
+
# @option params [String] :marker
|
7356
|
+
# Use this parameter in a subsequent request after you receive a
|
7357
|
+
# response with truncated results. Set it to the value of `NextMarker`
|
7358
|
+
# from the truncated response you just received.
|
7359
|
+
#
|
7360
|
+
# @return [Types::ListKeyRotationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
7361
|
+
#
|
7362
|
+
# * {Types::ListKeyRotationsResponse#rotations #rotations} => Array<Types::RotationsListEntry>
|
7363
|
+
# * {Types::ListKeyRotationsResponse#next_marker #next_marker} => String
|
7364
|
+
# * {Types::ListKeyRotationsResponse#truncated #truncated} => Boolean
|
7365
|
+
#
|
7366
|
+
# The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
|
7367
|
+
#
|
7368
|
+
#
|
7369
|
+
# @example Example: To retrieve information about all completed key material rotations
|
7370
|
+
#
|
7371
|
+
# # The following example returns information about all completed key material rotations for the specified KMS key.
|
7372
|
+
#
|
7373
|
+
# resp = client.list_key_rotations({
|
7374
|
+
# key_id: "1234abcd-12ab-34cd-56ef-1234567890ab",
|
7375
|
+
# })
|
7376
|
+
#
|
7377
|
+
# resp.to_h outputs the following:
|
7378
|
+
# {
|
7379
|
+
# rotations: [
|
7380
|
+
# {
|
7381
|
+
# key_id: "1234abcd-12ab-34cd-56ef-1234567890ab",
|
7382
|
+
# rotation_date: Time.parse("2024-03-02T10:11:36.564000+00:00"),
|
7383
|
+
# rotation_type: "AUTOMATIC",
|
7384
|
+
# },
|
7385
|
+
# {
|
7386
|
+
# key_id: "1234abcd-12ab-34cd-56ef-1234567890ab",
|
7387
|
+
# rotation_date: Time.parse("2024-04-05T15:14:47.757000+00:00"),
|
7388
|
+
# rotation_type: "ON_DEMAND",
|
7389
|
+
# },
|
7390
|
+
# ], # A list of key rotations.
|
7391
|
+
# truncated: false, # A flag that indicates whether there are more items in the list. When the value is true, the list in this response is truncated. To get more items, pass the value of the NextMarker element in this response to the Marker parameter in a subsequent request.
|
7392
|
+
# }
|
7393
|
+
#
|
7394
|
+
# @example Request syntax with placeholder values
|
7395
|
+
#
|
7396
|
+
# resp = client.list_key_rotations({
|
7397
|
+
# key_id: "KeyIdType", # required
|
7398
|
+
# limit: 1,
|
7399
|
+
# marker: "MarkerType",
|
7400
|
+
# })
|
7401
|
+
#
|
7402
|
+
# @example Response structure
|
7403
|
+
#
|
7404
|
+
# resp.rotations #=> Array
|
7405
|
+
# resp.rotations[0].key_id #=> String
|
7406
|
+
# resp.rotations[0].rotation_date #=> Time
|
7407
|
+
# resp.rotations[0].rotation_type #=> String, one of "AUTOMATIC", "ON_DEMAND"
|
7408
|
+
# resp.next_marker #=> String
|
7409
|
+
# resp.truncated #=> Boolean
|
7410
|
+
#
|
7411
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/ListKeyRotations AWS API Documentation
|
7412
|
+
#
|
7413
|
+
# @overload list_key_rotations(params = {})
|
7414
|
+
# @param [Hash] params ({})
|
7415
|
+
def list_key_rotations(params = {}, options = {})
|
7416
|
+
req = build_request(:list_key_rotations, params)
|
7417
|
+
req.send_request(options)
|
7418
|
+
end
|
7419
|
+
|
6768
7420
|
# Gets a list of all KMS keys in the caller's Amazon Web Services
|
6769
7421
|
# account and Region.
|
6770
7422
|
#
|
@@ -6783,9 +7435,13 @@ module Aws::KMS
|
|
6783
7435
|
#
|
6784
7436
|
# * ListResourceTags
|
6785
7437
|
#
|
7438
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
7439
|
+
# model. For more information, see [KMS eventual consistency][2].
|
7440
|
+
#
|
6786
7441
|
#
|
6787
7442
|
#
|
6788
7443
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
7444
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
6789
7445
|
#
|
6790
7446
|
# @option params [Integer] :limit
|
6791
7447
|
# Use this parameter to specify the maximum number of items to return.
|
@@ -6898,11 +7554,15 @@ module Aws::KMS
|
|
6898
7554
|
#
|
6899
7555
|
# * UntagResource
|
6900
7556
|
#
|
7557
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
7558
|
+
# model. For more information, see [KMS eventual consistency][4].
|
7559
|
+
#
|
6901
7560
|
#
|
6902
7561
|
#
|
6903
7562
|
# [1]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
|
6904
7563
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/tagging-keys.html
|
6905
7564
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
7565
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
6906
7566
|
#
|
6907
7567
|
# @option params [required, String] :key_id
|
6908
7568
|
# Gets tags on the specified KMS key.
|
@@ -7011,14 +7671,25 @@ module Aws::KMS
|
|
7011
7671
|
# programming languages, see [Programming grants][2].
|
7012
7672
|
#
|
7013
7673
|
# **Cross-account use**: You must specify a principal in your Amazon Web
|
7014
|
-
# Services account.
|
7015
|
-
#
|
7016
|
-
#
|
7017
|
-
#
|
7674
|
+
# Services account. This operation returns a list of grants where the
|
7675
|
+
# retiring principal specified in the `ListRetirableGrants` request is
|
7676
|
+
# the same retiring principal on the grant. This can include grants on
|
7677
|
+
# KMS keys owned by other Amazon Web Services accounts, but you do not
|
7678
|
+
# need `kms:ListRetirableGrants` permission (or any other additional
|
7679
|
+
# permission) in any Amazon Web Services account other than your own.
|
7018
7680
|
#
|
7019
7681
|
# **Required permissions**: [kms:ListRetirableGrants][3] (IAM policy) in
|
7020
7682
|
# your Amazon Web Services account.
|
7021
7683
|
#
|
7684
|
+
# <note markdown="1"> KMS authorizes `ListRetirableGrants` requests by evaluating the caller
|
7685
|
+
# account's kms:ListRetirableGrants permissions. The authorized
|
7686
|
+
# resource in `ListRetirableGrants` calls is the retiring principal
|
7687
|
+
# specified in the request. KMS does not evaluate the caller's
|
7688
|
+
# permissions to verify their access to any KMS keys or grants that
|
7689
|
+
# might be returned by the `ListRetirableGrants` call.
|
7690
|
+
#
|
7691
|
+
# </note>
|
7692
|
+
#
|
7022
7693
|
# **Related operations:**
|
7023
7694
|
#
|
7024
7695
|
# * CreateGrant
|
@@ -7029,11 +7700,15 @@ module Aws::KMS
|
|
7029
7700
|
#
|
7030
7701
|
# * RevokeGrant
|
7031
7702
|
#
|
7703
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
7704
|
+
# model. For more information, see [KMS eventual consistency][4].
|
7705
|
+
#
|
7032
7706
|
#
|
7033
7707
|
#
|
7034
7708
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/grants.html
|
7035
7709
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-grants.html
|
7036
7710
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
7711
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
7037
7712
|
#
|
7038
7713
|
# @option params [Integer] :limit
|
7039
7714
|
# Use this parameter to specify the maximum number of items to return.
|
@@ -7119,7 +7794,7 @@ module Aws::KMS
|
|
7119
7794
|
# resp.grants[0].retiring_principal #=> String
|
7120
7795
|
# resp.grants[0].issuing_account #=> String
|
7121
7796
|
# resp.grants[0].operations #=> Array
|
7122
|
-
# resp.grants[0].operations[0] #=> String, one of "Decrypt", "Encrypt", "GenerateDataKey", "GenerateDataKeyWithoutPlaintext", "ReEncryptFrom", "ReEncryptTo", "Sign", "Verify", "GetPublicKey", "CreateGrant", "RetireGrant", "DescribeKey", "GenerateDataKeyPair", "GenerateDataKeyPairWithoutPlaintext", "GenerateMac", "VerifyMac"
|
7797
|
+
# resp.grants[0].operations[0] #=> String, one of "Decrypt", "Encrypt", "GenerateDataKey", "GenerateDataKeyWithoutPlaintext", "ReEncryptFrom", "ReEncryptTo", "Sign", "Verify", "GetPublicKey", "CreateGrant", "RetireGrant", "DescribeKey", "GenerateDataKeyPair", "GenerateDataKeyPairWithoutPlaintext", "GenerateMac", "VerifyMac", "DeriveSharedSecret"
|
7123
7798
|
# resp.grants[0].constraints.encryption_context_subset #=> Hash
|
7124
7799
|
# resp.grants[0].constraints.encryption_context_subset["EncryptionContextKey"] #=> String
|
7125
7800
|
# resp.grants[0].constraints.encryption_context_equals #=> Hash
|
@@ -7153,12 +7828,16 @@ module Aws::KMS
|
|
7153
7828
|
#
|
7154
7829
|
# **Related operations**: GetKeyPolicy
|
7155
7830
|
#
|
7831
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
7832
|
+
# model. For more information, see [KMS eventual consistency][5].
|
7833
|
+
#
|
7156
7834
|
#
|
7157
7835
|
#
|
7158
7836
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html
|
7159
7837
|
# [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html
|
7160
7838
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-key-policies.html#put-policy
|
7161
7839
|
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
7840
|
+
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
7162
7841
|
#
|
7163
7842
|
# @option params [required, String] :key_id
|
7164
7843
|
# Sets the key policy on the specified KMS key.
|
@@ -7175,8 +7854,9 @@ module Aws::KMS
|
|
7175
7854
|
# To get the key ID and key ARN for a KMS key, use ListKeys or
|
7176
7855
|
# DescribeKey.
|
7177
7856
|
#
|
7178
|
-
# @option params [
|
7179
|
-
# The name of the key policy.
|
7857
|
+
# @option params [String] :policy_name
|
7858
|
+
# The name of the key policy. If no policy name is specified, the
|
7859
|
+
# default value is `default`. The only valid value is `default`.
|
7180
7860
|
#
|
7181
7861
|
# @option params [required, String] :policy
|
7182
7862
|
# The key policy to attach to the KMS key.
|
@@ -7233,12 +7913,13 @@ module Aws::KMS
|
|
7233
7913
|
# Management Service Developer Guide*.
|
7234
7914
|
#
|
7235
7915
|
# Use this parameter only when you intend to prevent the principal that
|
7236
|
-
# is making the request from making a subsequent PutKeyPolicy
|
7237
|
-
# the KMS key.
|
7916
|
+
# is making the request from making a subsequent [PutKeyPolicy][2]
|
7917
|
+
# request on the KMS key.
|
7238
7918
|
#
|
7239
7919
|
#
|
7240
7920
|
#
|
7241
7921
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-default.html#prevent-unmanageable-key
|
7922
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/APIReference/API_PutKeyPolicy.html
|
7242
7923
|
#
|
7243
7924
|
# @return [Struct] Returns an empty {Seahorse::Client::Response response}.
|
7244
7925
|
#
|
@@ -7257,7 +7938,7 @@ module Aws::KMS
|
|
7257
7938
|
#
|
7258
7939
|
# resp = client.put_key_policy({
|
7259
7940
|
# key_id: "KeyIdType", # required
|
7260
|
-
# policy_name: "PolicyNameType",
|
7941
|
+
# policy_name: "PolicyNameType",
|
7261
7942
|
# policy: "PolicyType", # required
|
7262
7943
|
# bypass_policy_lockout_safety_check: false,
|
7263
7944
|
# })
|
@@ -7363,6 +8044,9 @@ module Aws::KMS
|
|
7363
8044
|
#
|
7364
8045
|
# * GenerateDataKeyPair
|
7365
8046
|
#
|
8047
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
8048
|
+
# model. For more information, see [KMS eventual consistency][9].
|
8049
|
+
#
|
7366
8050
|
#
|
7367
8051
|
#
|
7368
8052
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html#rotate-keys-manually
|
@@ -7373,6 +8057,7 @@ module Aws::KMS
|
|
7373
8057
|
# [6]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
7374
8058
|
# [7]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
7375
8059
|
# [8]: https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html
|
8060
|
+
# [9]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
7376
8061
|
#
|
7377
8062
|
# @option params [required, String, StringIO, File] :ciphertext_blob
|
7378
8063
|
# Ciphertext of the data to reencrypt.
|
@@ -7643,9 +8328,8 @@ module Aws::KMS
|
|
7643
8328
|
# If you replicate a multi-Region primary key with imported key
|
7644
8329
|
# material, the replica key is created with no key material. You must
|
7645
8330
|
# import the same key material that you imported into the primary key.
|
7646
|
-
# For details, see [Importing key material into multi-Region
|
7647
|
-
#
|
7648
|
-
# *Key Management Service Developer Guide*.
|
8331
|
+
# For details, see [Importing key material into multi-Region keys][12]
|
8332
|
+
# in the *Key Management Service Developer Guide*.
|
7649
8333
|
#
|
7650
8334
|
# To convert a replica key to a primary key, use the UpdatePrimaryRegion
|
7651
8335
|
# operation.
|
@@ -7675,6 +8359,9 @@ module Aws::KMS
|
|
7675
8359
|
#
|
7676
8360
|
# * UpdatePrimaryRegion
|
7677
8361
|
#
|
8362
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
8363
|
+
# model. For more information, see [KMS eventual consistency][13].
|
8364
|
+
#
|
7678
8365
|
#
|
7679
8366
|
#
|
7680
8367
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html
|
@@ -7688,6 +8375,8 @@ module Aws::KMS
|
|
7688
8375
|
# [9]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-alias.html
|
7689
8376
|
# [10]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
7690
8377
|
# [11]: https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html#mrk-sync-properties
|
8378
|
+
# [12]: https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-import.html
|
8379
|
+
# [13]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
7691
8380
|
#
|
7692
8381
|
# @option params [required, String] :key_id
|
7693
8382
|
# Identifies the multi-Region primary key that is being replicated. To
|
@@ -7806,12 +8495,13 @@ module Aws::KMS
|
|
7806
8495
|
# Management Service Developer Guide*.
|
7807
8496
|
#
|
7808
8497
|
# Use this parameter only when you intend to prevent the principal that
|
7809
|
-
# is making the request from making a subsequent PutKeyPolicy
|
7810
|
-
# the KMS key.
|
8498
|
+
# is making the request from making a subsequent [PutKeyPolicy][2]
|
8499
|
+
# request on the KMS key.
|
7811
8500
|
#
|
7812
8501
|
#
|
7813
8502
|
#
|
7814
8503
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-default.html#prevent-unmanageable-key
|
8504
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/APIReference/API_PutKeyPolicy.html
|
7815
8505
|
#
|
7816
8506
|
# @option params [String] :description
|
7817
8507
|
# A description of the KMS key. The default value is an empty string (no
|
@@ -7942,7 +8632,7 @@ module Aws::KMS
|
|
7942
8632
|
# resp.replica_key_metadata.creation_date #=> Time
|
7943
8633
|
# resp.replica_key_metadata.enabled #=> Boolean
|
7944
8634
|
# resp.replica_key_metadata.description #=> String
|
7945
|
-
# resp.replica_key_metadata.key_usage #=> String, one of "SIGN_VERIFY", "ENCRYPT_DECRYPT", "GENERATE_VERIFY_MAC"
|
8635
|
+
# resp.replica_key_metadata.key_usage #=> String, one of "SIGN_VERIFY", "ENCRYPT_DECRYPT", "GENERATE_VERIFY_MAC", "KEY_AGREEMENT"
|
7946
8636
|
# resp.replica_key_metadata.key_state #=> String, one of "Creating", "Enabled", "Disabled", "PendingDeletion", "PendingImport", "PendingReplicaDeletion", "Unavailable", "Updating"
|
7947
8637
|
# resp.replica_key_metadata.deletion_date #=> Time
|
7948
8638
|
# resp.replica_key_metadata.valid_to #=> Time
|
@@ -7957,6 +8647,8 @@ module Aws::KMS
|
|
7957
8647
|
# resp.replica_key_metadata.encryption_algorithms[0] #=> String, one of "SYMMETRIC_DEFAULT", "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256", "SM2PKE"
|
7958
8648
|
# resp.replica_key_metadata.signing_algorithms #=> Array
|
7959
8649
|
# 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"
|
8650
|
+
# resp.replica_key_metadata.key_agreement_algorithms #=> Array
|
8651
|
+
# resp.replica_key_metadata.key_agreement_algorithms[0] #=> String, one of "ECDH"
|
7960
8652
|
# resp.replica_key_metadata.multi_region #=> Boolean
|
7961
8653
|
# resp.replica_key_metadata.multi_region_configuration.multi_region_key_type #=> String, one of "PRIMARY", "REPLICA"
|
7962
8654
|
# resp.replica_key_metadata.multi_region_configuration.primary_key.arn #=> String
|
@@ -8002,7 +8694,7 @@ module Aws::KMS
|
|
8002
8694
|
# **Cross-account use**: Yes. You can retire a grant on a KMS key in a
|
8003
8695
|
# different Amazon Web Services account.
|
8004
8696
|
#
|
8005
|
-
# **Required permissions
|
8697
|
+
# **Required permissions**: Permission to retire a grant is determined
|
8006
8698
|
# primarily by the grant. For details, see [Retiring and revoking
|
8007
8699
|
# grants][2] in the *Key Management Service Developer Guide*.
|
8008
8700
|
#
|
@@ -8016,12 +8708,16 @@ module Aws::KMS
|
|
8016
8708
|
#
|
8017
8709
|
# * RevokeGrant
|
8018
8710
|
#
|
8711
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
8712
|
+
# model. For more information, see [KMS eventual consistency][5].
|
8713
|
+
#
|
8019
8714
|
#
|
8020
8715
|
#
|
8021
8716
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#grant_token
|
8022
8717
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/grant-manage.html#grant-delete
|
8023
8718
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/grants.html
|
8024
8719
|
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-grants.html
|
8720
|
+
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
8025
8721
|
#
|
8026
8722
|
# @option params [String] :grant_token
|
8027
8723
|
# Identifies the grant to be retired. You can use a grant token to
|
@@ -8125,13 +8821,17 @@ module Aws::KMS
|
|
8125
8821
|
#
|
8126
8822
|
# * RetireGrant
|
8127
8823
|
#
|
8824
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
8825
|
+
# model. For more information, see [KMS eventual consistency][6].
|
8826
|
+
#
|
8128
8827
|
#
|
8129
8828
|
#
|
8130
|
-
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/
|
8829
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/grant-manage.html#grant-delete
|
8131
8830
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#terms-eventual-consistency
|
8132
8831
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/grants.html
|
8133
8832
|
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-grants.html
|
8134
8833
|
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
8834
|
+
# [6]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
8135
8835
|
#
|
8136
8836
|
# @option params [required, String] :key_id
|
8137
8837
|
# A unique identifier for the KMS key associated with the grant. To get
|
@@ -8194,6 +8894,147 @@ module Aws::KMS
|
|
8194
8894
|
req.send_request(options)
|
8195
8895
|
end
|
8196
8896
|
|
8897
|
+
# Immediately initiates rotation of the key material of the specified
|
8898
|
+
# symmetric encryption KMS key.
|
8899
|
+
#
|
8900
|
+
# You can perform [on-demand rotation][1] of the key material in
|
8901
|
+
# customer managed KMS keys, regardless of whether or not [automatic key
|
8902
|
+
# rotation][2] is enabled. On-demand rotations do not change existing
|
8903
|
+
# automatic rotation schedules. For example, consider a KMS key that has
|
8904
|
+
# automatic key rotation enabled with a rotation period of 730 days. If
|
8905
|
+
# the key is scheduled to automatically rotate on April 14, 2024, and
|
8906
|
+
# you perform an on-demand rotation on April 10, 2024, the key will
|
8907
|
+
# automatically rotate, as scheduled, on April 14, 2024 and every 730
|
8908
|
+
# days thereafter.
|
8909
|
+
#
|
8910
|
+
# <note markdown="1"> You can perform on-demand key rotation a **maximum of 10 times** per
|
8911
|
+
# KMS key. You can use the KMS console to view the number of remaining
|
8912
|
+
# on-demand rotations available for a KMS key.
|
8913
|
+
#
|
8914
|
+
# </note>
|
8915
|
+
#
|
8916
|
+
# You can use GetKeyRotationStatus to identify any in progress on-demand
|
8917
|
+
# rotations. You can use ListKeyRotations to identify the date that
|
8918
|
+
# completed on-demand rotations were performed. You can monitor rotation
|
8919
|
+
# of the key material for your KMS keys in CloudTrail and Amazon
|
8920
|
+
# CloudWatch.
|
8921
|
+
#
|
8922
|
+
# On-demand key rotation is supported only on [symmetric encryption KMS
|
8923
|
+
# keys][3]. You cannot perform on-demand rotation of [asymmetric KMS
|
8924
|
+
# keys][4], [HMAC KMS keys][5], KMS keys with [imported key
|
8925
|
+
# material][6], or KMS keys in a [custom key store][7]. To perform
|
8926
|
+
# on-demand rotation of a set of related [multi-Region keys][8], invoke
|
8927
|
+
# the on-demand rotation on the primary key.
|
8928
|
+
#
|
8929
|
+
# You cannot initiate on-demand rotation of [Amazon Web Services managed
|
8930
|
+
# KMS keys][9]. KMS always rotates the key material of Amazon Web
|
8931
|
+
# Services managed keys every year. Rotation of [Amazon Web Services
|
8932
|
+
# owned KMS keys][10] is managed by the Amazon Web Services service that
|
8933
|
+
# owns the key.
|
8934
|
+
#
|
8935
|
+
# The KMS key that you use for this operation must be in a compatible
|
8936
|
+
# key state. For details, see [Key states of KMS keys][11] in the *Key
|
8937
|
+
# Management Service Developer Guide*.
|
8938
|
+
#
|
8939
|
+
# **Cross-account use**: No. You cannot perform this operation on a KMS
|
8940
|
+
# key in a different Amazon Web Services account.
|
8941
|
+
#
|
8942
|
+
# **Required permissions**: [kms:RotateKeyOnDemand][12] (key policy)
|
8943
|
+
#
|
8944
|
+
# **Related operations:**
|
8945
|
+
#
|
8946
|
+
# * EnableKeyRotation
|
8947
|
+
#
|
8948
|
+
# * DisableKeyRotation
|
8949
|
+
#
|
8950
|
+
# * GetKeyRotationStatus
|
8951
|
+
#
|
8952
|
+
# * ListKeyRotations
|
8953
|
+
#
|
8954
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
8955
|
+
# model. For more information, see [KMS eventual consistency][13].
|
8956
|
+
#
|
8957
|
+
#
|
8958
|
+
#
|
8959
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html#rotating-keys-on-demand
|
8960
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html#rotating-keys-enable-disable
|
8961
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#symmetric-cmks
|
8962
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
|
8963
|
+
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/hmac.html
|
8964
|
+
# [6]: https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html
|
8965
|
+
# [7]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
|
8966
|
+
# [8]: https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-manage.html#multi-region-rotate
|
8967
|
+
# [9]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk
|
8968
|
+
# [10]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-owned-cmk
|
8969
|
+
# [11]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
8970
|
+
# [12]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
8971
|
+
# [13]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
8972
|
+
#
|
8973
|
+
# @option params [required, String] :key_id
|
8974
|
+
# Identifies a symmetric encryption KMS key. You cannot perform
|
8975
|
+
# on-demand rotation of [asymmetric KMS keys][1], [HMAC KMS keys][2],
|
8976
|
+
# KMS keys with [imported key material][3], or KMS keys in a [custom key
|
8977
|
+
# store][4]. To perform on-demand rotation of a set of related
|
8978
|
+
# [multi-Region keys][5], invoke the on-demand rotation on the primary
|
8979
|
+
# key.
|
8980
|
+
#
|
8981
|
+
# Specify the key ID or key ARN of the KMS key.
|
8982
|
+
#
|
8983
|
+
# For example:
|
8984
|
+
#
|
8985
|
+
# * Key ID: `1234abcd-12ab-34cd-56ef-1234567890ab`
|
8986
|
+
#
|
8987
|
+
# * Key ARN:
|
8988
|
+
# `arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`
|
8989
|
+
#
|
8990
|
+
# To get the key ID and key ARN for a KMS key, use ListKeys or
|
8991
|
+
# DescribeKey.
|
8992
|
+
#
|
8993
|
+
#
|
8994
|
+
#
|
8995
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
|
8996
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/hmac.html
|
8997
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html
|
8998
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
|
8999
|
+
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-manage.html#multi-region-rotate
|
9000
|
+
#
|
9001
|
+
# @return [Types::RotateKeyOnDemandResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
9002
|
+
#
|
9003
|
+
# * {Types::RotateKeyOnDemandResponse#key_id #key_id} => String
|
9004
|
+
#
|
9005
|
+
#
|
9006
|
+
# @example Example: To perform on-demand rotation of key material
|
9007
|
+
#
|
9008
|
+
# # The following example immediately initiates rotation of the key material for the specified KMS key.
|
9009
|
+
#
|
9010
|
+
# resp = client.rotate_key_on_demand({
|
9011
|
+
# key_id: "1234abcd-12ab-34cd-56ef-1234567890ab", # The identifier of the KMS key whose key material you want to initiate on-demand rotation on. You can use the key ID or the Amazon Resource Name (ARN) of the KMS key.
|
9012
|
+
# })
|
9013
|
+
#
|
9014
|
+
# resp.to_h outputs the following:
|
9015
|
+
# {
|
9016
|
+
# key_id: "1234abcd-12ab-34cd-56ef-1234567890ab", # The KMS key that you initiated on-demand rotation on.
|
9017
|
+
# }
|
9018
|
+
#
|
9019
|
+
# @example Request syntax with placeholder values
|
9020
|
+
#
|
9021
|
+
# resp = client.rotate_key_on_demand({
|
9022
|
+
# key_id: "KeyIdType", # required
|
9023
|
+
# })
|
9024
|
+
#
|
9025
|
+
# @example Response structure
|
9026
|
+
#
|
9027
|
+
# resp.key_id #=> String
|
9028
|
+
#
|
9029
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/RotateKeyOnDemand AWS API Documentation
|
9030
|
+
#
|
9031
|
+
# @overload rotate_key_on_demand(params = {})
|
9032
|
+
# @param [Hash] params ({})
|
9033
|
+
def rotate_key_on_demand(params = {}, options = {})
|
9034
|
+
req = build_request(:rotate_key_on_demand, params)
|
9035
|
+
req.send_request(options)
|
9036
|
+
end
|
9037
|
+
|
8197
9038
|
# Schedules the deletion of a KMS key. By default, KMS applies a waiting
|
8198
9039
|
# period of 30 days, but you can specify a waiting period of 7-30 days.
|
8199
9040
|
# When this operation is successful, the key state of the KMS key
|
@@ -8208,9 +9049,8 @@ module Aws::KMS
|
|
8208
9049
|
# Deleting a KMS key is a destructive and potentially dangerous
|
8209
9050
|
# operation. When a KMS key is deleted, all data that was encrypted
|
8210
9051
|
# under the KMS key is unrecoverable. (The only exception is a
|
8211
|
-
# [multi-Region replica
|
8212
|
-
# key
|
8213
|
-
# [asymmetric or HMAC KMS key with imported key
|
9052
|
+
# [multi-Region replica key][1], or an [asymmetric or HMAC KMS key with
|
9053
|
+
# imported key
|
8214
9054
|
# material](kms/latest/developerguide/importing-keys-managing.html#import-delete-key).)
|
8215
9055
|
# To prevent the use of a KMS key without deleting it, use DisableKey.
|
8216
9056
|
#
|
@@ -8256,6 +9096,9 @@ module Aws::KMS
|
|
8256
9096
|
#
|
8257
9097
|
# * DisableKey
|
8258
9098
|
#
|
9099
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
9100
|
+
# model. For more information, see [KMS eventual consistency][7].
|
9101
|
+
#
|
8259
9102
|
#
|
8260
9103
|
#
|
8261
9104
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-delete.html
|
@@ -8264,6 +9107,7 @@ module Aws::KMS
|
|
8264
9107
|
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/delete-xks-key.html
|
8265
9108
|
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/deleting-keys.html
|
8266
9109
|
# [6]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
9110
|
+
# [7]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
8267
9111
|
#
|
8268
9112
|
# @option params [required, String] :key_id
|
8269
9113
|
# The unique identifier of the KMS key to delete.
|
@@ -8403,12 +9247,16 @@ module Aws::KMS
|
|
8403
9247
|
#
|
8404
9248
|
# **Related operations**: Verify
|
8405
9249
|
#
|
9250
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
9251
|
+
# model. For more information, see [KMS eventual consistency][5].
|
9252
|
+
#
|
8406
9253
|
#
|
8407
9254
|
#
|
8408
9255
|
# [1]: https://en.wikipedia.org/wiki/Digital_signature
|
8409
9256
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
|
8410
9257
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
8411
9258
|
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
9259
|
+
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
8412
9260
|
#
|
8413
9261
|
# @option params [required, String] :key_id
|
8414
9262
|
# Identifies an asymmetric KMS key. KMS uses the private key in the
|
@@ -8632,6 +9480,9 @@ module Aws::KMS
|
|
8632
9480
|
#
|
8633
9481
|
# * UntagResource
|
8634
9482
|
#
|
9483
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
9484
|
+
# model. For more information, see [KMS eventual consistency][11].
|
9485
|
+
#
|
8635
9486
|
#
|
8636
9487
|
#
|
8637
9488
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk
|
@@ -8644,6 +9495,7 @@ module Aws::KMS
|
|
8644
9495
|
# [8]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
|
8645
9496
|
# [9]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
8646
9497
|
# [10]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
9498
|
+
# [11]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
8647
9499
|
#
|
8648
9500
|
# @option params [required, String] :key_id
|
8649
9501
|
# Identifies a customer managed key in the account and Region.
|
@@ -8748,6 +9600,9 @@ module Aws::KMS
|
|
8748
9600
|
#
|
8749
9601
|
# * TagResource
|
8750
9602
|
#
|
9603
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
9604
|
+
# model. For more information, see [KMS eventual consistency][7].
|
9605
|
+
#
|
8751
9606
|
#
|
8752
9607
|
#
|
8753
9608
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk
|
@@ -8756,6 +9611,7 @@ module Aws::KMS
|
|
8756
9611
|
# [4]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
|
8757
9612
|
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
8758
9613
|
# [6]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
9614
|
+
# [7]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
8759
9615
|
#
|
8760
9616
|
# @option params [required, String] :key_id
|
8761
9617
|
# Identifies the KMS key from which you are removing tags.
|
@@ -8859,12 +9715,16 @@ module Aws::KMS
|
|
8859
9715
|
#
|
8860
9716
|
# * ListAliases
|
8861
9717
|
#
|
9718
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
9719
|
+
# model. For more information, see [KMS eventual consistency][5].
|
9720
|
+
#
|
8862
9721
|
#
|
8863
9722
|
#
|
8864
9723
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/abac.html
|
8865
9724
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
8866
9725
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
8867
9726
|
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-alias.html#alias-access
|
9727
|
+
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
8868
9728
|
#
|
8869
9729
|
# @option params [required, String] :alias_name
|
8870
9730
|
# Identifies the alias that is changing its KMS key. This value must
|
@@ -9030,10 +9890,14 @@ module Aws::KMS
|
|
9030
9890
|
#
|
9031
9891
|
# * DisconnectCustomKeyStore
|
9032
9892
|
#
|
9893
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
9894
|
+
# model. For more information, see [KMS eventual consistency][3].
|
9895
|
+
#
|
9033
9896
|
#
|
9034
9897
|
#
|
9035
9898
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
|
9036
9899
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
9900
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
9037
9901
|
#
|
9038
9902
|
# @option params [required, String] :custom_key_store_id
|
9039
9903
|
# Identifies the custom key store that you want to update. Enter the ID
|
@@ -9304,10 +10168,14 @@ module Aws::KMS
|
|
9304
10168
|
#
|
9305
10169
|
# * DescribeKey
|
9306
10170
|
#
|
10171
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
10172
|
+
# model. For more information, see [KMS eventual consistency][3].
|
10173
|
+
#
|
9307
10174
|
#
|
9308
10175
|
#
|
9309
10176
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
9310
10177
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
10178
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
9311
10179
|
#
|
9312
10180
|
# @option params [required, String] :key_id
|
9313
10181
|
# Updates the description of the specified KMS key.
|
@@ -9431,6 +10299,9 @@ module Aws::KMS
|
|
9431
10299
|
#
|
9432
10300
|
# * ReplicateKey
|
9433
10301
|
#
|
10302
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
10303
|
+
# model. For more information, see [KMS eventual consistency][10].
|
10304
|
+
#
|
9434
10305
|
#
|
9435
10306
|
#
|
9436
10307
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-manage.html#multi-region-update
|
@@ -9442,6 +10313,7 @@ module Aws::KMS
|
|
9442
10313
|
# [7]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html
|
9443
10314
|
# [8]: https://docs.aws.amazon.com/kms/latest/APIReference/API_ScheduleKeyDeletion.html
|
9444
10315
|
# [9]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
10316
|
+
# [10]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
9445
10317
|
#
|
9446
10318
|
# @option params [required, String] :key_id
|
9447
10319
|
# Identifies the current primary key. When the operation completes, this
|
@@ -9550,12 +10422,16 @@ module Aws::KMS
|
|
9550
10422
|
#
|
9551
10423
|
# **Related operations**: Sign
|
9552
10424
|
#
|
10425
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
10426
|
+
# model. For more information, see [KMS eventual consistency][5].
|
10427
|
+
#
|
9553
10428
|
#
|
9554
10429
|
#
|
9555
10430
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
|
9556
10431
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/asymmetric-key-specs.html#key-spec-sm-offline-verification
|
9557
10432
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
9558
10433
|
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
10434
|
+
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
9559
10435
|
#
|
9560
10436
|
# @option params [required, String] :key_id
|
9561
10437
|
# Identifies the asymmetric KMS key that will be used to verify the
|
@@ -9767,12 +10643,16 @@ module Aws::KMS
|
|
9767
10643
|
#
|
9768
10644
|
# **Related operations**: GenerateMac
|
9769
10645
|
#
|
10646
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
10647
|
+
# model. For more information, see [KMS eventual consistency][5].
|
10648
|
+
#
|
9770
10649
|
#
|
9771
10650
|
#
|
9772
10651
|
# [1]: https://datatracker.ietf.org/doc/html/rfc2104
|
9773
10652
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/hmac.html
|
9774
10653
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
9775
10654
|
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
10655
|
+
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
9776
10656
|
#
|
9777
10657
|
# @option params [required, String, StringIO, File] :message
|
9778
10658
|
# The message that will be used in the verification. Enter the same
|
@@ -9881,14 +10761,19 @@ module Aws::KMS
|
|
9881
10761
|
# @api private
|
9882
10762
|
def build_request(operation_name, params = {})
|
9883
10763
|
handlers = @handlers.for(operation_name)
|
10764
|
+
tracer = config.telemetry_provider.tracer_provider.tracer(
|
10765
|
+
Aws::Telemetry.module_to_tracer_name('Aws::KMS')
|
10766
|
+
)
|
9884
10767
|
context = Seahorse::Client::RequestContext.new(
|
9885
10768
|
operation_name: operation_name,
|
9886
10769
|
operation: config.api.operation(operation_name),
|
9887
10770
|
client: self,
|
9888
10771
|
params: params,
|
9889
|
-
config: config
|
10772
|
+
config: config,
|
10773
|
+
tracer: tracer
|
10774
|
+
)
|
9890
10775
|
context[:gem_name] = 'aws-sdk-kms'
|
9891
|
-
context[:gem_version] = '1.
|
10776
|
+
context[:gem_version] = '1.96.0'
|
9892
10777
|
Seahorse::Client::Request.new(handlers, context)
|
9893
10778
|
end
|
9894
10779
|
|