aws-sdk-kms 1.27.0 → 1.32.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 6a983aaa03a80ed7188f61a1bab13d7bcddf5701
4
- data.tar.gz: 155fd553e0ddd8cb820d3f1b4e8f051177446d1f
2
+ SHA256:
3
+ metadata.gz: 429d3556c6ee6342d08a47f751e42a23793659d358624e577d274986f58627ef
4
+ data.tar.gz: 7c5044014048141ca656e23cb3bea94088c46cfd599e21dbbec4527fadedf0cd
5
5
  SHA512:
6
- metadata.gz: 39eb4bc0cfd2bb7b6cd062d5b1b54052edf5868d720bae9f20359a75b8c84721b676e20444e4454b446b576ea5009ff5d5b3259094d82a0d8eb758abd27af195
7
- data.tar.gz: 0fd429e969b0ba7461822783be9b7ea9e77239e021ff189bdeb729327ff2179b887009eacdd77d237f32ae622851fd483cb539fe69717f9d670799e779731741
6
+ metadata.gz: b4f4e02a1259bb6b804089bf8666ef9430be50deae769ee10d95ead6d50ab1ab11c9dc1f820b74bff70208c933edc1c169b5d30c17772957b3ae85ce9e470544
7
+ data.tar.gz: ebb3e1f0e58e309e16bd5b12a2b8612533b71c2e890da215adf67df84011c9d99b1fc4def32d968f04870c623ddc04b1464e930f8d92f437e404308ef6867e5c
@@ -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 all
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 service API errors
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.27.0'
48
+ GEM_VERSION = '1.32.0'
46
49
 
47
50
  end
@@ -30,6 +30,18 @@ require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
30
30
  Aws::Plugins::GlobalConfiguration.add_identifier(:kms)
31
31
 
32
32
  module Aws::KMS
33
+ # An API client for KMS. To construct a client, you need to configure a `:region` and `:credentials`.
34
+ #
35
+ # client = Aws::KMS::Client.new(
36
+ # region: region_name,
37
+ # credentials: credentials,
38
+ # # ...
39
+ # )
40
+ #
41
+ # For details on configuring region and credentials see
42
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
43
+ #
44
+ # See {#initialize} for a full list of supported configuration options.
33
45
  class Client < Seahorse::Client::Base
34
46
 
35
47
  include Aws::ClientStubs
@@ -93,7 +105,7 @@ module Aws::KMS
93
105
  # @option options [required, String] :region
94
106
  # The AWS region to connect to. The configured `:region` is
95
107
  # used to determine the service `:endpoint`. When not passed,
96
- # a default `:region` is search for in the following locations:
108
+ # a default `:region` is searched for in the following locations:
97
109
  #
98
110
  # * `Aws.config[:region]`
99
111
  # * `ENV['AWS_REGION']`
@@ -108,6 +120,12 @@ module Aws::KMS
108
120
  # When set to `true`, a thread polling for endpoints will be running in
109
121
  # the background every 60 secs (default). Defaults to `false`.
110
122
  #
123
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
124
+ # Used only in `adaptive` retry mode. When true, the request will sleep
125
+ # until there is sufficent client side capacity to retry the request.
126
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
127
+ # not retry instead of sleeping.
128
+ #
111
129
  # @option options [Boolean] :client_side_monitoring (false)
112
130
  # When `true`, client-side metrics will be collected for all API requests from
113
131
  # this client.
@@ -132,6 +150,10 @@ module Aws::KMS
132
150
  # When `true`, an attempt is made to coerce request parameters into
133
151
  # the required types.
134
152
  #
153
+ # @option options [Boolean] :correct_clock_skew (true)
154
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
155
+ # a clock skew correction and retry requests with skewed client clocks.
156
+ #
135
157
  # @option options [Boolean] :disable_host_prefix_injection (false)
136
158
  # Set to true to disable SDK automatically adding host prefix
137
159
  # to default service endpoint when available.
@@ -139,7 +161,7 @@ module Aws::KMS
139
161
  # @option options [String] :endpoint
140
162
  # The client endpoint is normally constructed from the `:region`
141
163
  # option. You should only configure an `:endpoint` when connecting
142
- # to test endpoints. This should be avalid HTTP(S) URI.
164
+ # to test endpoints. This should be a valid HTTP(S) URI.
143
165
  #
144
166
  # @option options [Integer] :endpoint_cache_max_entries (1000)
145
167
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -154,7 +176,7 @@ module Aws::KMS
154
176
  # requests fetching endpoints information. Defaults to 60 sec.
155
177
  #
156
178
  # @option options [Boolean] :endpoint_discovery (false)
157
- # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
179
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
158
180
  #
159
181
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
160
182
  # The log formatter.
@@ -166,15 +188,29 @@ module Aws::KMS
166
188
  # The Logger instance to send log messages to. If this option
167
189
  # is not set, logging will be disabled.
168
190
  #
191
+ # @option options [Integer] :max_attempts (3)
192
+ # An integer representing the maximum number attempts that will be made for
193
+ # a single request, including the initial attempt. For example,
194
+ # setting this value to 5 will result in a request being retried up to
195
+ # 4 times. Used in `standard` and `adaptive` retry modes.
196
+ #
169
197
  # @option options [String] :profile ("default")
170
198
  # Used when loading credentials from the shared credentials file
171
199
  # at HOME/.aws/credentials. When not specified, 'default' is used.
172
200
  #
201
+ # @option options [Proc] :retry_backoff
202
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
203
+ # This option is only used in the `legacy` retry mode.
204
+ #
173
205
  # @option options [Float] :retry_base_delay (0.3)
174
- # The base delay in seconds used by the default backoff function.
206
+ # The base delay in seconds used by the default backoff function. This option
207
+ # is only used in the `legacy` retry mode.
175
208
  #
176
209
  # @option options [Symbol] :retry_jitter (:none)
177
- # A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number.
210
+ # A delay randomiser function used by the default backoff function.
211
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
212
+ # otherwise a Proc that takes and returns a number. This option is only used
213
+ # in the `legacy` retry mode.
178
214
  #
179
215
  # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
180
216
  #
@@ -182,11 +218,30 @@ module Aws::KMS
182
218
  # The maximum number of times to retry failed requests. Only
183
219
  # ~ 500 level server errors and certain ~ 400 level client errors
184
220
  # are retried. Generally, these are throttling errors, data
185
- # checksum errors, networking errors, timeout errors and auth
186
- # errors from expired credentials.
221
+ # checksum errors, networking errors, timeout errors, auth errors,
222
+ # endpoint discovery, and errors from expired credentials.
223
+ # This option is only used in the `legacy` retry mode.
187
224
  #
188
225
  # @option options [Integer] :retry_max_delay (0)
