aws-sdk-kms 1.29.0 → 1.34.1
Sign up to get free protection for your applications and to get access to all the features.
- 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
|
|