aws-sdk-kms 1.26.0 → 1.27.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/aws-sdk-kms.rb +1 -1
- data/lib/aws-sdk-kms/client.rb +46 -51
- data/lib/aws-sdk-kms/client_api.rb +7 -0
- data/lib/aws-sdk-kms/errors.rb +16 -0
- data/lib/aws-sdk-kms/types.rb +23 -10
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6a983aaa03a80ed7188f61a1bab13d7bcddf5701
|
4
|
+
data.tar.gz: 155fd553e0ddd8cb820d3f1b4e8f051177446d1f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 39eb4bc0cfd2bb7b6cd062d5b1b54052edf5868d720bae9f20359a75b8c84721b676e20444e4454b446b576ea5009ff5d5b3259094d82a0d8eb758abd27af195
|
7
|
+
data.tar.gz: 0fd429e969b0ba7461822783be9b7ea9e77239e021ff189bdeb729327ff2179b887009eacdd77d237f32ae622851fd483cb539fe69717f9d670799e779731741
|
data/lib/aws-sdk-kms.rb
CHANGED
data/lib/aws-sdk-kms/client.rb
CHANGED
@@ -3215,19 +3215,18 @@ module Aws::KMS
|
|
3215
3215
|
# authorization, and logging that are part of every AWS KMS operation.
|
3216
3216
|
# You also reduce of risk of encrypting data that cannot be decrypted.
|
3217
3217
|
# These features are not effective outside of AWS KMS. For details, see
|
3218
|
-
# [Special Considerations for Downloading Public
|
3219
|
-
# Keys](kms/latest/developerguide/get-public-key.html#get-public-key-considerations).
|
3218
|
+
# [Special Considerations for Downloading Public Keys][2].
|
3220
3219
|
#
|
3221
3220
|
# To help you use the public key safely outside of AWS KMS,
|
3222
3221
|
# `GetPublicKey` returns important information about the public key in
|
3223
3222
|
# the response, including:
|
3224
3223
|
#
|
3225
|
-
# * [CustomerMasterKeySpec][
|
3224
|
+
# * [CustomerMasterKeySpec][3]\: The type of key material in the public
|
3226
3225
|
# key, such as `RSA_4096` or `ECC_NIST_P521`.
|
3227
3226
|
#
|
3228
|
-
# * [KeyUsage][
|
3227
|
+
# * [KeyUsage][4]\: Whether the key is used for encryption or signing.
|
3229
3228
|
#
|
3230
|
-
# * [EncryptionAlgorithms][
|
3229
|
+
# * [EncryptionAlgorithms][5] or [SigningAlgorithms][6]\: A list of the
|
3231
3230
|
# encryption algorithms or the signing algorithms for the key.
|
3232
3231
|
#
|
3233
3232
|
# Although AWS KMS cannot enforce these restrictions on external
|
@@ -3240,16 +3239,17 @@ module Aws::KMS
|
|
3240
3239
|
#
|
3241
3240
|
# The CMK that you use for this operation must be in a compatible key
|
3242
3241
|
# state. For details, see [How Key State Affects Use of a Customer
|
3243
|
-
# Master Key][
|
3242
|
+
# Master Key][7] in the *AWS Key Management Service Developer Guide*.
|
3244
3243
|
#
|
3245
3244
|
#
|
3246
3245
|
#
|
3247
3246
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
|
3248
|
-
# [2]: https://docs.aws.amazon.com/kms/latest/
|
3249
|
-
# [3]: https://docs.aws.amazon.com/kms/latest/APIReference/API_GetPublicKey.html#KMS-GetPublicKey-response-
|
3250
|
-
# [4]: https://docs.aws.amazon.com/kms/latest/APIReference/API_GetPublicKey.html#KMS-GetPublicKey-response-
|
3251
|
-
# [5]: https://docs.aws.amazon.com/kms/latest/APIReference/API_GetPublicKey.html#KMS-GetPublicKey-response-
|
3252
|
-
# [6]: https://docs.aws.amazon.com/kms/latest/
|
3247
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/download-public-key.html#download-public-key-considerations
|
3248
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/APIReference/API_GetPublicKey.html#KMS-GetPublicKey-response-CustomerMasterKeySpec
|
3249
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/APIReference/API_GetPublicKey.html#KMS-GetPublicKey-response-KeyUsage
|
3250
|
+
# [5]: https://docs.aws.amazon.com/kms/latest/APIReference/API_GetPublicKey.html#KMS-GetPublicKey-response-EncryptionAlgorithms
|
3251
|
+
# [6]: https://docs.aws.amazon.com/kms/latest/APIReference/API_GetPublicKey.html#KMS-GetPublicKey-response-SigningAlgorithms
|
3252
|
+
# [7]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
3253
3253
|
#
|
3254
3254
|
# @option params [required, String] :key_id
|
3255
3255
|
# Identifies the asymmetric CMK that includes the public key.
|
@@ -4208,10 +4208,9 @@ module Aws::KMS
|
|
4208
4208
|
|
4209
4209
|
# Decrypts ciphertext and then reencrypts it entirely within AWS KMS.
|
4210
4210
|
# You can use this operation to change the customer master key (CMK)
|
4211
|
-
# under which data is encrypted, such as when you [manually
|
4212
|
-
#
|
4213
|
-
#
|
4214
|
-
# it to reencrypt ciphertext under the same CMK, such as to change the
|
4211
|
+
# under which data is encrypted, such as when you [manually rotate][1] a
|
4212
|
+
# CMK or change the CMK that protects a ciphertext. You can also use it
|
4213
|
+
# to reencrypt ciphertext under the same CMK, such as to change the
|
4215
4214
|
# encryption context of a ciphertext.
|
4216
4215
|
#
|
4217
4216
|
# The `ReEncrypt` operation can decrypt ciphertext that was encrypted by
|
@@ -4219,7 +4218,7 @@ module Aws::KMS
|
|
4219
4218
|
# GenerateDataKey. It can also decrypt ciphertext that was encrypted by
|
4220
4219
|
# using the public key of an asymmetric CMK outside of AWS KMS. However,
|
4221
4220
|
# it cannot decrypt ciphertext produced by other libraries, such as the
|
4222
|
-
# [AWS Encryption SDK][
|
4221
|
+
# [AWS Encryption SDK][2] or [Amazon S3 client-side encryption][3].
|
4223
4222
|
# These libraries return a ciphertext format that is incompatible with
|
4224
4223
|
# AWS KMS.
|
4225
4224
|
#
|
@@ -4266,21 +4265,22 @@ module Aws::KMS
|
|
4266
4265
|
# To permit reencryption from
|
4267
4266
|
#
|
4268
4267
|
# or to a CMK, include the `"kms:ReEncrypt*"` permission in your [key
|
4269
|
-
# policy][
|
4268
|
+
# policy][4]. This permission is automatically included in the key
|
4270
4269
|
# policy when you use the console to create a CMK. But you must include
|
4271
4270
|
# it manually when you create a CMK programmatically or when you use the
|
4272
4271
|
# PutKeyPolicy operation set a key policy.
|
4273
4272
|
#
|
4274
4273
|
# The CMK that you use for this operation must be in a compatible key
|
4275
4274
|
# state. For details, see [How Key State Affects Use of a Customer
|
4276
|
-
# Master Key][
|
4275
|
+
# Master Key][5] in the *AWS Key Management Service Developer Guide*.
|
4277
4276
|
#
|
4278
4277
|
#
|
4279
4278
|
#
|
4280
|
-
# [1]: https://docs.aws.amazon.com/
|
4281
|
-
# [2]: https://docs.aws.amazon.com/
|
4282
|
-
# [3]: https://docs.aws.amazon.com/
|
4283
|
-
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/key-
|
4279
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html#rotate-keys-manually
|
4280
|
+
# [2]: https://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/
|
4281
|
+
# [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingClientSideEncryption.html
|
4282
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html
|
4283
|
+
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
4284
4284
|
#
|
4285
4285
|
# @option params [required, String, IO] :ciphertext_blob
|
4286
4286
|
# Ciphertext of the data to reencrypt.
|
@@ -5215,38 +5215,35 @@ module Aws::KMS
|
|
5215
5215
|
end
|
5216
5216
|
|
5217
5217
|
# Verifies a digital signature that was generated by the Sign operation.
|
5218
|
-
# This operation requires an asymmetric CMK with a `KeyUsage` value of
|
5219
|
-
# `SIGN_VERIFY`.
|
5220
5218
|
#
|
5221
5219
|
#
|
5222
5220
|
#
|
5223
5221
|
# Verification confirms that an authorized user signed the message with
|
5224
|
-
# the specified
|
5225
|
-
# changed since it was signed.
|
5226
|
-
# the
|
5227
|
-
#
|
5228
|
-
#
|
5229
|
-
#
|
5222
|
+
# the specified CMK and signing algorithm, and the message hasn't
|
5223
|
+
# changed since it was signed. If the signature is verified, the value
|
5224
|
+
# of the `SignatureValid` field in the response is `True`. If the
|
5225
|
+
# signature verification fails, the `Verify` operation fails with an
|
5226
|
+
# `KMSInvalidSignatureException` exception.
|
5227
|
+
#
|
5228
|
+
# A digital signature is generated by using the private key in an
|
5229
|
+
# asymmetric CMK. The signature is verified by using the public key in
|
5230
|
+
# the same asymmetric CMK. For information about symmetric and
|
5231
|
+
# asymmetric CMKs, see [Using Symmetric and Asymmetric CMKs][1] in the
|
5232
|
+
# *AWS Key Management Service Developer Guide*.
|
5230
5233
|
#
|
5231
5234
|
# To verify a digital signature, you can use the `Verify` operation.
|
5232
|
-
# Specify the same asymmetric CMK
|
5233
|
-
# to
|
5235
|
+
# Specify the same asymmetric CMK, message, and signing algorithm that
|
5236
|
+
# were used to produce the signature.
|
5234
5237
|
#
|
5235
5238
|
# You can also verify the digital signature by using the public key of
|
5236
5239
|
# the CMK outside of AWS KMS. Use the GetPublicKey operation to download
|
5237
5240
|
# the public key in the asymmetric CMK and then use the public key to
|
5238
|
-
# verify the signature outside of AWS KMS.
|
5239
|
-
#
|
5240
|
-
#
|
5241
|
-
#
|
5242
|
-
#
|
5243
|
-
#
|
5244
|
-
# authorized to use the CMK to verify signatures.
|
5245
|
-
#
|
5246
|
-
# The result of the `Verify` operation, which is represented by its HTTP
|
5247
|
-
# status code, does not indicate whether the signature verification
|
5248
|
-
# succeeded or failed. To determine whether the signature was verified,
|
5249
|
-
# see the `SignatureValid` field in the response.
|
5241
|
+
# verify the signature outside of AWS KMS. The advantage of using the
|
5242
|
+
# `Verify` operation is that it is performed within AWS KMS. As a
|
5243
|
+
# result, it's easy to call, the operation is performed within the FIPS
|
5244
|
+
# boundary, it is logged in AWS CloudTrail, and you can use key policy
|
5245
|
+
# and IAM policy to determine who is authorized to use the CMK to verify
|
5246
|
+
# signatures.
|
5250
5247
|
#
|
5251
5248
|
# The CMK that you use for this operation must be in a compatible key
|
5252
5249
|
# state. For details, see [How Key State Affects Use of a Customer
|
@@ -5260,8 +5257,8 @@ module Aws::KMS
|
|
5260
5257
|
# @option params [required, String] :key_id
|
5261
5258
|
# Identifies the asymmetric CMK that will be used to verify the
|
5262
5259
|
# signature. This must be the same CMK that was used to generate the
|
5263
|
-
# signature. If you specify a different CMK, the
|
5264
|
-
#
|
5260
|
+
# signature. If you specify a different CMK, the signature verification
|
5261
|
+
# fails.
|
5265
5262
|
#
|
5266
5263
|
# To specify a CMK, use its key ID, Amazon Resource Name (ARN), alias
|
5267
5264
|
# name, or alias ARN. When using an alias name, prefix it with
|
@@ -5288,8 +5285,7 @@ module Aws::KMS
|
|
5288
5285
|
# provide a hash digest of the message.
|
5289
5286
|
#
|
5290
5287
|
# If the digest of the message specified here is different from the
|
5291
|
-
# message digest that was signed, the
|
5292
|
-
# response will be `False`.
|
5288
|
+
# message digest that was signed, the signature verification fails.
|
5293
5289
|
#
|
5294
5290
|
# @option params [String] :message_type
|
5295
5291
|
# Tells AWS KMS whether the value of the `Message` parameter is a
|
@@ -5301,8 +5297,7 @@ module Aws::KMS
|
|
5301
5297
|
#
|
5302
5298
|
# @option params [required, String] :signing_algorithm
|
5303
5299
|
# The signing algorithm that was used to sign the message. If you submit
|
5304
|
-
# a different algorithm, the
|
5305
|
-
# response will be `False`.
|
5300
|
+
# a different algorithm, the signature verification fails.
|
5306
5301
|
#
|
5307
5302
|
# @option params [Array<String>] :grant_tokens
|
5308
5303
|
# A list of grant tokens.
|
@@ -5359,7 +5354,7 @@ module Aws::KMS
|
|
5359
5354
|
params: params,
|
5360
5355
|
config: config)
|
5361
5356
|
context[:gem_name] = 'aws-sdk-kms'
|
5362
|
-
context[:gem_version] = '1.
|
5357
|
+
context[:gem_version] = '1.27.0'
|
5363
5358
|
Seahorse::Client::Request.new(handlers, context)
|
5364
5359
|
end
|
5365
5360
|
|
@@ -121,6 +121,7 @@ module Aws::KMS
|
|
121
121
|
InvalidKeyUsageException = Shapes::StructureShape.new(name: 'InvalidKeyUsageException')
|
122
122
|
InvalidMarkerException = Shapes::StructureShape.new(name: 'InvalidMarkerException')
|
123
123
|
KMSInternalException = Shapes::StructureShape.new(name: 'KMSInternalException')
|
124
|
+
KMSInvalidSignatureException = Shapes::StructureShape.new(name: 'KMSInvalidSignatureException')
|
124
125
|
KMSInvalidStateException = Shapes::StructureShape.new(name: 'KMSInvalidStateException')
|
125
126
|
KeyIdType = Shapes::StringShape.new(name: 'KeyIdType')
|
126
127
|
KeyList = Shapes::ListShape.new(name: 'KeyList')
|
@@ -525,6 +526,9 @@ module Aws::KMS
|
|
525
526
|
KMSInternalException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessageType, location_name: "message"))
|
526
527
|
KMSInternalException.struct_class = Types::KMSInternalException
|
527
528
|
|
529
|
+
KMSInvalidSignatureException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessageType, location_name: "message"))
|
530
|
+
KMSInvalidSignatureException.struct_class = Types::KMSInvalidSignatureException
|
531
|
+
|
528
532
|
KMSInvalidStateException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessageType, location_name: "message"))
|
529
533
|
KMSInvalidStateException.struct_class = Types::KMSInvalidStateException
|
530
534
|
|
@@ -1344,6 +1348,7 @@ module Aws::KMS
|
|
1344
1348
|
o.errors << Shapes::ShapeRef.new(shape: InvalidKeyUsageException)
|
1345
1349
|
o.errors << Shapes::ShapeRef.new(shape: InvalidGrantTokenException)
|
1346
1350
|
o.errors << Shapes::ShapeRef.new(shape: KMSInternalException)
|
1351
|
+
o.errors << Shapes::ShapeRef.new(shape: KMSInvalidStateException)
|
1347
1352
|
end)
|
1348
1353
|
|
1349
1354
|
api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
|
@@ -1427,6 +1432,8 @@ module Aws::KMS
|
|
1427
1432
|
o.errors << Shapes::ShapeRef.new(shape: InvalidKeyUsageException)
|
1428
1433
|
o.errors << Shapes::ShapeRef.new(shape: InvalidGrantTokenException)
|
1429
1434
|
o.errors << Shapes::ShapeRef.new(shape: KMSInternalException)
|
1435
|
+
o.errors << Shapes::ShapeRef.new(shape: KMSInvalidStateException)
|
1436
|
+
o.errors << Shapes::ShapeRef.new(shape: KMSInvalidSignatureException)
|
1430
1437
|
end)
|
1431
1438
|
end
|
1432
1439
|
|
data/lib/aws-sdk-kms/errors.rb
CHANGED
@@ -410,6 +410,22 @@ module Aws::KMS
|
|
410
410
|
|
411
411
|
end
|
412
412
|
|
413
|
+
class KMSInvalidSignatureException < ServiceError
|
414
|
+
|
415
|
+
# @param [Seahorse::Client::RequestContext] context
|
416
|
+
# @param [String] message
|
417
|
+
# @param [Aws::KMS::Types::KMSInvalidSignatureException] data
|
418
|
+
def initialize(context, message, data = Aws::EmptyStructure.new)
|
419
|
+
super(context, message, data)
|
420
|
+
end
|
421
|
+
|
422
|
+
# @return [String]
|
423
|
+
def message
|
424
|
+
@message || @data[:message]
|
425
|
+
end
|
426
|
+
|
427
|
+
end
|
428
|
+
|
413
429
|
class KMSInvalidStateException < ServiceError
|
414
430
|
|
415
431
|
# @param [Seahorse::Client::RequestContext] context
|
data/lib/aws-sdk-kms/types.rb
CHANGED
@@ -2792,6 +2792,21 @@ module Aws::KMS
|
|
2792
2792
|
include Aws::Structure
|
2793
2793
|
end
|
2794
2794
|
|
2795
|
+
# The request was rejected because the signature verification failed.
|
2796
|
+
# Signature verification fails when it cannot confirm that signature was
|
2797
|
+
# produced by signing the specified message with the specified CMK and
|
2798
|
+
# signing algorithm.
|
2799
|
+
#
|
2800
|
+
# @!attribute [rw] message
|
2801
|
+
# @return [String]
|
2802
|
+
#
|
2803
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/KMSInvalidSignatureException AWS API Documentation
|
2804
|
+
#
|
2805
|
+
class KMSInvalidSignatureException < Struct.new(
|
2806
|
+
:message)
|
2807
|
+
include Aws::Structure
|
2808
|
+
end
|
2809
|
+
|
2795
2810
|
# The request was rejected because the state of the specified resource
|
2796
2811
|
# is not valid for this request.
|
2797
2812
|
#
|
@@ -4289,8 +4304,8 @@ module Aws::KMS
|
|
4289
4304
|
# @!attribute [rw] key_id
|
4290
4305
|
# Identifies the asymmetric CMK that will be used to verify the
|
4291
4306
|
# signature. This must be the same CMK that was used to generate the
|
4292
|
-
# signature. If you specify a different CMK, the
|
4293
|
-
#
|
4307
|
+
# signature. If you specify a different CMK, the signature
|
4308
|
+
# verification fails.
|
4294
4309
|
#
|
4295
4310
|
# To specify a CMK, use its key ID, Amazon Resource Name (ARN), alias
|
4296
4311
|
# name, or alias ARN. When using an alias name, prefix it with
|
@@ -4318,8 +4333,7 @@ module Aws::KMS
|
|
4318
4333
|
# provide a hash digest of the message.
|
4319
4334
|
#
|
4320
4335
|
# If the digest of the message specified here is different from the
|
4321
|
-
# message digest that was signed, the
|
4322
|
-
# response will be `False`.
|
4336
|
+
# message digest that was signed, the signature verification fails.
|
4323
4337
|
# @return [String]
|
4324
4338
|
#
|
4325
4339
|
# @!attribute [rw] message_type
|
@@ -4334,8 +4348,7 @@ module Aws::KMS
|
|
4334
4348
|
#
|
4335
4349
|
# @!attribute [rw] signing_algorithm
|
4336
4350
|
# The signing algorithm that was used to sign the message. If you
|
4337
|
-
# submit a different algorithm, the
|
4338
|
-
# field in the response will be `False`.
|
4351
|
+
# submit a different algorithm, the signature verification fails.
|
4339
4352
|
# @return [String]
|
4340
4353
|
#
|
4341
4354
|
# @!attribute [rw] grant_tokens
|
@@ -4368,10 +4381,10 @@ module Aws::KMS
|
|
4368
4381
|
#
|
4369
4382
|
# @!attribute [rw] signature_valid
|
4370
4383
|
# A Boolean value that indicates whether the signature was verified. A
|
4371
|
-
# value of True indicates that the `Signature` was produced by
|
4372
|
-
# the `Message` with the specified KeyID and
|
4373
|
-
#
|
4374
|
-
#
|
4384
|
+
# value of `True` indicates that the `Signature` was produced by
|
4385
|
+
# signing the `Message` with the specified `KeyID` and
|
4386
|
+
# `SigningAlgorithm.` If the signature is not verified, the `Verify`
|
4387
|
+
# operation fails with a `KMSInvalidSignatureException` exception.
|
4375
4388
|
# @return [Boolean]
|
4376
4389
|
#
|
4377
4390
|
# @!attribute [rw] signing_algorithm
|
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.
|
4
|
+
version: 1.27.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-
|
11
|
+
date: 2019-12-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk-core
|