189
- # The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function.
226
+ # The maximum number of seconds to delay between retries (0 for no limit)
227
+ # used by the default backoff function. This option is only used in the
228
+ # `legacy` retry mode.
229
+ #
230
+ # @option options [String] :retry_mode ("legacy")
231
+ # Specifies which retry algorithm to use. Values are:
232
+ #
233
+ # * `legacy` - The pre-existing retry behavior. This is default value if
234
+ # no retry mode is provided.
235
+ #
236
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
237
+ # This includes support for retry quotas, which limit the number of
238
+ # unsuccessful retries a client can make.
239
+ #
240
+ # * `adaptive` - An experimental retry mode that includes all the
241
+ # functionality of `standard` mode along with automatic client side
242
+ # throttling. This is a provisional mode that may change behavior
243
+ # in the future.
244
+ #
190
245
  #
191
246
  # @option options [String] :secret_access_key
192
247
  #
@@ -219,16 +274,15 @@ module Aws::KMS
219
274
  # requests through. Formatted like 'http://proxy.com:123'.
220
275
  #
221
276
  # @option options [Float] :http_open_timeout (15) The number of
222
- # seconds to wait when opening a HTTP session before rasing a
277
+ # seconds to wait when opening a HTTP session before raising a
223
278
  # `Timeout::Error`.
224
279
  #
225
280
  # @option options [Integer] :http_read_timeout (60) The default
226
281
  # 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}.
282
+ # safely be set per-request on the session.
229
283
  #
230
284
  # @option options [Float] :http_idle_timeout (5) The number of
231
- # seconds a connection is allowed to sit idble before it is
285
+ # seconds a connection is allowed to sit idle before it is
232
286
  # considered stale. Stale connections are closed and removed
233
287
  # from the pool before making a request.
234
288
  #
@@ -237,7 +291,7 @@ module Aws::KMS
237
291
  # request body. This option has no effect unless the request has
238
292
  # "Expect" header set to "100-continue". Defaults to `nil` which
239
293
  # disables this behaviour. This value can safely be set per
240
- # request on the session yeidled by {#session_for}.
294
+ # request on the session.
241
295
  #
242
296
  # @option options [Boolean] :http_wire_trace (false) When `true`,
243
297
  # HTTP debug output will be sent to the `:logger`.
@@ -344,7 +398,9 @@ module Aws::KMS
344
398
  # To connect a custom key store, its associated AWS CloudHSM cluster
345
399
  # must have at least one active HSM. To get the number of active HSMs in
346
400
  # a cluster, use the [DescribeClusters][2] operation. To add HSMs to the
347
- # cluster, use the [CreateHsm][3] operation.
401
+ # cluster, use the [CreateHsm][3] operation. Also, the [ `kmsuser`
402
+ # crypto user][4] (CU) must not be logged into the cluster. This
403
+ # prevents AWS KMS from using this account to log in.
348
404
  #
349
405
  # The connection process can take an extended amount of time to
350
406
  # complete; up to 20 minutes. This operation starts the connection
@@ -357,8 +413,7 @@ module Aws::KMS
357
413
  # During the connection process, AWS KMS finds the AWS CloudHSM cluster
358
414
  # that is associated with the custom key store, creates the connection
359
415
  # infrastructure, connects to the cluster, logs into the AWS CloudHSM
360
- # client as the [ `kmsuser` crypto user][4] (CU), and rotates its
361
- # password.
416
+ # client as the `kmsuser` CU, and rotates its password.
362
417
  #
363
418
  # The `ConnectCustomKeyStore` operation might fail for various reasons.
364
419
  # To find the reason, use the DescribeCustomKeyStores operation and see
@@ -581,6 +636,9 @@ module Aws::KMS
581
636
  # the specified AWS CloudHSM cluster. AWS KMS logs into the cluster as
582
637
  # this user to manage key material on your behalf.
583
638
  #
639
+ # The password must be a string of 7 to 32 characters. Its value is case
640
+ # sensitive.
641
+ #
584
642
  # This parameter tells AWS KMS the `kmsuser` account password; it does
585
643
  # not change the password in the AWS CloudHSM cluster.
586
644
  #
@@ -831,8 +889,9 @@ module Aws::KMS
831
889
  # * **Symmetric CMKs** contain a 256-bit symmetric key that never leaves
832
890
  # AWS KMS unencrypted. To use the CMK, you must call AWS KMS. You can
833
891
  # use a symmetric CMK to encrypt and decrypt small amounts of data,
834
- # but they are typically used to generate [data keys][2] or data key
835
- # pairs. For details, see GenerateDataKey and GenerateDataKeyPair.
892
+ # but they are typically used to generate [data keys][2] and [data
893
+ # keys pairs][3]. For details, see GenerateDataKey and
894
+ # GenerateDataKeyPair.
836
895
  #
837
896
  # * **Asymmetric CMKs** can contain an RSA key pair or an Elliptic Curve
838
897
  # (ECC) key pair. The private key in an asymmetric CMK never leaves
@@ -843,7 +902,7 @@ module Aws::KMS
843
902
  # be used only to sign and verify messages.
844
903
  #
845
904
  # For information about symmetric and asymmetric CMKs, see [Using
846
- # Symmetric and Asymmetric CMKs][3] in the *AWS Key Management Service
905
+ # Symmetric and Asymmetric CMKs][4] in the *AWS Key Management Service
847
906
  # Developer Guide*.
848
907
  #
849
908
  # To create different types of CMKs, use the following guidance:
@@ -877,7 +936,7 @@ module Aws::KMS
877
936
  # token, and use the public key to encrypt your key material. Then,
878
937
  # use ImportKeyMaterial with your import token to import the key
879
938
  # material. For step-by-step instructions, see [Importing Key
880
- # Material][4] in the <i> <i>AWS Key Management Service Developer
939
+ # Material][5] in the <i> <i>AWS Key Management Service Developer
881
940
  # Guide</i> </i>. You cannot import the key material into an
882
941
  # asymmetric CMK.
883
942
  #
@@ -885,7 +944,7 @@ module Aws::KMS
885
944
  #
886
945
  # Custom Key Stores
887
946
  #
888
- # : To create a symmetric CMK in a [custom key store][5], use the
947
+ # : To create a symmetric CMK in a [custom key store][6], use the
889
948
  # `CustomKeyStoreId` parameter to specify the custom key store. You
890
949
  # must also use the `Origin` parameter with a value of `AWS_CLOUDHSM`.
891
950
  # The AWS CloudHSM cluster that is associated with the custom key
@@ -894,16 +953,17 @@ module Aws::KMS
894
953
  #
895
954
  # You cannot create an asymmetric CMK in a custom key store. For
896
955
  # information about custom key stores in AWS KMS see [Using Custom Key
