aws-sdk-kms 1.29.0 → 1.34.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/lib/aws-sdk-kms.rb +7 -4
- data/lib/aws-sdk-kms/client.rb +243 -141
- data/lib/aws-sdk-kms/client_api.rb +3 -0
- data/lib/aws-sdk-kms/errors.rb +55 -33
- data/lib/aws-sdk-kms/resource.rb +1 -0
- data/lib/aws-sdk-kms/types.rb +165 -100
- metadata +5 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 6ec2a5d20b0ad0b2c10596f9cf98fbefa9eec505bc2eec28e4e27a9c3976e123
|
4
|
+
data.tar.gz: 5d5d45fa3fef35b31d3f8f8f872cc6666647d700d4e4d63af7e4b891c58facd8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9d735492c3254f205840b33af1619b46aa6fd23d63cf44e4008d30241d7a4b108482eb0e42b7e3e4666ee59c0b22f0b5274542273e30c3693947650fc4058c64
|
7
|
+
data.tar.gz: b69a346db9becde10406e071700935106090f9aed650589f22e8351aaf77b684516ab538164ca0a05a3849d3db2f4cee46a9cbe48d62585e5091281f1fa4ffee
|
data/lib/aws-sdk-kms.rb
CHANGED
@@ -24,17 +24,20 @@ require_relative 'aws-sdk-kms/customizations'
|
|
24
24
|
# methods each accept a hash of request parameters and return a response
|
25
25
|
# structure.
|
26
26
|
#
|
27
|
+
# kms = Aws::KMS::Client.new
|
28
|
+
# resp = kms.cancel_key_deletion(params)
|
29
|
+
#
|
27
30
|
# See {Client} for more information.
|
28
31
|
#
|
29
32
|
# # Errors
|
30
33
|
#
|
31
|
-
# Errors returned from AWS Key Management Service
|
32
|
-
# extend {Errors::ServiceError}.
|
34
|
+
# Errors returned from AWS Key Management Service are defined in the
|
35
|
+
# {Errors} module and all extend {Errors::ServiceError}.
|
33
36
|
#
|
34
37
|
# begin
|
35
38
|
# # do stuff
|
36
39
|
# rescue Aws::KMS::Errors::ServiceError
|
37
|
-
# # rescues all
|
40
|
+
# # rescues all AWS Key Management Service API errors
|
38
41
|
# end
|
39
42
|
#
|
40
43
|
# See {Errors} for more information.
|
@@ -42,6 +45,6 @@ require_relative 'aws-sdk-kms/customizations'
|
|
42
45
|
# @service
|
43
46
|
module Aws::KMS
|
44
47
|
|
45
|
-
GEM_VERSION = '1.
|
48
|
+
GEM_VERSION = '1.34.1'
|
46
49
|
|
47
50
|
end
|
data/lib/aws-sdk-kms/client.rb
CHANGED
@@ -24,12 +24,25 @@ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
|
|
24
24
|
require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
|
25
25
|
require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
|
26
26
|
require 'aws-sdk-core/plugins/transfer_encoding.rb'
|
27
|
+
require 'aws-sdk-core/plugins/http_checksum.rb'
|
27
28
|
require 'aws-sdk-core/plugins/signature_v4.rb'
|
28
29
|
require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
|
29
30
|
|
30
31
|
Aws::Plugins::GlobalConfiguration.add_identifier(:kms)
|
31
32
|
|
32
33
|
module Aws::KMS
|
34
|
+
# An API client for KMS. To construct a client, you need to configure a `:region` and `:credentials`.
|
35
|
+
#
|
36
|
+
# client = Aws::KMS::Client.new(
|
37
|
+
# region: region_name,
|
38
|
+
# credentials: credentials,
|
39
|
+
# # ...
|
40
|
+
# )
|
41
|
+
#
|
42
|
+
# For details on configuring region and credentials see
|
43
|
+
# the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
|
44
|
+
#
|
45
|
+
# See {#initialize} for a full list of supported configuration options.
|
33
46
|
class Client < Seahorse::Client::Base
|
34
47
|
|
35
48
|
include Aws::ClientStubs
|
@@ -57,6 +70,7 @@ module Aws::KMS
|
|
57
70
|
add_plugin(Aws::Plugins::ClientMetricsPlugin)
|
58
71
|
add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
|
59
72
|
add_plugin(Aws::Plugins::TransferEncoding)
|
73
|
+
add_plugin(Aws::Plugins::HttpChecksum)
|
60
74
|
add_plugin(Aws::Plugins::SignatureV4)
|
61
75
|
add_plugin(Aws::Plugins::Protocols::JsonRpc)
|
62
76
|
|
@@ -93,7 +107,7 @@ module Aws::KMS
|
|
93
107
|
# @option options [required, String] :region
|
94
108
|
# The AWS region to connect to. The configured `:region` is
|
95
109
|
# used to determine the service `:endpoint`. When not passed,
|
96
|
-
# a default `:region` is
|
110
|
+
# a default `:region` is searched for in the following locations:
|
97
111
|
#
|
98
112
|
# * `Aws.config[:region]`
|
99
113
|
# * `ENV['AWS_REGION']`
|
@@ -108,6 +122,12 @@ module Aws::KMS
|
|
108
122
|
# When set to `true`, a thread polling for endpoints will be running in
|
109
123
|
# the background every 60 secs (default). Defaults to `false`.
|
110
124
|
#
|
125
|
+
# @option options [Boolean] :adaptive_retry_wait_to_fill (true)
|
126
|
+
# Used only in `adaptive` retry mode. When true, the request will sleep
|
127
|
+
# until there is sufficent client side capacity to retry the request.
|
128
|
+
# When false, the request will raise a `RetryCapacityNotAvailableError` and will
|
129
|
+
# not retry instead of sleeping.
|
130
|
+
#
|
111
131
|
# @option options [Boolean] :client_side_monitoring (false)
|
112
132
|
# When `true`, client-side metrics will be collected for all API requests from
|
113
133
|
# this client.
|
@@ -132,6 +152,10 @@ module Aws::KMS
|
|
132
152
|
# When `true`, an attempt is made to coerce request parameters into
|
133
153
|
# the required types.
|
134
154
|
#
|
155
|
+
# @option options [Boolean] :correct_clock_skew (true)
|
156
|
+
# Used only in `standard` and adaptive retry modes. Specifies whether to apply
|
157
|
+
# a clock skew correction and retry requests with skewed client clocks.
|
158
|
+
#
|
135
159
|
# @option options [Boolean] :disable_host_prefix_injection (false)
|
136
160
|
# Set to true to disable SDK automatically adding host prefix
|
137
161
|
# to default service endpoint when available.
|
@@ -139,7 +163,7 @@ module Aws::KMS
|
|
139
163
|
# @option options [String] :endpoint
|
140
164
|
# The client endpoint is normally constructed from the `:region`
|
141
165
|
# option. You should only configure an `:endpoint` when connecting
|
142
|
-
# to test endpoints. This should be
|
166
|
+
# to test or custom endpoints. This should be a valid HTTP(S) URI.
|
143
167
|
#
|
144
168
|
# @option options [Integer] :endpoint_cache_max_entries (1000)
|
145
169
|
# Used for the maximum size limit of the LRU cache storing endpoints data
|
@@ -154,7 +178,7 @@ module Aws::KMS
|
|
154
178
|
# requests fetching endpoints information. Defaults to 60 sec.
|
155
179
|
#
|
156
180
|
# @option options [Boolean] :endpoint_discovery (false)
|
157
|
-
# When set to `true`, endpoint discovery will be enabled for operations when available.
|
181
|
+
# When set to `true`, endpoint discovery will be enabled for operations when available.
|
158
182
|
#
|
159
183
|
# @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
|
160
184
|
# The log formatter.
|
@@ -166,15 +190,29 @@ module Aws::KMS
|
|
166
190
|
# The Logger instance to send log messages to. If this option
|
167
191
|
# is not set, logging will be disabled.
|
168
192
|
#
|
193
|
+
# @option options [Integer] :max_attempts (3)
|
194
|
+
# An integer representing the maximum number attempts that will be made for
|
195
|
+
# a single request, including the initial attempt. For example,
|
196
|
+
# setting this value to 5 will result in a request being retried up to
|
197
|
+
# 4 times. Used in `standard` and `adaptive` retry modes.
|
198
|
+
#
|
169
199
|
# @option options [String] :profile ("default")
|
170
200
|
# Used when loading credentials from the shared credentials file
|
171
201
|
# at HOME/.aws/credentials. When not specified, 'default' is used.
|
172
202
|
#
|
203
|
+
# @option options [Proc] :retry_backoff
|
204
|
+
# A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
|
205
|
+
# This option is only used in the `legacy` retry mode.
|
206
|
+
#
|
173
207
|
# @option options [Float] :retry_base_delay (0.3)
|
174
|
-
# The base delay in seconds used by the default backoff function.
|
208
|
+
# The base delay in seconds used by the default backoff function. This option
|
209
|
+
# is only used in the `legacy` retry mode.
|
175
210
|
#
|
176
211
|
# @option options [Symbol] :retry_jitter (:none)
|
177
|
-
# A delay randomiser function used by the default backoff function.
|
212
|
+
# A delay randomiser function used by the default backoff function.
|
213
|
+
# Some predefined functions can be referenced by name - :none, :equal, :full,
|
214
|
+
# otherwise a Proc that takes and returns a number. This option is only used
|
215
|
+
# in the `legacy` retry mode.
|
178
216
|
#
|
179
217
|
# @see https://www.awsarchitectureblog.com/2015/03/backoff.html
|
180
218
|
#
|
@@ -182,11 +220,30 @@ module Aws::KMS
|
|
182
220
|
# The maximum number of times to retry failed requests. Only
|
183
221
|
# ~ 500 level server errors and certain ~ 400 level client errors
|
184
222
|
# are retried. Generally, these are throttling errors, data
|
185
|
-
# checksum errors, networking errors, timeout errors
|
186
|
-
# errors from expired credentials.
|
223
|
+
# checksum errors, networking errors, timeout errors, auth errors,
|
224
|
+
# endpoint discovery, and errors from expired credentials.
|
225
|
+
# This option is only used in the `legacy` retry mode.
|
187
226
|
#
|
188
227
|
# @option options [Integer] :retry_max_delay (0)
|
189
|
-
# The maximum number of seconds to delay between retries (0 for no limit)
|
228
|
+
# The maximum number of seconds to delay between retries (0 for no limit)
|
229
|
+
# used by the default backoff function. This option is only used in the
|
230
|
+
# `legacy` retry mode.
|
231
|
+
#
|
232
|
+
# @option options [String] :retry_mode ("legacy")
|
233
|
+
# Specifies which retry algorithm to use. Values are:
|
234
|
+
#
|
235
|
+
# * `legacy` - The pre-existing retry behavior. This is default value if
|
236
|
+
# no retry mode is provided.
|
237
|
+
#
|
238
|
+
# * `standard` - A standardized set of retry rules across the AWS SDKs.
|
239
|
+
# This includes support for retry quotas, which limit the number of
|
240
|
+
# unsuccessful retries a client can make.
|
241
|
+
#
|
242
|
+
# * `adaptive` - An experimental retry mode that includes all the
|
243
|
+
# functionality of `standard` mode along with automatic client side
|
244
|
+
# throttling. This is a provisional mode that may change behavior
|
245
|
+
# in the future.
|
246
|
+
#
|
190
247
|
#
|
191
248
|
# @option options [String] :secret_access_key
|
192
249
|
#
|
@@ -219,16 +276,15 @@ module Aws::KMS
|
|
219
276
|
# requests through. Formatted like 'http://proxy.com:123'.
|
220
277
|
#
|
221
278
|
# @option options [Float] :http_open_timeout (15) The number of
|
222
|
-
# seconds to wait when opening a HTTP session before
|
279
|
+
# seconds to wait when opening a HTTP session before raising a
|
223
280
|
# `Timeout::Error`.
|
224
281
|
#
|
225
282
|
# @option options [Integer] :http_read_timeout (60) The default
|
226
283
|
# number of seconds to wait for response data. This value can
|
227
|
-
# safely be set
|
228
|
-
# per-request on the session yeidled by {#session_for}.
|
284
|
+
# safely be set per-request on the session.
|
229
285
|
#
|
230
286
|
# @option options [Float] :http_idle_timeout (5) The number of
|
231
|
-
# seconds a connection is allowed to sit
|
287
|
+
# seconds a connection is allowed to sit idle before it is
|
232
288
|
# considered stale. Stale connections are closed and removed
|
233
289
|
# from the pool before making a request.
|
234
290
|
#
|
@@ -237,7 +293,7 @@ module Aws::KMS
|
|
237
293
|
# request body. This option has no effect unless the request has
|
238
294
|
# "Expect" header set to "100-continue". Defaults to `nil` which
|
239
295
|
# disables this behaviour. This value can safely be set per
|
240
|
-
# request on the session
|
296
|
+
# request on the session.
|
241
297
|
#
|
242
298
|
# @option options [Boolean] :http_wire_trace (false) When `true`,
|
243
299
|
# HTTP debug output will be sent to the `:logger`.
|
@@ -406,9 +462,9 @@ module Aws::KMS
|
|
406
462
|
end
|
407
463
|
|
408
464
|
# Creates a display name for a customer managed customer master key
|
409
|
-
# (CMK). You can use an alias to identify a CMK in cryptographic
|
410
|
-
# operations, such as Encrypt and GenerateDataKey. You can change
|
411
|
-
# CMK associated with the alias at any time.
|
465
|
+
# (CMK). You can use an alias to identify a CMK in [cryptographic
|
466
|
+
# operations][1], such as Encrypt and GenerateDataKey. You can change
|
467
|
+
# the CMK associated with the alias at any time.
|
412
468
|
#
|
413
469
|
# Aliases are easier to remember than key IDs. They can also help to
|
414
470
|
# simplify your applications. For example, if you use an alias in your
|
@@ -432,8 +488,8 @@ module Aws::KMS
|
|
432
488
|
#
|
433
489
|
# * You can associate an alias with any customer managed CMK in the same
|
434
490
|
# AWS account and Region. However, you do not have permission to
|
435
|
-
# associate an alias with an [AWS managed CMK][
|
436
|
-
# CMK][
|
491
|
+
# associate an alias with an [AWS managed CMK][2] or an [AWS owned
|
492
|
+
# CMK][3].
|
437
493
|
#
|
438
494
|
# * To change the CMK associated with an alias, use the UpdateAlias
|
439
495
|
# operation. The current CMK and the new CMK must be the same type
|
@@ -445,7 +501,7 @@ module Aws::KMS
|
|
445
501
|
# `alias/ExampleAlias`. It can contain only alphanumeric characters,
|
446
502
|
# forward slashes (/), underscores (\_), and dashes (-). The alias
|
447
503
|
# name cannot begin with `alias/aws/`. The `alias/aws/` prefix is
|
448
|
-
# reserved for [AWS managed CMKs][
|
504
|
+
# reserved for [AWS managed CMKs][2].
|
449
505
|
#
|
450
506
|
# * The alias name must be unique within an AWS Region. However, you can
|
451
507
|
# use the same alias name in multiple Regions of the same AWS account.
|
@@ -456,12 +512,12 @@ module Aws::KMS
|
|
456
512
|
# and then create a new alias with the desired name.
|
457
513
|
#
|
458
514
|
# * You can use an alias name or alias ARN to identify a CMK in AWS KMS
|
459
|
-
# cryptographic operations and in the DescribeKey operation.
|
460
|
-
# you cannot use alias names or alias ARNs in API operations
|
461
|
-
# manage CMKs, such as DisableKey or GetKeyPolicy. For
|
462
|
-
# about the valid CMK identifiers for each AWS KMS API
|
463
|
-
# the descriptions of the `KeyId` parameter in the API
|
464
|
-
# documentation.
|
515
|
+
# [cryptographic operations][1] and in the DescribeKey operation.
|
516
|
+
# However, you cannot use alias names or alias ARNs in API operations
|
517
|
+
# that manage CMKs, such as DisableKey or GetKeyPolicy. For
|
518
|
+
# information about the valid CMK identifiers for each AWS KMS API
|
519
|
+
# operation, see the descriptions of the `KeyId` parameter in the API
|
520
|
+
# operation documentation.
|
465
521
|
#
|
466
522
|
# Because an alias is not a property of a CMK, you can delete and change
|
467
523
|
# the aliases of a CMK without affecting the CMK. Also, aliases do not
|
@@ -471,13 +527,14 @@ module Aws::KMS
|
|
471
527
|
#
|
472
528
|
# The CMK that you use for this operation must be in a compatible key
|
473
529
|
# state. For details, see [How Key State Affects Use of a Customer
|
474
|
-
# Master Key][
|
530
|
+
# Master Key][4] in the *AWS Key Management Service Developer Guide*.
|
475
531
|
#
|
476
532
|
#
|
477
533
|
#
|
478
|
-
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#
|
479
|
-
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-
|
480
|
-
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/
|
534
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations
|
535
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk
|
536
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-owned-cmk
|
537
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
481
538
|
#
|
482
539
|
# @option params [required, String] :alias_name
|
483
540
|
# Specifies the alias name. This value must begin with `alias/` followed
|
@@ -623,8 +680,8 @@ module Aws::KMS
|
|
623
680
|
# grant are met. When setting permissions, grants are an alternative to
|
624
681
|
# key policies.
|
625
682
|
#
|
626
|
-
# To create a grant that allows a cryptographic operation only when
|
627
|
-
# request includes a particular [encryption context][
|
683
|
+
# To create a grant that allows a [cryptographic operation][1] only when
|
684
|
+
# the request includes a particular [encryption context][2], use the
|
628
685
|
# `Constraints` parameter. For details, see GrantConstraints.
|
629
686
|
#
|
630
687
|
# You can create grants on symmetric and asymmetric CMKs. However, if
|
@@ -639,9 +696,9 @@ module Aws::KMS
|
|
639
696
|
#
|
640
697
|
# * Grants for asymmetric CMKs cannot allow operations that are not
|
641
698
|
# supported for asymmetric CMKs, including operations that [generate
|
642
|
-
# data keys][
|
643
|
-
# [automatic key rotation][
|
644
|
-
# [custom key stores][
|
699
|
+
# data keys][3] or [data key pairs][4], or operations related to
|
700
|
+
# [automatic key rotation][5], [imported key material][6], or CMKs in
|
701
|
+
# [custom key stores][7].
|
645
702
|
#
|
646
703
|
# * Grants for asymmetric CMKs with a `KeyUsage` of `ENCRYPT_DECRYPT`
|
647
704
|
# cannot allow the Sign or Verify operations. Grants for asymmetric
|
@@ -653,29 +710,30 @@ module Aws::KMS
|
|
653
710
|
# asymmetric CMKs.
|
654
711
|
#
|
655
712
|
# For information about symmetric and asymmetric CMKs, see [Using
|
656
|
-
# Symmetric and Asymmetric CMKs][
|
713
|
+
# Symmetric and Asymmetric CMKs][8] in the *AWS Key Management Service
|
657
714
|
# Developer Guide*.
|
658
715
|
#
|
659
716
|
# To perform this operation on a CMK in a different AWS account, specify
|
660
717
|
# the key ARN in the value of the `KeyId` parameter. For more
|
661
|
-
# information about grants, see [Grants][
|
718
|
+
# information about grants, see [Grants][9] in the <i> <i>AWS Key
|
662
719
|
# Management Service Developer Guide</i> </i>.
|
663
720
|
#
|
664
721
|
# The CMK that you use for this operation must be in a compatible key
|
665
722
|
# state. For details, see [How Key State Affects Use of a Customer
|
666
|
-
# Master Key][
|
723
|
+
# Master Key][10] in the *AWS Key Management Service Developer Guide*.
|
667
724
|
#
|
668
725
|
#
|
669
726
|
#
|
670
|
-
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#
|
671
|
-
# [2]: https://docs.aws.amazon.com/kms/latest/
|
672
|
-
# [3]: https://docs.aws.amazon.com/kms/latest/APIReference/
|
673
|
-
# [4]: https://docs.aws.amazon.com/kms/latest/
|
674
|
-
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/
|
675
|
-
# [6]: https://docs.aws.amazon.com/kms/latest/developerguide/
|
676
|
-
# [7]: https://docs.aws.amazon.com/kms/latest/developerguide/
|
677
|
-
# [8]: https://docs.aws.amazon.com/kms/latest/developerguide/
|
678
|
-
# [9]: https://docs.aws.amazon.com/kms/latest/developerguide/
|
727
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations
|
728
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context
|
729
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey
|
730
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKeyPair
|
731
|
+
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html
|
732
|
+
# [6]: https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html
|
733
|
+
# [7]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
|
734
|
+
# [8]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
|
735
|
+
# [9]: https://docs.aws.amazon.com/kms/latest/developerguide/grants.html
|
736
|
+
# [10]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
679
737
|
#
|
680
738
|
# @option params [required, String] :key_id
|
681
739
|
# The unique identifier for the customer master key (CMK) that the grant
|
@@ -729,15 +787,16 @@ module Aws::KMS
|
|
729
787
|
# A list of operations that the grant permits.
|
730
788
|
#
|
731
789
|
# @option params [Types::GrantConstraints] :constraints
|
732
|
-
# Allows a cryptographic operation only when the encryption context
|
790
|
+
# Allows a [cryptographic operation][1] only when the encryption context
|
733
791
|
# matches or includes the encryption context specified in this
|
734
792
|
# structure. For more information about encryption context, see
|
735
|
-
# [Encryption Context][
|
793
|
+
# [Encryption Context][2] in the <i> <i>AWS Key Management Service
|
736
794
|
# Developer Guide</i> </i>.
|
737
795
|
#
|
738
796
|
#
|
739
797
|
#
|
740
|
-
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#
|
798
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations
|
799
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context
|
741
800
|
#
|
742
801
|
# @option params [Array<String>] :grant_tokens
|
743
802
|
# A list of grant tokens.
|
@@ -952,10 +1011,10 @@ module Aws::KMS
|
|
952
1011
|
# for a task.
|
953
1012
|
#
|
954
1013
|
# @option params [String] :key_usage
|
955
|
-
# Determines the cryptographic operations for which you can use the
|
956
|
-
# The default value is `ENCRYPT_DECRYPT`. This parameter is
|
957
|
-
# only for asymmetric CMKs. You can't change the `KeyUsage`
|
958
|
-
# the CMK is created.
|
1014
|
+
# Determines the [cryptographic operations][1] for which you can use the
|
1015
|
+
# CMK. The default value is `ENCRYPT_DECRYPT`. This parameter is
|
1016
|
+
# required only for asymmetric CMKs. You can't change the `KeyUsage`
|
1017
|
+
# value after the CMK is created.
|
959
1018
|
#
|
960
1019
|
# Select only one valid value.
|
961
1020
|
#
|
@@ -966,6 +1025,10 @@ module Aws::KMS
|
|
966
1025
|
#
|
967
1026
|
# * For asymmetric CMKs with ECC key material, specify `SIGN_VERIFY`.
|
968
1027
|
#
|
1028
|
+
#
|
1029
|
+
#
|
1030
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations
|
1031
|
+
#
|
969
1032
|
# @option params [String] :customer_master_key_spec
|
970
1033
|
# Specifies the type of CMK to create. The default value,
|
971
1034
|
# `SYMMETRIC_DEFAULT`, creates a CMK with a 256-bit symmetric key for
|
@@ -1256,9 +1319,9 @@ module Aws::KMS
|
|
1256
1319
|
#
|
1257
1320
|
# @option params [Hash<String,String>] :encryption_context
|
1258
1321
|
# Specifies the encryption context to use when decrypting the data. An
|
1259
|
-
# encryption context is valid only for cryptographic operations
|
1260
|
-
# symmetric CMK. The standard asymmetric encryption algorithms
|
1261
|
-
# KMS uses do not support an encryption context.
|
1322
|
+
# encryption context is valid only for [cryptographic operations][1]
|
1323
|
+
# with a symmetric CMK. The standard asymmetric encryption algorithms
|
1324
|
+
# that AWS KMS uses do not support an encryption context.
|
1262
1325
|
#
|
1263
1326
|
# An *encryption context* is a collection of non-secret key-value pairs
|
1264
1327
|
# that represents additional authenticated data. When you use an
|
@@ -1267,12 +1330,13 @@ module Aws::KMS
|
|
1267
1330
|
# encryption context is optional when encrypting with a symmetric CMK,
|
1268
1331
|
# but it is highly recommended.
|
1269
1332
|
#
|
1270
|
-
# For more information, see [Encryption Context][
|
1333
|
+
# For more information, see [Encryption Context][2] in the *AWS Key
|
1271
1334
|
# Management Service Developer Guide*.
|
1272
1335
|
#
|
1273
1336
|
#
|
1274
1337
|
#
|
1275
|
-
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#
|
1338
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations
|
1339
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context
|
1276
1340
|
#
|
1277
1341
|
# @option params [Array<String>] :grant_tokens
|
1278
1342
|
# A list of grant tokens.
|
@@ -1425,13 +1489,13 @@ module Aws::KMS
|
|
1425
1489
|
# The custom key store that you delete cannot contain any AWS KMS
|
1426
1490
|
# [customer master keys (CMKs)][2]. Before deleting the key store,
|
1427
1491
|
# verify that you will never need to use any of the CMKs in the key
|
1428
|
-
# store for any cryptographic operations. Then, use
|
1429
|
-
# to delete the AWS KMS customer master keys (CMKs)
|
1430
|
-
# When the scheduled waiting period expires, the
|
1431
|
-
# operation deletes the CMKs. Then it makes a best
|
1432
|
-
# key material from the associated cluster.
|
1433
|
-
# manually [delete the orphaned key
|
1434
|
-
# its backups.
|
1492
|
+
# store for any [cryptographic operations][3]. Then, use
|
1493
|
+
# ScheduleKeyDeletion to delete the AWS KMS customer master keys (CMKs)
|
1494
|
+
# from the key store. When the scheduled waiting period expires, the
|
1495
|
+
# `ScheduleKeyDeletion` operation deletes the CMKs. Then it makes a best
|
1496
|
+
# effort to delete the key material from the associated cluster.
|
1497
|
+
# However, you might need to manually [delete the orphaned key
|
1498
|
+
# material][4] from the cluster and its backups.
|
1435
1499
|
#
|
1436
1500
|
# After all CMKs are deleted from AWS KMS, use DisconnectCustomKeyStore
|
1437
1501
|
# to disconnect the key store from AWS KMS. Then, you can delete the
|
@@ -1454,7 +1518,8 @@ module Aws::KMS
|
|
1454
1518
|
#
|
1455
1519
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
|
1456
1520
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#master_keys
|
1457
|
-
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/
|
1521
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations
|
1522
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/fix-keystore.html#fix-keystore-orphaned-key
|
1458
1523
|
#
|
1459
1524
|
# @option params [required, String] :custom_key_store_id
|
1460
1525
|
# Enter the ID of the custom key store you want to delete. To find the
|
@@ -1794,20 +1859,21 @@ module Aws::KMS
|
|
1794
1859
|
end
|
1795
1860
|
|
1796
1861
|
# Sets the state of a customer master key (CMK) to disabled, thereby
|
1797
|
-
# preventing its use for cryptographic operations. You cannot
|
1798
|
-
# this operation on a CMK in a different AWS account.
|
1862
|
+
# preventing its use for [cryptographic operations][1]. You cannot
|
1863
|
+
# perform this operation on a CMK in a different AWS account.
|
1799
1864
|
#
|
1800
1865
|
# For more information about how key state affects the use of a CMK, see
|
1801
|
-
# [How Key State Affects the Use of a Customer Master Key][
|
1866
|
+
# [How Key State Affects the Use of a Customer Master Key][2] in the <i>
|
1802
1867
|
# <i>AWS Key Management Service Developer Guide</i> </i>.
|
1803
1868
|
#
|
1804
1869
|
# The CMK that you use for this operation must be in a compatible key
|
1805
1870
|
# state. For details, see [How Key State Affects Use of a Customer
|
1806
|
-
# Master Key][
|
1871
|
+
# Master Key][2] in the *AWS Key Management Service Developer Guide*.
|
1807
1872
|
#
|
1808
1873
|
#
|
1809
1874
|
#
|
1810
|
-
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/
|
1875
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations
|
1876
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
1811
1877
|
#
|
1812
1878
|
# @option params [required, String] :key_id
|
1813
1879
|
# A unique identifier for the customer master key (CMK).
|
@@ -1922,8 +1988,8 @@ module Aws::KMS
|
|
1922
1988
|
#
|
1923
1989
|
# <note markdown="1"> While a custom key store is disconnected, all attempts to create
|
1924
1990
|
# customer master keys (CMKs) in the custom key store or to use existing
|
1925
|
-
# CMKs in cryptographic operations will fail. This action can
|
1926
|
-
# users from storing and accessing sensitive data.
|
1991
|
+
# CMKs in [cryptographic operations][2] will fail. This action can
|
1992
|
+
# prevent users from storing and accessing sensitive data.
|
1927
1993
|
#
|
1928
1994
|
# </note>
|
1929
1995
|
#
|
@@ -1943,6 +2009,7 @@ module Aws::KMS
|
|
1943
2009
|
#
|
1944
2010
|
#
|
1945
2011
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
|
2012
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations
|
1946
2013
|
#
|
1947
2014
|
# @option params [required, String] :custom_key_store_id
|
1948
2015
|
# Enter the ID of the custom key store you want to disconnect. To find
|
@@ -1967,16 +2034,17 @@ module Aws::KMS
|
|
1967
2034
|
end
|
1968
2035
|
|
1969
2036
|
# Sets the key state of a customer master key (CMK) to enabled. This
|
1970
|
-
# allows you to use the CMK for cryptographic operations. You
|
1971
|
-
# perform this operation on a CMK in a different AWS account.
|
2037
|
+
# allows you to use the CMK for [cryptographic operations][1]. You
|
2038
|
+
# cannot perform this operation on a CMK in a different AWS account.
|
1972
2039
|
#
|
1973
2040
|
# The CMK that you use for this operation must be in a compatible key
|
1974
2041
|
# state. For details, see [How Key State Affects Use of a Customer
|
1975
|
-
# Master Key][
|
2042
|
+
# Master Key][2] in the *AWS Key Management Service Developer Guide*.
|
1976
2043
|
#
|
1977
2044
|
#
|
1978
2045
|
#
|
1979
|
-
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/
|
2046
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations
|
2047
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
1980
2048
|
#
|
1981
2049
|
# @option params [required, String] :key_id
|
1982
2050
|
# A unique identifier for the customer master key (CMK).
|
@@ -2088,11 +2156,13 @@ module Aws::KMS
|
|
2088
2156
|
# identifier or database password, or other sensitive information.
|
2089
2157
|
#
|
2090
2158
|
# * You can use the `Encrypt` operation to move encrypted data from one
|
2091
|
-
# AWS
|
2092
|
-
# use the plaintext key to encrypt
|
2093
|
-
#
|
2094
|
-
#
|
2095
|
-
#
|
2159
|
+
# AWS Region to another. For example, in Region A, generate a data key
|
2160
|
+
# and use the plaintext key to encrypt your data. Then, in Region A,
|
2161
|
+
# use the `Encrypt` operation to encrypt the plaintext data key under
|
2162
|
+
# a CMK in Region B. Now, you can move the encrypted data and the
|
2163
|
+
# encrypted data key to Region B. When necessary, you can decrypt the
|
2164
|
+
# encrypted data key and the encrypted data entirely within in Region
|
2165
|
+
# B.
|
2096
2166
|
#
|
2097
2167
|
# You don't need to use the `Encrypt` operation to encrypt a data key.
|
2098
2168
|
# The GenerateDataKey and GenerateDataKeyPair operations return a
|
@@ -2192,9 +2262,10 @@ module Aws::KMS
|
|
2192
2262
|
#
|
2193
2263
|
# @option params [Hash<String,String>] :encryption_context
|
2194
2264
|
# Specifies the encryption context that will be used to encrypt the
|
2195
|
-
# data. An encryption context is valid only for cryptographic
|
2196
|
-
# with a symmetric CMK. The standard asymmetric
|
2197
|
-
# that AWS KMS uses do not support an encryption
|
2265
|
+
# data. An encryption context is valid only for [cryptographic
|
2266
|
+
# operations][1] with a symmetric CMK. The standard asymmetric
|
2267
|
+
# encryption algorithms that AWS KMS uses do not support an encryption
|
2268
|
+
# context.
|
2198
2269
|
#
|
2199
2270
|
# An *encryption context* is a collection of non-secret key-value pairs
|
2200
2271
|
# that represents additional authenticated data. When you use an
|
@@ -2203,12 +2274,13 @@ module Aws::KMS
|
|
2203
2274
|
# encryption context is optional when encrypting with a symmetric CMK,
|
2204
2275
|
# but it is highly recommended.
|
2205
2276
|
#
|
2206
|
-
# For more information, see [Encryption Context][
|
2277
|
+
# For more information, see [Encryption Context][2] in the *AWS Key
|
2207
2278
|
# Management Service Developer Guide*.
|
2208
2279
|
#
|
2209
2280
|
#
|
2210
2281
|
#
|
2211
|
-
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#
|
2282
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations
|
2283
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context
|
2212
2284
|
#
|
2213
2285
|
# @option params [Array<String>] :grant_tokens
|
2214
2286
|
# A list of grant tokens.
|
@@ -2279,28 +2351,22 @@ module Aws::KMS
|
|
2279
2351
|
req.send_request(options)
|
2280
2352
|
end
|
2281
2353
|
|
2282
|
-
# Generates a unique symmetric data key
|
2283
|
-
# plaintext copy of the data key and a copy that is
|
2284
|
-
# customer master key (CMK) that you specify. You can
|
2285
|
-
# key to encrypt your data outside of AWS KMS and
|
2286
|
-
# data key with the encrypted data.
|
2354
|
+
# Generates a unique symmetric data key for client-side encryption. This
|
2355
|
+
# operation returns a plaintext copy of the data key and a copy that is
|
2356
|
+
# encrypted under a customer master key (CMK) that you specify. You can
|
2357
|
+
# use the plaintext key to encrypt your data outside of AWS KMS and
|
2358
|
+
# store the encrypted data key with the encrypted data.
|
2287
2359
|
#
|
2288
2360
|
# `GenerateDataKey` returns a unique data key for each request. The
|
2289
|
-
# bytes in the key are not related to the caller or CMK
|
2290
|
-
# encrypt the data key.
|
2361
|
+
# bytes in the plaintext key are not related to the caller or the CMK.
|
2291
2362
|
#
|
2292
2363
|
# To generate a data key, specify the symmetric CMK that will be used to
|
2293
2364
|
# encrypt the data key. You cannot use an asymmetric CMK to generate
|
2294
2365
|
# data keys. To get the type of your CMK, use the DescribeKey operation.
|
2295
|
-
#
|
2296
2366
|
# You must also specify the length of the data key. Use either the
|
2297
2367
|
# `KeySpec` or `NumberOfBytes` parameters (but not both). For 128-bit
|
2298
2368
|
# and 256-bit data keys, use the `KeySpec` parameter.
|
2299
2369
|
#
|
2300
|
-
# If the operation succeeds, the plaintext copy of the data key is in
|
2301
|
-
# the `Plaintext` field of the response, and the encrypted copy of the
|
2302
|
-
# data key in the `CiphertextBlob` field.
|
2303
|
-
#
|
2304
2370
|
# To get only an encrypted copy of the data key, use
|
2305
2371
|
# GenerateDataKeyWithoutPlaintext. To generate an asymmetric data key
|
2306
2372
|
# pair, use the GenerateDataKeyPair or
|
@@ -2311,7 +2377,7 @@ module Aws::KMS
|
|
2311
2377
|
# to the encryption operation. If you specify an `EncryptionContext`,
|
2312
2378
|
# you must specify the same encryption context (a case-sensitive exact
|
2313
2379
|
# match) when decrypting the encrypted data key. Otherwise, the request
|
2314
|
-
# to decrypt fails with an InvalidCiphertextException
|
2380
|
+
# to decrypt fails with an `InvalidCiphertextException`. For more
|
2315
2381
|
# information, see [Encryption Context][1] in the *AWS Key Management
|
2316
2382
|
# Service Developer Guide*.
|
2317
2383
|
#
|
@@ -2319,30 +2385,40 @@ module Aws::KMS
|
|
2319
2385
|
# state. For details, see [How Key State Affects Use of a Customer
|
2320
2386
|
# Master Key][2] in the *AWS Key Management Service Developer Guide*.
|
2321
2387
|
#
|
2388
|
+
# **How to use your data key**
|
2389
|
+
#
|
2322
2390
|
# We recommend that you use the following pattern to encrypt data
|
2323
|
-
# locally in your application
|
2391
|
+
# locally in your application. You can write your own code or use a
|
2392
|
+
# client-side encryption library, such as the [AWS Encryption SDK][3],
|
2393
|
+
# the [Amazon DynamoDB Encryption Client][4], or [Amazon S3 client-side
|
2394
|
+
# encryption][5] to do these tasks for you.
|
2395
|
+
#
|
2396
|
+
# To encrypt data outside of AWS KMS:
|
2324
2397
|
#
|
2325
|
-
# 1. Use the `GenerateDataKey` operation to get a data
|
2398
|
+
# 1. Use the `GenerateDataKey` operation to get a data key.
|
2326
2399
|
#
|
2327
|
-
# 2. Use the plaintext data key (
|
2328
|
-
#
|
2329
|
-
# data key from memory.
|
2400
|
+
# 2. Use the plaintext data key (in the `Plaintext` field of the
|
2401
|
+
# response) to encrypt your data outside of AWS KMS. Then erase the
|
2402
|
+
# plaintext data key from memory.
|
2330
2403
|
#
|
2331
|
-
# 3. Store the encrypted data key (
|
2332
|
-
#
|
2404
|
+
# 3. Store the encrypted data key (in the `CiphertextBlob` field of the
|
2405
|
+
# response) with the encrypted data.
|
2333
2406
|
#
|
2334
|
-
# To decrypt data
|
2407
|
+
# To decrypt data outside of AWS KMS:
|
2335
2408
|
#
|
2336
2409
|
# 1. Use the Decrypt operation to decrypt the encrypted data key. The
|
2337
2410
|
# operation returns a plaintext copy of the data key.
|
2338
2411
|
#
|
2339
|
-
# 2. Use the plaintext data key to decrypt data
|
2340
|
-
# plaintext data key from memory.
|
2412
|
+
# 2. Use the plaintext data key to decrypt data outside of AWS KMS,
|
2413
|
+
# then erase the plaintext data key from memory.
|
2341
2414
|
#
|
2342
2415
|
#
|
2343
2416
|
#
|
2344
2417
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context
|
2345
2418
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
2419
|
+
# [3]: https://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/
|
2420
|
+
# [4]: https://docs.aws.amazon.com/dynamodb-encryption-client/latest/devguide/
|
2421
|
+
# [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingClientSideEncryption.html
|
2346
2422
|
#
|
2347
2423
|
# @option params [required, String] :key_id
|
2348
2424
|
# Identifies the symmetric CMK that encrypts the data key.
|
@@ -2480,8 +2556,8 @@ module Aws::KMS
|
|
2480
2556
|
#
|
2481
2557
|
# To generate a data key pair, you must specify a symmetric customer
|
2482
2558
|
# master key (CMK) to encrypt the private key in a data key pair. You
|
2483
|
-
# cannot use an asymmetric CMK
|
2484
|
-
# DescribeKey operation.
|
2559
|
+
# cannot use an asymmetric CMK or a CMK in a custom key store. To get
|
2560
|
+
# the type and origin of your CMK, use the DescribeKey operation.
|
2485
2561
|
#
|
2486
2562
|
# If you are using the data key pair to encrypt data, or for any
|
2487
2563
|
# operation where you don't immediately need a private key, consider
|
@@ -2496,7 +2572,7 @@ module Aws::KMS
|
|
2496
2572
|
# to the encryption operation. If you specify an `EncryptionContext`,
|
2497
2573
|
# you must specify the same encryption context (a case-sensitive exact
|
2498
2574
|
# match) when decrypting the encrypted data key. Otherwise, the request
|
2499
|
-
# to decrypt fails with an InvalidCiphertextException
|
2575
|
+
# to decrypt fails with an `InvalidCiphertextException`. For more
|
2500
2576
|
# information, see [Encryption Context][1] in the *AWS Key Management
|
2501
2577
|
# Service Developer Guide*.
|
2502
2578
|
#
|
@@ -2529,7 +2605,9 @@ module Aws::KMS
|
|
2529
2605
|
#
|
2530
2606
|
# @option params [required, String] :key_id
|
2531
2607
|
# Specifies the symmetric CMK that encrypts the private key in the data
|
2532
|
-
# key pair. You cannot specify an asymmetric
|
2608
|
+
# key pair. You cannot specify an asymmetric CMK or a CMK in a custom
|
2609
|
+
# key store. To get the type and origin of your CMK, use the DescribeKey
|
2610
|
+
# operation.
|
2533
2611
|
#
|
2534
2612
|
# To specify a CMK, use its key ID, Amazon Resource Name (ARN), alias
|
2535
2613
|
# name, or alias ARN. When using an alias name, prefix it with
|
@@ -2612,8 +2690,9 @@ module Aws::KMS
|
|
2612
2690
|
#
|
2613
2691
|
# To generate a data key pair, you must specify a symmetric customer
|
2614
2692
|
# master key (CMK) to encrypt the private key in the data key pair. You
|
2615
|
-
# cannot use an asymmetric CMK
|
2616
|
-
# `KeySpec` field in the
|
2693
|
+
# cannot use an asymmetric CMK or a CMK in a custom key store. To get
|
2694
|
+
# the type and origin of your CMK, use the `KeySpec` field in the
|
2695
|
+
# DescribeKey response.
|
2617
2696
|
#
|
2618
2697
|
# You can use the public key that `GenerateDataKeyPairWithoutPlaintext`
|
2619
2698
|
# returns to encrypt data or verify a signature outside of AWS KMS.
|
@@ -2629,7 +2708,7 @@ module Aws::KMS
|
|
2629
2708
|
# to the encryption operation. If you specify an `EncryptionContext`,
|
2630
2709
|
# you must specify the same encryption context (a case-sensitive exact
|
2631
2710
|
# match) when decrypting the encrypted data key. Otherwise, the request
|
2632
|
-
# to decrypt fails with an InvalidCiphertextException
|
2711
|
+
# to decrypt fails with an `InvalidCiphertextException`. For more
|
2633
2712
|
# information, see [Encryption Context][1] in the *AWS Key Management
|
2634
2713
|
# Service Developer Guide*.
|
2635
2714
|
#
|
@@ -2662,8 +2741,9 @@ module Aws::KMS
|
|
2662
2741
|
#
|
2663
2742
|
# @option params [required, String] :key_id
|
2664
2743
|
# Specifies the CMK that encrypts the private key in the data key pair.
|
2665
|
-
# You must specify a symmetric CMK. You cannot use an asymmetric CMK
|
2666
|
-
# get the type of your CMK,
|
2744
|
+
# You must specify a symmetric CMK. You cannot use an asymmetric CMK or
|
2745
|
+
# a CMK in a custom key store. To get the type and origin of your CMK,
|
2746
|
+
# use the DescribeKey operation.
|
2667
2747
|
#
|
2668
2748
|
# To specify a CMK, use its key ID, Amazon Resource Name (ARN), alias
|
2669
2749
|
# name, or alias ARN. When using an alias name, prefix it with
|
@@ -2772,7 +2852,7 @@ module Aws::KMS
|
|
2772
2852
|
# to the encryption operation. If you specify an `EncryptionContext`,
|
2773
2853
|
# you must specify the same encryption context (a case-sensitive exact
|
2774
2854
|
# match) when decrypting the encrypted data key. Otherwise, the request
|
2775
|
-
# to decrypt fails with an InvalidCiphertextException
|
2855
|
+
# to decrypt fails with an `InvalidCiphertextException`. For more
|
2776
2856
|
# information, see [Encryption Context][1] in the *AWS Key Management
|
2777
2857
|
# Service Developer Guide*.
|
2778
2858
|
#
|
@@ -3518,6 +3598,8 @@ module Aws::KMS
|
|
3518
3598
|
# * {Types::ListAliasesResponse#next_marker #next_marker} => String
|
3519
3599
|
# * {Types::ListAliasesResponse#truncated #truncated} => Boolean
|
3520
3600
|
#
|
3601
|
+
# The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
|
3602
|
+
#
|
3521
3603
|
#
|
3522
3604
|
# @example Example: To list aliases
|
3523
3605
|
#
|
@@ -3604,6 +3686,19 @@ module Aws::KMS
|
|
3604
3686
|
# To perform this operation on a CMK in a different AWS account, specify
|
3605
3687
|
# the key ARN in the value of the `KeyId` parameter.
|
3606
3688
|
#
|
3689
|
+
# <note markdown="1"> The `GranteePrincipal` field in the `ListGrants` response usually
|
3690
|
+
# contains the user or role designated as the grantee principal in the
|
3691
|
+
# grant. However, when the grantee principal in the grant is an AWS
|
3692
|
+
# service, the `GranteePrincipal` field contains the [service
|
3693
|
+
# principal][1], which might represent several different grantee
|
3694
|
+
# principals.
|
3695
|
+
#
|
3696
|
+
# </note>
|
3697
|
+
#
|
3698
|
+
#
|
3699
|
+
#
|
3700
|
+
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#principal-services
|
3701
|
+
#
|
3607
3702
|
# @option params [Integer] :limit
|
3608
3703
|
# Use this parameter to specify the maximum number of items to return.
|
3609
3704
|
# When this value is present, AWS KMS does not return more than the
|
@@ -3638,6 +3733,8 @@ module Aws::KMS
|
|
3638
3733
|
# * {Types::ListGrantsResponse#next_marker #next_marker} => String
|
3639
3734
|
# * {Types::ListGrantsResponse#truncated #truncated} => Boolean
|
3640
3735
|
#
|
3736
|
+
# The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
|
3737
|
+
#
|
3641
3738
|
#
|
3642
3739
|
# @example Example: To list grants for a customer master key (CMK)
|
3643
3740
|
#
|
@@ -3783,6 +3880,8 @@ module Aws::KMS
|
|
3783
3880
|
# * {Types::ListKeyPoliciesResponse#next_marker #next_marker} => String
|
3784
3881
|
# * {Types::ListKeyPoliciesResponse#truncated #truncated} => Boolean
|
3785
3882
|
#
|
3883
|
+
# The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
|
3884
|
+
#
|
3786
3885
|
#
|
3787
3886
|
# @example Example: To list key policies for a customer master key (CMK)
|
3788
3887
|
#
|
@@ -3847,6 +3946,8 @@ module Aws::KMS
|
|
3847
3946
|
# * {Types::ListKeysResponse#next_marker #next_marker} => String
|
3848
3947
|
# * {Types::ListKeysResponse#truncated #truncated} => Boolean
|
3849
3948
|
#
|
3949
|
+
# The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
|
3950
|
+
#
|
3850
3951
|
#
|
3851
3952
|
# @example Example: To list customer master keys (CMKs)
|
3852
3953
|
#
|
@@ -4227,16 +4328,16 @@ module Aws::KMS
|
|
4227
4328
|
# under which data is encrypted, such as when you [manually rotate][1] a
|
4228
4329
|
# CMK or change the CMK that protects a ciphertext. You can also use it
|
4229
4330
|
# to reencrypt ciphertext under the same CMK, such as to change the
|
4230
|
-
# encryption context of a ciphertext.
|
4331
|
+
# [encryption context][2] of a ciphertext.
|
4231
4332
|
#
|
4232
4333
|
# The `ReEncrypt` operation can decrypt ciphertext that was encrypted by
|
4233
4334
|
# using an AWS KMS CMK in an AWS KMS operation, such as Encrypt or
|
4234
4335
|
# GenerateDataKey. It can also decrypt ciphertext that was encrypted by
|
4235
|
-
# using the public key of an asymmetric CMK outside of AWS KMS.
|
4236
|
-
# it cannot decrypt ciphertext produced by other libraries,
|
4237
|
-
# [AWS Encryption SDK][
|
4238
|
-
# These libraries return a ciphertext format that is
|
4239
|
-
# AWS KMS.
|
4336
|
+
# using the public key of an [asymmetric CMK][3] outside of AWS KMS.
|
4337
|
+
# However, it cannot decrypt ciphertext produced by other libraries,
|
4338
|
+
# such as the [AWS Encryption SDK][4] or [Amazon S3 client-side
|
4339
|
+
# encryption][5]. These libraries return a ciphertext format that is
|
4340
|
+
# incompatible with AWS KMS.
|
4240
4341
|
#
|
4241
4342
|
# When you use the `ReEncrypt` operation, you need to provide
|
4242
4343
|
# information for the decrypt operation and the subsequent encrypt
|
@@ -4274,29 +4375,30 @@ module Aws::KMS
|
|
4274
4375
|
# Unlike other AWS KMS API operations, `ReEncrypt` callers must have two
|
4275
4376
|
# permissions:
|
4276
4377
|
#
|
4277
|
-
# * `kms:
|
4278
|
-
#
|
4279
|
-
# * `kms:EncryptTo` permission on the destination CMK
|
4378
|
+
# * `kms:ReEncryptFrom` permission on the source CMK
|
4280
4379
|
#
|
4281
|
-
#
|
4380
|
+
# * `kms:ReEncryptTo` permission on the destination CMK
|
4282
4381
|
#
|
4283
|
-
# or to a CMK, include the
|
4284
|
-
# policy][
|
4285
|
-
#
|
4286
|
-
#
|
4287
|
-
# PutKeyPolicy operation set
|
4382
|
+
# To permit reencryption from or to a CMK, include the
|
4383
|
+
# `"kms:ReEncrypt*"` permission in your [key policy][6]. This permission
|
4384
|
+
# is automatically included in the key policy when you use the console
|
4385
|
+
# to create a CMK. But you must include it manually when you create a
|
4386
|
+
# CMK programmatically or when you use the PutKeyPolicy operation to set
|
4387
|
+
# a key policy.
|
4288
4388
|
#
|
4289
4389
|
# The CMK that you use for this operation must be in a compatible key
|
4290
4390
|
# state. For details, see [How Key State Affects Use of a Customer
|
4291
|
-
# Master Key][
|
4391
|
+
# Master Key][7] in the *AWS Key Management Service Developer Guide*.
|
4292
4392
|
#
|
4293
4393
|
#
|
4294
4394
|
#
|
4295
4395
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html#rotate-keys-manually
|
4296
|
-
# [2]: https://docs.aws.amazon.com/
|
4297
|
-
# [3]: https://docs.aws.amazon.com/
|
4298
|
-
# [4]: https://docs.aws.amazon.com/
|
4299
|
-
# [5]: https://docs.aws.amazon.com/
|
4396
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context
|
4397
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/symm-asymm-concepts.html#asymmetric-cmks
|
4398
|
+
# [4]: https://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/
|
4399
|
+
# [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingClientSideEncryption.html
|
4400
|
+
# [6]: https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html
|
4401
|
+
# [7]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
4300
4402
|
#
|
4301
4403
|
# @option params [required, String, IO] :ciphertext_blob
|
4302
4404
|
# Ciphertext of the data to reencrypt.
|
@@ -5375,7 +5477,7 @@ module Aws::KMS
|
|
5375
5477
|
params: params,
|
5376
5478
|
config: config)
|
5377
5479
|
context[:gem_name] = 'aws-sdk-kms'
|
5378
|
-
context[:gem_version] = '1.
|
5480
|
+
context[:gem_version] = '1.34.1'
|
5379
5481
|
Seahorse::Client::Request.new(handlers, context)
|
5380
5482
|
end
|
5381
5483
|
|