897
- # Stores][5] in the <i> <i>AWS Key Management Service Developer
956
+ # Stores][6] in the <i> <i>AWS Key Management Service Developer
898
957
  # Guide</i> </i>.
899
958
  #
900
959
  #
901
960
  #
902
961
  # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#master-keys
903
962
  # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-keys
904
- # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
905
- # [4]: https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html
906
- # [5]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
963
+ # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-key-pairs
964
+ # [4]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
965
+ # [5]: https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html
966
+ # [6]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
907
967
  #
908
968
  # @option params [String] :policy
909
969
  # The key policy to attach to the CMK.
@@ -931,7 +991,7 @@ module Aws::KMS
931
991
  # policy to the CMK. For more information, see [Default Key Policy][3]
932
992
  # in the *AWS Key Management Service Developer Guide*.
933
993
  #
934
- # The key policy size limit is 32 kilobytes (32768 bytes).
994
+ # The key policy size quota is 32 kilobytes (32768 bytes).
935
995
  #
936
996
  #
937
997
  #
@@ -961,20 +1021,26 @@ module Aws::KMS
961
1021
  # * For asymmetric CMKs with ECC key material, specify `SIGN_VERIFY`.
962
1022
  #
963
1023
  # @option params [String] :customer_master_key_spec
964
- # Specifies the type of CMK to create. The `CustomerMasterKeySpec`
965
- # determines whether the CMK contains a symmetric key or an asymmetric
966
- # key pair. It also determines the encryption algorithms or signing
967
- # algorithms that the CMK supports. You can't change the
968
- # `CustomerMasterKeySpec` after the CMK is created. To further restrict
969
- # the algorithms that can be used with the CMK, use its key policy or
970
- # IAM policy.
971
- #
972
- # For help with choosing a key spec for your CMK, see [Selecting a
973
- # Customer Master Key Spec][1] in the *AWS Key Management Service
974
- # Developer Guide*.
1024
+ # Specifies the type of CMK to create. The default value,
1025
+ # `SYMMETRIC_DEFAULT`, creates a CMK with a 256-bit symmetric key for
1026
+ # encryption and decryption. For help choosing a key spec for your CMK,
1027
+ # see [How to Choose Your CMK Configuration][1] in the *AWS Key
1028
+ # Management Service Developer Guide*.
975
1029
  #
976
- # The default value, `SYMMETRIC_DEFAULT`, creates a CMK with a 256-bit
977
- # symmetric key.
1030
+ # The `CustomerMasterKeySpec` determines whether the CMK contains a
1031
+ # symmetric key or an asymmetric key pair. It also determines the
1032
+ # encryption algorithms or signing algorithms that the CMK supports. You
1033
+ # can't change the `CustomerMasterKeySpec` after the CMK is created. To
1034
+ # further restrict the algorithms that can be used with the CMK, use a
1035
+ # condition key in its key policy or IAM policy. For more information,
1036
+ # see [kms:EncryptionAlgorithm][2] or [kms:Signing Algorithm][3] in the
1037
+ # *AWS Key Management Service Developer Guide*.
1038
+ #
1039
+ # [AWS services that are integrated with AWS KMS][4] use symmetric CMKs
1040
+ # to protect your data. These services do not support asymmetric CMKs.
1041
+ # For help determining whether a CMK is symmetric or asymmetric, see
1042
+ # [Identifying Symmetric and Asymmetric CMKs][5] in the *AWS Key
1043
+ # Management Service Developer Guide*.
978
1044
  #
979
1045
  # AWS KMS supports the following key specs for CMKs:
980
1046
  #
@@ -1008,7 +1074,11 @@ module Aws::KMS
1008
1074
  #
1009
1075
  #
1010
1076
  #
1011
- # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html#cmk-key-spec
1077
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/symm-asymm-choose.html
1078
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/policy-conditions.html#conditions-kms-encryption-algorithm
1079
+ # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/policy-conditions.html#conditions-kms-signing-algorithm
1080
+ # [4]: http://aws.amazon.com/kms/features/#AWS_Service_Integration
1081
+ # [5]: https://docs.aws.amazon.com/kms/latest/developerguide/find-symm-asymm.html
1012
1082
  #
1013
1083
  # @option params [String] :origin
1014
1084
  # The source of the key material for the CMK. You cannot change the
@@ -1610,7 +1680,7 @@ module Aws::KMS
1610
1680
  # resp.custom_key_stores[0].cloud_hsm_cluster_id #=> String
1611
1681
  # resp.custom_key_stores[0].trust_anchor_certificate #=> String
1612
1682
  # resp.custom_key_stores[0].connection_state #=> String, one of "CONNECTED", "CONNECTING", "FAILED", "DISCONNECTED", "DISCONNECTING"
1613
- # resp.custom_key_stores[0].connection_error_code #=> String, one of "INVALID_CREDENTIALS", "CLUSTER_NOT_FOUND", "NETWORK_ERRORS", "INTERNAL_ERROR", "INSUFFICIENT_CLOUDHSM_HSMS", "USER_LOCKED_OUT"
1683
+ # resp.custom_key_stores[0].connection_error_code #=> String, one of "INVALID_CREDENTIALS", "CLUSTER_NOT_FOUND", "NETWORK_ERRORS", "INTERNAL_ERROR", "INSUFFICIENT_CLOUDHSM_HSMS", "USER_LOCKED_OUT", "USER_NOT_FOUND", "USER_LOGGED_IN", "SUBNET_NOT_FOUND"
1614
1684
  # resp.custom_key_stores[0].creation_date #=> Time
1615
1685
  # resp.next_marker #=> String
1616
1686
  # resp.truncated #=> Boolean
@@ -2275,7 +2345,7 @@ module Aws::KMS
2275
2345
  #
2276
2346
  # To generate a data key, specify the symmetric CMK that will be used to
2277
2347
  # encrypt the data key. You cannot use an asymmetric CMK to generate
2278
- # data keys.
2348
+ # data keys. To get the type of your CMK, use the DescribeKey operation.
2279
2349
  #
2280
2350
  # You must also specify the length of the data key. Use either the
2281
2351
  # `KeySpec` or `NumberOfBytes` parameters (but not both). For 128-bit
@@ -2646,7 +2716,8 @@ module Aws::KMS
2646
2716
  #
2647
2717
  # @option params [required, String] :key_id
2648
2718
  # Specifies the CMK that encrypts the private key in the data key pair.
2649
- # You must specify a symmetric CMK. You cannot use an asymmetric CMK.
2719
+ # You must specify a symmetric CMK. You cannot use an asymmetric CMK. To
2720
+ # get the type of your CMK, use the DescribeKey operation.
2650
2721
  #
2651
2722
  # To specify a CMK, use its key ID, Amazon Resource Name (ARN), alias
2652
2723
  # name, or alias ARN. When using an alias name, prefix it with
@@ -2746,14 +2817,10 @@ module Aws::KMS
2746
2817
  # To generate a data key, you must specify the symmetric customer master
2747
2818
  # key (CMK) that is used to encrypt the data key. You cannot use an
2748
2819
  # asymmetric CMK to generate a data key. To get the type of your CMK,
2749
- # use the `KeySpec` field in the DescribeKey response. You must also
2750
- # specify the length of the data key using either the `KeySpec` or
2751
- # `NumberOfBytes` field (but not both). For common key lengths (128-bit
2752
- # and 256-bit symmetric keys), use the `KeySpec` parameter.
2820
+ # use the DescribeKey operation.
2753
2821
  #
2754
- # If the operation succeeds, you will find the plaintext copy of the
2755
- # data key in the `Plaintext` field of the response, and the encrypted
2756
- # copy of the data key in the `CiphertextBlob` field.
2822
+ # If the operation succeeds, you will find the encrypted copy of the
2823
+ # data key in the `CiphertextBlob` field.
2757
2824
  #
2758
2825
  # You can use the optional encryption context to add additional security
2759
2826
  # to the encryption operation. If you specify an `EncryptionContext`,
@@ -3471,7 +3538,7 @@ module Aws::KMS
3471
3538
  # field. These are predefined aliases that AWS has created but has not
3472
3539
  # yet associated with a CMK. Aliases that AWS creates in your account,
3473
3540
  # including predefined aliases, do not count against your [AWS KMS
3474
- # aliases limit][1].
3541
+ # aliases quota][1].
3475
3542
  #
3476
3543
  #
3477
3544
  #
@@ -3505,6 +3572,8 @@ module Aws::KMS
3505
3572
  # * {Types::ListAliasesResponse#next_marker #next_marker} => String
3506
3573
  # * {Types::ListAliasesResponse#truncated #truncated} => Boolean
3507
3574
  #
3575
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3576
+ #
3508
3577
  #
3509
3578
  # @example Example: To list aliases
3510
3579
  #
@@ -3625,6 +3694,8 @@ module Aws::KMS
3625
3694
  # * {Types::ListGrantsResponse#next_marker #next_marker} => String
3626
3695
  # * {Types::ListGrantsResponse#truncated #truncated} => Boolean
3627
3696
  #
3697
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3698
+ #
3628
3699
  #
3629
3700
  # @example Example: To list grants for a customer master key (CMK)
3630
3701
  #
@@ -3770,6 +3841,8 @@ module Aws::KMS
3770
3841
  # * {Types::ListKeyPoliciesResponse#next_marker #next_marker} => String
3771
3842
  # * {Types::ListKeyPoliciesResponse#truncated #truncated} => Boolean
3772
3843
  #
3844
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3845
+ #
3773
3846
  #
3774
3847
  # @example Example: To list key policies for a customer master key (CMK)
3775
3848
  #
@@ -3834,6 +3907,8 @@ module Aws::KMS
3834
3907
  # * {Types::ListKeysResponse#next_marker #next_marker} => String
3835
3908
  # * {Types::ListKeysResponse#truncated #truncated} => Boolean
3836
3909
  #
3910
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3911
+ #
3837
3912
  #
3838
3913
  # @example Example: To list customer master keys (CMKs)
3839
3914
  #
@@ -4147,12 +4222,15 @@ module Aws::KMS
4147
4222
  # information, see [Changes that I make are not always immediately
4148
4223
  # visible][2] in the *AWS Identity and Access Management User Guide*.
4149
4224
  #
4150
- # The key policy size limit is 32 kilobytes (32768 bytes).
4225
+ # The key policy cannot exceed 32 kilobytes (32768 bytes). For more
4226
+ # information, see [Resource Quotas][3] in the *AWS Key Management
4227
+ # Service Developer Guide*.
4151
4228
  #
4152
4229
  #
4153
4230
  #
4154
4231
  # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-root-enable-iam
4155
4232
  # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_general.html#troubleshoot_general_eventual-consistency
4233
+ # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/resource-limits.html
4156
4234
  #
4157
4235
  # @option params [Boolean] :bypass_policy_lockout_safety_check
4158
4236
  # A flag to indicate whether to bypass the key policy lockout safety
@@ -4775,8 +4853,8 @@ module Aws::KMS
4775
4853
  #
4776
4854
  # @option params [String] :message_type
4777
4855
  # Tells AWS KMS whether the value of the `Message` parameter is a
4778
- # message or message digest. To indicate a message, enter `RAW`. To
4779
- # indicate a message digest, enter `DIGEST`.
4856
+ # message or message digest. The default value, RAW, indicates a
4857
+ # message. To indicate a message digest, enter `DIGEST`.
4780
4858
  #
4781
4859
  # @option params [Array<String>] :grant_tokens
4782
4860
  # A list of grant tokens.
@@ -5280,17 +5358,22 @@ module Aws::KMS
5280
5358
  # To get the alias name and alias ARN, use ListAliases.
5281
5359
  #
5282
5360
  # @option params [required, String, IO] :message
5283
- # Specifies the message that was signed, or a hash digest of that
5284
- # message. Messages can be 0-4096 bytes. To verify a larger message,
5285
- # provide a hash digest of the message.
5361
+ # Specifies the message that was signed. You can submit a raw message of
5362
+ # up to 4096 bytes, or a hash digest of the message. If you submit a
5363
+ # digest, use the `MessageType` parameter with a value of `DIGEST`.
5286
5364
  #
5287
- # If the digest of the message specified here is different from the
5288
- # message digest that was signed, the signature verification fails.
5365
+ # If the message specified here is different from the message that was
5366
+ # signed, the signature verification fails. A message and its hash
5367
+ # digest are considered to be the same message.
5289
5368
  #
5290
5369
  # @option params [String] :message_type
5291
5370
  # Tells AWS KMS whether the value of the `Message` parameter is a
5292
- # message or message digest. To indicate a message, enter `RAW`. To
5293
- # indicate a message digest, enter `DIGEST`.
5371
+ # message or message digest. The default value, RAW, indicates a
5372
+ # message. To indicate a message digest, enter `DIGEST`.
5373
+ #
5374
+ # Use the `DIGEST` value only when the value of the `Message` parameter
5375
+ # is a message digest. If you use the `DIGEST` value with a raw message,
5376
+ # the security of the verification operation can be compromised.
5294
5377
  #
5295
5378
  # @option params [required, String, IO] :signature
5296
5379
  # The signature that the `Sign` operation generated.
@@ -5354,7 +5437,7 @@ module Aws::KMS
5354
5437
  params: params,
5355
5438
  config: config)
5356
5439
  context[:gem_name] = 'aws-sdk-kms'
5357
- context[:gem_version] = '1.27.0'
5440
+ context[:gem_version] = '1.32.0'
5358
5441
  Seahorse::Client::Request.new(handlers, context)
5359
5442
  end
5360
5443
 
@@ -6,6 +6,61 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::KMS
9
+
10
+ # When KMS returns an error response, the Ruby SDK constructs and raises an error.
11
+ # These errors all extend Aws::KMS::Errors::ServiceError < {Aws::Errors::ServiceError}
12
+ #
13
+ # You can rescue all KMS errors using ServiceError:
14
+ #
15
+ # begin
16
+ # # do stuff
17
+ # rescue Aws::KMS::Errors::ServiceError
18
+ # # rescues all KMS API errors
19
+ # end
20
+ #
21
+ #
22
+ # ## Request Context
23
+ # ServiceError objects have a {Aws::Errors::ServiceError#context #context} method that returns
24
+ # information about the request that generated the error.
25
+ # See {Seahorse::Client::RequestContext} for more information.
26
+ #
27
+ # ## Error Classes
28
+ # * {AlreadyExistsException}
29
+ # * {CloudHsmClusterInUseException}
30
+ # * {CloudHsmClusterInvalidConfigurationException}
31
+ # * {CloudHsmClusterNotActiveException}
32
+ # * {CloudHsmClusterNotFoundException}
33
+ # * {CloudHsmClusterNotRelatedException}
34
+ # * {CustomKeyStoreHasCMKsException}
35
+ # * {CustomKeyStoreInvalidStateException}
36
+ # * {CustomKeyStoreNameInUseException}
37
+ # * {CustomKeyStoreNotFoundException}
38
+ # * {DependencyTimeoutException}
39
+ # * {DisabledException}
40
+ # * {ExpiredImportTokenException}
41
+ # * {IncorrectKeyException}
42
+ # * {IncorrectKeyMaterialException}
43
+ # * {IncorrectTrustAnchorException}
44
+ # * {InvalidAliasNameException}
45
+ # * {InvalidArnException}
46
+ # * {InvalidCiphertextException}
47
+ # * {InvalidGrantIdException}
48
+ # * {InvalidGrantTokenException}
49
+ # * {InvalidImportTokenException}
50
+ # * {InvalidKeyUsageException}
51
+ # * {InvalidMarkerException}
52
+ # * {KMSInternalException}
53
+ # * {KMSInvalidSignatureException}
54
+ # * {KMSInvalidStateException}
55
+ # * {KeyUnavailableException}
56
+ # * {LimitExceededException}
57
+ # * {MalformedPolicyDocumentException}
58
+ # * {NotFoundException}
59
+ # * {TagException}
60
+ # * {UnsupportedOperationException}
61
+ #
62
+ # Additionally, error classes are dynamically generated for service errors based on the error code
63
+ # if they are not defined above.
9
64
  module Errors
10
65
 
11
66
  extend Aws::Errors::DynamicErrors
@@ -23,7 +78,6 @@ module Aws::KMS
23
78
  def message
24
79
  @message || @data[:message]
25
80
  end
26
-
27
81
  end
28
82
 
29
83
  class CloudHsmClusterInUseException < ServiceError
@@ -39,7 +93,6 @@ module Aws::KMS
39
93
  def message
40
94
  @message || @data[:message]
41
95
  end
42
-
43
96
  end
44
97
 
45
98
  class CloudHsmClusterInvalidConfigurationException < ServiceError
@@ -55,7 +108,6 @@ module Aws::KMS
55
108
  def message
56
109
  @message || @data[:message]
57
110
  end
58
-
59
111
  end
60
112
 
61
113
  class CloudHsmClusterNotActiveException < ServiceError
@@ -71,7 +123,6 @@ module Aws::KMS
71
123
  def message
72
124
  @message || @data[:message]
73
125
  end
74
-
75
126
  end
76
127
 
77
128
  class CloudHsmClusterNotFoundException < ServiceError
@@ -87,7 +138,6 @@ module Aws::KMS
87
138
  def message
88
139
  @message || @data[:message]
89
140
  end
90
-
91
141
  end
92
142
 
93
143
  class CloudHsmClusterNotRelatedException < ServiceError
@@ -103,7 +153,6 @@ module Aws::KMS
103
153
  def message
104
154
  @message || @data[:message]
105
155
  end
106
-
107
156
  end
108
157
 
109
158
  class CustomKeyStoreHasCMKsException < ServiceError
@@ -119,7 +168,6 @@ module Aws::KMS
119
168
  def message
120
169
  @message || @data[:message]
121
170
  end
122
-
123
171
  end
124
172
 
125
173
  class CustomKeyStoreInvalidStateException < ServiceError
@@ -135,7 +183,6 @@ module Aws::KMS
135
183
  def message
136
184
  @message || @data[:message]
137
185
  end
138
-
139
186
  end
140
187
 
141
188
  class CustomKeyStoreNameInUseException < ServiceError
@@ -151,7 +198,6 @@ module Aws::KMS
151
198
  def message
152
199
  @message || @data[:message]
153
200
  end
154
-
155
201
  end
156
202
 
157
203
  class CustomKeyStoreNotFoundException < ServiceError
@@ -167,7 +213,6 @@ module Aws::KMS
167
213
  def message
168
214
  @message || @data[:message]
169
215
  end
170
-
171
216
  end
172
217
 
173
218
  class DependencyTimeoutException < ServiceError
@@ -183,7 +228,6 @@ module Aws::KMS
183
228
  def message
184
229
  @message || @data[:message]
185
230
  end
186
-
187
231
  end
188
232
 
189
233
  class DisabledException < ServiceError
@@ -199,7 +243,6 @@ module Aws::KMS
199
243
  def message
200
244
  @message || @data[:message]
201
245
  end
202
-
203
246
  end
204
247
 
205
248
  class ExpiredImportTokenException < ServiceError
@@ -215,7 +258,6 @@ module Aws::KMS
215
258
  def message
216
259
  @message || @data[:message]
217
260
  end
218
-
219
261
  end
220
262
 
221
263
  class IncorrectKeyException < ServiceError
@@ -231,7 +273,6 @@ module Aws::KMS
231
273
  def message
232
274
  @message || @data[:message]
233
275
  end
234
-
235
276
  end
236
277
 
237
278
  class IncorrectKeyMaterialException < ServiceError
@@ -247,7 +288,6 @@ module Aws::KMS
247
288
  def message
248
289
  @message || @data[:message]
249
290
  end
250
-
251
291
  end
252
292
 
253
293
  class IncorrectTrustAnchorException < ServiceError
@@ -263,7 +303,6 @@ module Aws::KMS
263
303
  def message
264
304
  @message || @data[:message]
265
305
  end
266
-
267
306
  end
268
307
 
269
308
  class InvalidAliasNameException < ServiceError
@@ -279,7 +318,6 @@ module Aws::KMS
279
318
  def message
280
319
  @message || @data[:message]
281
320
  end
282
-
283
321
  end
284
322
 
285
323
  class InvalidArnException < ServiceError
@@ -295,7 +333,6 @@ module Aws::KMS
295
333
  def message
296
334
  @message || @data[:message]
297
335
  end
298
-
299
336
  end
300
337
 
301
338
  class InvalidCiphertextException < ServiceError
@@ -311,7 +348,6 @@ module Aws::KMS
311
348
  def message
312
349
  @message || @data[:message]
313
350
  end
314
-
315
351
  end
316
352
 
317
353
  class InvalidGrantIdException < ServiceError
@@ -327,7 +363,6 @@ module Aws::KMS
327
363
  def message
328
364
  @message || @data[:message]
329
365
  end
330
-
331
366
  end
332
367
 
333
368
  class InvalidGrantTokenException < ServiceError
@@ -343,7 +378,6 @@ module Aws::KMS
343
378
  def message
344
379
  @message || @data[:message]
345
380
  end
346
-
347
381
  end
348
382
 
349
383
  class InvalidImportTokenException < ServiceError
@@ -359,7 +393,6 @@ module Aws::KMS
359
393
  def message
360
394
  @message || @data[:message]
361
395
  end
362
-
363
396
  end
364
397
 
365
398
  class InvalidKeyUsageException < ServiceError
@@ -375,7 +408,6 @@ module Aws::KMS
375
408
  def message
376
409
  @message || @data[:message]
377
410
  end
378
-
379
411
  end
380
412
 
381
413
  class InvalidMarkerException < ServiceError
@@ -391,7 +423,6 @@ module Aws::KMS
391
423
  def message
392
424
  @message || @data[:message]
393
425
  end
394
-
395
426
  end
396
427
 
397
428
  class KMSInternalException < ServiceError
@@ -407,7 +438,6 @@ module Aws::KMS
407
438
  def message
408
439
  @message || @data[:message]
409
440
  end
410
-
411
441
  end
412
442
 
413
443
  class KMSInvalidSignatureException < ServiceError
@@ -423,7 +453,6 @@ module Aws::KMS
423
453
  def message
424
454
  @message || @data[:message]
425
455
  end
426
-
427
456
  end
428
457
 
429
458
  class KMSInvalidStateException < ServiceError
@@ -439,7 +468,6 @@ module Aws::KMS
439
468
  def message
440
469
  @message || @data[:message]
441
470
  end
442
-
443
471
  end
444
472
 
445
473
  class KeyUnavailableException < ServiceError
@@ -455,7 +483,6 @@ module Aws::KMS
455
483
  def message
456
484
  @message || @data[:message]
457
485
  end
458
-
459
486
  end
460
487
 
461
488
  class LimitExceededException < ServiceError
@@ -471,7 +498,6 @@ module Aws::KMS
471
498
  def message
472
499
  @message || @data[:message]
473
500
  end
474
-
475
501
  end
476
502
 
477
503
  class MalformedPolicyDocumentException < ServiceError
@@ -487,7 +513,6 @@ module Aws::KMS
487
513
  def message
488
514
  @message || @data[:message]
489
515
  end
490
-
491
516
  end
492
517
 
493
518
  class NotFoundException < ServiceError
@@ -503,7 +528,6 @@ module Aws::KMS
503
528
  def message
504
529
  @message || @data[:message]
505
530
  end
506
-
507
531
  end
508
532
 
509
533
  class TagException < ServiceError
@@ -519,7 +543,6 @@ module Aws::KMS
519
543
  def message
520
544
  @message || @data[:message]
521
545
  end
522
-
523
546
  end
524
547
 
525
548
  class UnsupportedOperationException < ServiceError
@@ -535,7 +558,6 @@ module Aws::KMS
535
558
  def message
536
559
  @message || @data[:message]
537
560
  end
538
-
539
561
  end
540
562
 
541
563
  end
@@ -6,6 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::KMS
9
+
9
10
  class Resource
10
11
 
11
12
  # @param options ({})
@@ -324,6 +324,9 @@ module Aws::KMS
324
324
  # in the specified AWS CloudHSM cluster. AWS KMS logs into the cluster
325
325
  # as this user to manage key material on your behalf.
326
326
  #
327
+ # The password must be a string of 7 to 32 characters. Its value is
328
+ # case sensitive.
329
+ #
327
330
  # This parameter tells AWS KMS the `kmsuser` account password; it does
328
331
  # not change the password in the AWS CloudHSM cluster.
329
332
  #
@@ -555,7 +558,7 @@ module Aws::KMS
555
558
  # policy to the CMK. For more information, see [Default Key Policy][3]
556
559
  # in the *AWS Key Management Service Developer Guide*.
557
560
  #
558
- # The key policy size limit is 32 kilobytes (32768 bytes).
561
+ # The key policy size quota is 32 kilobytes (32768 bytes).
559
562
  #
560
563
  #
561
564
  #
@@ -589,20 +592,26 @@ module Aws::KMS
589
592
  # @return [String]
590
593
  #
591
594
  # @!attribute [rw] customer_master_key_spec
592
- # Specifies the type of CMK to create. The `CustomerMasterKeySpec`
593
- # determines whether the CMK contains a symmetric key or an asymmetric
594
- # key pair. It also determines the encryption algorithms or signing
595
- # algorithms that the CMK supports. You can't change the
596
- # `CustomerMasterKeySpec` after the CMK is created. To further
597
- # restrict the algorithms that can be used with the CMK, use its key
598
- # policy or IAM policy.
599
- #
600
- # For help with choosing a key spec for your CMK, see [Selecting a
601
- # Customer Master Key Spec][1] in the *AWS Key Management Service
602
- # Developer Guide*.
595
+ # Specifies the type of CMK to create. The default value,
596
+ # `SYMMETRIC_DEFAULT`, creates a CMK with a 256-bit symmetric key for
597
+ # encryption and decryption. For help choosing a key spec for your
598
+ # CMK, see [How to Choose Your CMK Configuration][1] in the *AWS Key
599
+ # Management Service Developer Guide*.
603
600
  #
604
- # The default value, `SYMMETRIC_DEFAULT`, creates a CMK with a 256-bit
605
- # symmetric key.
601
+ # The `CustomerMasterKeySpec` determines whether the CMK contains a
602
+ # symmetric key or an asymmetric key pair. It also determines the
603
+ # encryption algorithms or signing algorithms that the CMK supports.
604
+ # You can't change the `CustomerMasterKeySpec` after the CMK is
605
+ # created. To further restrict the algorithms that can be used with
606
+ # the CMK, use a condition key in its key policy or IAM policy. For
607
+ # more information, see [kms:EncryptionAlgorithm][2] or [kms:Signing
608
+ # Algorithm][3] in the *AWS Key Management Service Developer Guide*.
609
+ #
610
+ # [AWS services that are integrated with AWS KMS][4] use symmetric
611
+ # CMKs to protect your data. These services do not support asymmetric
612
+ # CMKs. For help determining whether a CMK is symmetric or asymmetric,
613
+ # see [Identifying Symmetric and Asymmetric CMKs][5] in the *AWS Key
614
+ # Management Service Developer Guide*.
606
615
  #
607
616
  # AWS KMS supports the following key specs for CMKs:
608
617
  #
@@ -637,7 +646,11 @@ module Aws::KMS
637
646
  #
638
647
  #
639
648
  #
640
- # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html#cmk-key-spec
649
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/symm-asymm-choose.html
650
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/policy-conditions.html#conditions-kms-encryption-algorithm
651
+ # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/policy-conditions.html#conditions-kms-signing-algorithm
652
+ # [4]: http://aws.amazon.com/kms/features/#AWS_Service_Integration
653
+ # [5]: https://docs.aws.amazon.com/kms/latest/developerguide/find-symm-asymm.html
641
654
  # @return [String]
642
655
  #
643
656
  # @!attribute [rw] origin
@@ -867,9 +880,10 @@ module Aws::KMS
867
880
  # AWS CloudHSM cluster is active and contains at least one active HSM.
868
881
  #
869
882
  # A value of `FAILED` indicates that an attempt to connect was
870
- # unsuccessful. For help resolving a connection failure, see
871
- # [Troubleshooting a Custom Key Store][1] in the *AWS Key Management
872
- # Service Developer Guide*.
883
+ # unsuccessful. The `ConnectionErrorCode` field in the response
884
+ # indicates the cause of the failure. For help resolving a connection
885
+ # failure, see [Troubleshooting a Custom Key Store][1] in the *AWS Key
886
+ # Management Service Developer Guide*.
873
887
  #
874
888
  #
875
889
  #
@@ -877,7 +891,12 @@ module Aws::KMS
877
891
  # @return [String]
878
892
  #
879
893
  # @!attribute [rw] connection_error_code
880
- # Describes the connection error. Valid values are:
894
+ # Describes the connection error. This field appears in the response
895
+ # only when the `ConnectionState` is `FAILED`. For help resolving
896
+ # these errors, see [How to Fix a Connection Failure][1] in *AWS Key
897
+ # Management Service Developer Guide*.
898
+ #
899
+ # Valid values are:
881
900
  #
882
901
  # * `CLUSTER_NOT_FOUND` - AWS KMS cannot find the AWS CloudHSM cluster
883
902
  # with the specified cluster ID.
@@ -893,23 +912,49 @@ module Aws::KMS
893
912
  # again.
894
913
  #
895
914
  # * `INVALID_CREDENTIALS` - AWS KMS does not have the correct password
896
- # for the `kmsuser` crypto user in the AWS CloudHSM cluster.
915
+ # for the `kmsuser` crypto user in the AWS CloudHSM cluster. Before
916
+ # you can connect your custom key store to its AWS CloudHSM cluster,
917
+ # you must change the `kmsuser` account password and update the key
918
+ # store password value for the custom key store.
897
919
  #
898
920
  # * `NETWORK_ERRORS` - Network errors are preventing AWS KMS from
899
921
  # connecting to the custom key store.
900
922
  #
923
+ # * `SUBNET_NOT_FOUND` - A subnet in the AWS CloudHSM cluster
924
+ # configuration was deleted. If AWS KMS cannot find all of the
925
+ # subnets that were configured for the cluster when the custom key
926
+ # store was created, attempts to connect fail. To fix this error,
927
+ # create a cluster from a backup and associate it with your custom
928
+ # key store. This process includes selecting a VPC and subnets. For
929
+ # details, see [How to Fix a Connection Failure][1] in the *AWS Key
930
+ # Management Service Developer Guide*.
931
+ #
901
932
  # * `USER_LOCKED_OUT` - The `kmsuser` CU account is locked out of the
902
933
  # associated AWS CloudHSM cluster due to too many failed password
903
934
  # attempts. Before you can connect your custom key store to its AWS
904
935
  # CloudHSM cluster, you must change the `kmsuser` account password
905
- # and update the password value for the custom key store.
936
+ # and update the key store password value for the custom key store.
906
937
  #
907
- # For help with connection failures, see [Troubleshooting Custom Key
908
- # Stores][1] in the *AWS Key Management Service Developer Guide*.
938
+ # * `USER_LOGGED_IN` - The `kmsuser` CU account is logged into the the
939
+ # associated AWS CloudHSM cluster. This prevents AWS KMS from
940
+ # rotating the `kmsuser` account password and logging into the
941
+ # cluster. Before you can connect your custom key store to its AWS
942
+ # CloudHSM cluster, you must log the `kmsuser` CU out of the
943
+ # cluster. If you changed the `kmsuser` password to log into the
944
+ # cluster, you must also and update the key store password value for
945
+ # the custom key store. For help, see [How to Log Out and
946
+ # Reconnect][2] in the *AWS Key Management Service Developer Guide*.
909
947
  #
948
+ # * `USER_NOT_FOUND` - AWS KMS cannot find a `kmsuser` CU account in
949
+ # the associated AWS CloudHSM cluster. Before you can connect your
950
+ # custom key store to its AWS CloudHSM cluster, you must create a
951
+ # `kmsuser` CU account in the cluster, and then update the key store
952
+ # password value for the custom key store.
910
953
  #
911
954
  #
912
- # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/fix-keystore.html
955
+ #
956
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/fix-keystore.html#fix-keystore-failed
957
+ # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/fix-keystore.html#login-kmsuser-2
913
958
  # @return [String]
914
959
  #
915
960
  # @!attribute [rw] creation_date
@@ -1745,7 +1790,7 @@ module Aws::KMS
1745
1790
  # @!attribute [rw] key_id
1746
1791
  # Specifies the CMK that encrypts the private key in the data key
1747
1792
  # pair. You must specify a symmetric CMK. You cannot use an asymmetric
1748
- # CMK.
1793
+ # CMK. To get the type of your CMK, use the DescribeKey operation.
1749
1794
  #
1750
1795
  # To specify a CMK, use its key ID, Amazon Resource Name (ARN), alias
1751
1796
  # name, or alias ARN. When using an alias name, prefix it with
@@ -1809,7 +1854,7 @@ module Aws::KMS
1809
1854
  # @!attribute [rw] key_id
1810
1855
  # Specifies the CMK that encrypted the private key in the data key
1811
1856
  # pair. You must specify a symmetric CMK. You cannot use an asymmetric
1812
- # CMK.
1857
+ # CMK. To get the type of your CMK, use the DescribeKey operation.
1813
1858
  #
1814
1859
  # To specify a CMK, use its key ID, Amazon Resource Name (ARN), alias
1815
1860
  # name, or alias ARN. When using an alias name, prefix it with
@@ -2346,14 +2391,16 @@ module Aws::KMS
2346
2391
  # @!attribute [rw] public_key
2347
2392
  # The exported public key.
2348
2393
  #
2349
- # This value is returned as a binary [Distinguished Encoding Rules][1]
2350
- # (DER)-encoded object. To decode it, use an ASN.1 parsing tool, such
2351
- # as [OpenSSL asn1parse][2].
2394
+ # The value is a DER-encoded X.509 public key, also known as
2395
+ # `SubjectPublicKeyInfo` (SPKI), as defined in [RFC 5280][1]. When you
2396
+ # use the HTTP API or the AWS CLI, the value is Base64-encoded.
2397
+ # Otherwise, it is not Base64-encoded.
2352
2398
  #
2353
2399
  #
2354
2400
  #
2355
- # [1]: https://www.itu.int/ITU-T/studygroups/com17/languages/X.690-0207.pdf
2356
- # [2]: https://www.openssl.org/docs/man1.0.2/man1/asn1parse.html
2401
+ #
2402
+ #
2403
+ # [1]: https://tools.ietf.org/html/rfc5280
2357
2404
  # @return [String]
2358
2405
  #
2359
2406
  # @!attribute [rw] customer_master_key_spec
@@ -3016,8 +3063,8 @@ module Aws::KMS
3016
3063
  include Aws::Structure
3017
3064
  end
3018
3065
 
3019
- # The request was rejected because a limit was exceeded. For more
3020
- # information, see [Limits][1] in the *AWS Key Management Service
3066
+ # The request was rejected because a quota was exceeded. For more
3067
+ # information, see [Quotas][1] in the *AWS Key Management Service
3021
3068
  # Developer Guide*.
3022
3069
  #
3023
3070
  #
@@ -3521,12 +3568,15 @@ module Aws::KMS
3521
3568
  # visible][2] in the *AWS Identity and Access Management User
3522
3569
  # Guide*.
3523
3570
  #
3524
- # The key policy size limit is 32 kilobytes (32768 bytes).
3571
+ # The key policy cannot exceed 32 kilobytes (32768 bytes). For more
3572
+ # information, see [Resource Quotas][3] in the *AWS Key Management
3573
+ # Service Developer Guide*.
3525
3574
  #
3526
3575
  #
3527
3576
  #
3528
3577
  # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-root-enable-iam
3529
3578
  # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_general.html#troubleshoot_general_eventual-consistency
3579
+ # [3]: https://docs.aws.amazon.com/kms/latest/developerguide/resource-limits.html
3530
3580
  # @return [String]
3531
3581
  #
3532
3582
  # @!attribute [rw] bypass_policy_lockout_safety_check
@@ -3949,8 +3999,8 @@ module Aws::KMS
3949
3999
  #
3950
4000
  # @!attribute [rw] message_type
3951
4001
  # Tells AWS KMS whether the value of the `Message` parameter is a
3952
- # message or message digest. To indicate a message, enter `RAW`. To
3953
- # indicate a message digest, enter `DIGEST`.
4002
+ # message or message digest. The default value, RAW, indicates a
4003
+ # message. To indicate a message digest, enter `DIGEST`.
3954
4004
  # @return [String]
3955
4005
  #
3956
4006
  # @!attribute [rw] grant_tokens
@@ -3989,6 +4039,23 @@ module Aws::KMS
3989
4039
  #
3990
4040
  # @!attribute [rw] signature
3991
4041
  # The cryptographic signature that was generated for the message.
4042
+ #
4043
+ # * When used with the supported RSA signing algorithms, the encoding
4044
+ # of this value is defined by [PKCS #1 in RFC 8017][1].
4045
+ #
4046
+ # * When used with the `ECDSA_SHA_256`, `ECDSA_SHA_384`, or
4047
+ # `ECDSA_SHA_512` signing algorithms, this value is a DER-encoded
4048
+ # object as defined by ANS X9.62–2005 and [RFC 3279 Section
4049
+ # 2.2.3][2]. This is the most commonly used signature format and is
4050
+ # appropriate for most uses.
4051
+ #
4052
+ # When you use the HTTP API or the AWS CLI, the value is
4053
+ # Base64-encoded. Otherwise, it is not Base64-encoded.
4054
+ #
4055
+ #
4056
+ #
4057
+ # [1]: https://tools.ietf.org/html/rfc8017
4058
+ # [2]: https://tools.ietf.org/html/rfc3279#section-2.2.3
3992
4059
  # @return [String]
3993
4060
  #
3994
4061
  # @!attribute [rw] signing_algorithm
@@ -4328,18 +4395,24 @@ module Aws::KMS
4328
4395
  # @return [String]
4329
4396
  #
4330
4397
  # @!attribute [rw] message
4331
- # Specifies the message that was signed, or a hash digest of that
4332
- # message. Messages can be 0-4096 bytes. To verify a larger message,
4333
- # provide a hash digest of the message.
4398
+ # Specifies the message that was signed. You can submit a raw message
4399
+ # of up to 4096 bytes, or a hash digest of the message. If you submit
4400
+ # a digest, use the `MessageType` parameter with a value of `DIGEST`.
4334
4401
  #
4335
- # If the digest of the message specified here is different from the
4336
- # message digest that was signed, the signature verification fails.
4402
+ # If the message specified here is different from the message that was
4403
+ # signed, the signature verification fails. A message and its hash
4404
+ # digest are considered to be the same message.
4337
4405
  # @return [String]
4338
4406
  #
4339
4407
  # @!attribute [rw] message_type
4340
4408
  # Tells AWS KMS whether the value of the `Message` parameter is a
4341
- # message or message digest. To indicate a message, enter `RAW`. To
4342
- # indicate a message digest, enter `DIGEST`.
4409
+ # message or message digest. The default value, RAW, indicates a
4410
+ # message. To indicate a message digest, enter `DIGEST`.
4411
+ #
4412
+ # Use the `DIGEST` value only when the value of the `Message`
4413
+ # parameter is a message digest. If you use the `DIGEST` value with a
4414
+ # raw message, the security of the verification operation can be
4415
+ # compromised.
4343
4416
  # @return [String]
4344
4417
  #
4345
4418
  # @!attribute [rw] signature
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-kms
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.27.0
4
+ version: 1.32.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-12-09 00:00:00.000000000 Z
11
+ date: 2020-05-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -81,7 +81,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
81
81
  version: '0'
82
82
  requirements: []
83
83
  rubyforge_project:
84
- rubygems_version: 2.5.2.3
84
+ rubygems_version: 2.7.6.2
85
85
  signing_key:
86
86
  specification_version: 4
87
87
  summary: AWS SDK for Ruby - KMS