aws-sdk-kms 1.76.0 → 1.118.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.
@@ -7,6 +7,7 @@
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
10
+
10
11
  module Aws::KMS
11
12
  # @api private
12
13
  module ClientApi
@@ -14,6 +15,7 @@ module Aws::KMS
14
15
  include Seahorse::Model
15
16
 
16
17
  AWSAccountIdType = Shapes::StringShape.new(name: 'AWSAccountIdType')
18
+ AccountIdType = Shapes::StringShape.new(name: 'AccountIdType')
17
19
  AlgorithmSpec = Shapes::StringShape.new(name: 'AlgorithmSpec')
18
20
  AliasList = Shapes::ListShape.new(name: 'AliasList')
19
21
  AliasListEntry = Shapes::StructureShape.new(name: 'AliasListEntry')
@@ -21,6 +23,8 @@ module Aws::KMS
21
23
  AlreadyExistsException = Shapes::StructureShape.new(name: 'AlreadyExistsException')
22
24
  ArnType = Shapes::StringShape.new(name: 'ArnType')
23
25
  AttestationDocumentType = Shapes::BlobShape.new(name: 'AttestationDocumentType')
26
+ BackingKeyIdResponseType = Shapes::StringShape.new(name: 'BackingKeyIdResponseType')
27
+ BackingKeyIdType = Shapes::StringShape.new(name: 'BackingKeyIdType')
24
28
  BooleanType = Shapes::BooleanShape.new(name: 'BooleanType')
25
29
  CancelKeyDeletionRequest = Shapes::StructureShape.new(name: 'CancelKeyDeletionRequest')
26
30
  CancelKeyDeletionResponse = Shapes::StructureShape.new(name: 'CancelKeyDeletionResponse')
@@ -31,6 +35,7 @@ module Aws::KMS
31
35
  CloudHsmClusterNotActiveException = Shapes::StructureShape.new(name: 'CloudHsmClusterNotActiveException')
32
36
  CloudHsmClusterNotFoundException = Shapes::StructureShape.new(name: 'CloudHsmClusterNotFoundException')
33
37
  CloudHsmClusterNotRelatedException = Shapes::StructureShape.new(name: 'CloudHsmClusterNotRelatedException')
38
+ ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
34
39
  ConnectCustomKeyStoreRequest = Shapes::StructureShape.new(name: 'ConnectCustomKeyStoreRequest')
35
40
  ConnectCustomKeyStoreResponse = Shapes::StructureShape.new(name: 'ConnectCustomKeyStoreResponse')
36
41
  ConnectionErrorCodeType = Shapes::StringShape.new(name: 'ConnectionErrorCodeType')
@@ -61,7 +66,10 @@ module Aws::KMS
61
66
  DeleteCustomKeyStoreRequest = Shapes::StructureShape.new(name: 'DeleteCustomKeyStoreRequest')
62
67
  DeleteCustomKeyStoreResponse = Shapes::StructureShape.new(name: 'DeleteCustomKeyStoreResponse')
63
68
  DeleteImportedKeyMaterialRequest = Shapes::StructureShape.new(name: 'DeleteImportedKeyMaterialRequest')
69
+ DeleteImportedKeyMaterialResponse = Shapes::StructureShape.new(name: 'DeleteImportedKeyMaterialResponse')
64
70
  DependencyTimeoutException = Shapes::StructureShape.new(name: 'DependencyTimeoutException')
71
+ DeriveSharedSecretRequest = Shapes::StructureShape.new(name: 'DeriveSharedSecretRequest')
72
+ DeriveSharedSecretResponse = Shapes::StructureShape.new(name: 'DeriveSharedSecretResponse')
65
73
  DescribeCustomKeyStoresRequest = Shapes::StructureShape.new(name: 'DescribeCustomKeyStoresRequest')
66
74
  DescribeCustomKeyStoresResponse = Shapes::StructureShape.new(name: 'DescribeCustomKeyStoresResponse')
67
75
  DescribeKeyRequest = Shapes::StructureShape.new(name: 'DescribeKeyRequest')
@@ -116,6 +124,9 @@ module Aws::KMS
116
124
  GrantTokenType = Shapes::StringShape.new(name: 'GrantTokenType')
117
125
  ImportKeyMaterialRequest = Shapes::StructureShape.new(name: 'ImportKeyMaterialRequest')
118
126
  ImportKeyMaterialResponse = Shapes::StructureShape.new(name: 'ImportKeyMaterialResponse')
127
+ ImportState = Shapes::StringShape.new(name: 'ImportState')
128
+ ImportType = Shapes::StringShape.new(name: 'ImportType')
129
+ IncludeKeyMaterial = Shapes::StringShape.new(name: 'IncludeKeyMaterial')
119
130
  IncorrectKeyException = Shapes::StructureShape.new(name: 'IncorrectKeyException')
120
131
  IncorrectKeyMaterialException = Shapes::StructureShape.new(name: 'IncorrectKeyMaterialException')
121
132
  IncorrectTrustAnchorException = Shapes::StructureShape.new(name: 'IncorrectTrustAnchorException')
@@ -131,11 +142,15 @@ module Aws::KMS
131
142
  KMSInvalidMacException = Shapes::StructureShape.new(name: 'KMSInvalidMacException')
132
143
  KMSInvalidSignatureException = Shapes::StructureShape.new(name: 'KMSInvalidSignatureException')
133
144
  KMSInvalidStateException = Shapes::StructureShape.new(name: 'KMSInvalidStateException')
145
+ KeyAgreementAlgorithmSpec = Shapes::StringShape.new(name: 'KeyAgreementAlgorithmSpec')
146
+ KeyAgreementAlgorithmSpecList = Shapes::ListShape.new(name: 'KeyAgreementAlgorithmSpecList')
134
147
  KeyEncryptionMechanism = Shapes::StringShape.new(name: 'KeyEncryptionMechanism')
135
148
  KeyIdType = Shapes::StringShape.new(name: 'KeyIdType')
136
149
  KeyList = Shapes::ListShape.new(name: 'KeyList')
137
150
  KeyListEntry = Shapes::StructureShape.new(name: 'KeyListEntry')
138
151
  KeyManagerType = Shapes::StringShape.new(name: 'KeyManagerType')
152
+ KeyMaterialDescriptionType = Shapes::StringShape.new(name: 'KeyMaterialDescriptionType')
153
+ KeyMaterialState = Shapes::StringShape.new(name: 'KeyMaterialState')
139
154
  KeyMetadata = Shapes::StructureShape.new(name: 'KeyMetadata')
140
155
  KeySpec = Shapes::StringShape.new(name: 'KeySpec')
141
156
  KeyState = Shapes::StringShape.new(name: 'KeyState')
@@ -150,6 +165,8 @@ module Aws::KMS
150
165
  ListGrantsResponse = Shapes::StructureShape.new(name: 'ListGrantsResponse')
151
166
  ListKeyPoliciesRequest = Shapes::StructureShape.new(name: 'ListKeyPoliciesRequest')
152
167
  ListKeyPoliciesResponse = Shapes::StructureShape.new(name: 'ListKeyPoliciesResponse')
168
+ ListKeyRotationsRequest = Shapes::StructureShape.new(name: 'ListKeyRotationsRequest')
169
+ ListKeyRotationsResponse = Shapes::StructureShape.new(name: 'ListKeyRotationsResponse')
153
170
  ListKeysRequest = Shapes::StructureShape.new(name: 'ListKeysRequest')
154
171
  ListKeysResponse = Shapes::StructureShape.new(name: 'ListKeysResponse')
155
172
  ListResourceTagsRequest = Shapes::StructureShape.new(name: 'ListResourceTagsRequest')
@@ -184,6 +201,12 @@ module Aws::KMS
184
201
  ReplicateKeyResponse = Shapes::StructureShape.new(name: 'ReplicateKeyResponse')
185
202
  RetireGrantRequest = Shapes::StructureShape.new(name: 'RetireGrantRequest')
186
203
  RevokeGrantRequest = Shapes::StructureShape.new(name: 'RevokeGrantRequest')
204
+ RotateKeyOnDemandRequest = Shapes::StructureShape.new(name: 'RotateKeyOnDemandRequest')
205
+ RotateKeyOnDemandResponse = Shapes::StructureShape.new(name: 'RotateKeyOnDemandResponse')
206
+ RotationPeriodInDaysType = Shapes::IntegerShape.new(name: 'RotationPeriodInDaysType')
207
+ RotationType = Shapes::StringShape.new(name: 'RotationType')
208
+ RotationsList = Shapes::ListShape.new(name: 'RotationsList')
209
+ RotationsListEntry = Shapes::StructureShape.new(name: 'RotationsListEntry')
187
210
  ScheduleKeyDeletionRequest = Shapes::StructureShape.new(name: 'ScheduleKeyDeletionRequest')
188
211
  ScheduleKeyDeletionResponse = Shapes::StructureShape.new(name: 'ScheduleKeyDeletionResponse')
189
212
  SignRequest = Shapes::StructureShape.new(name: 'SignRequest')
@@ -266,6 +289,9 @@ module Aws::KMS
266
289
  CloudHsmClusterNotRelatedException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessageType, location_name: "message"))
267
290
  CloudHsmClusterNotRelatedException.struct_class = Types::CloudHsmClusterNotRelatedException
268
291
 
292
+ ConflictException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessageType, location_name: "message"))
293
+ ConflictException.struct_class = Types::ConflictException
294
+
269
295
  ConnectCustomKeyStoreRequest.add_member(:custom_key_store_id, Shapes::ShapeRef.new(shape: CustomKeyStoreIdType, required: true, location_name: "CustomKeyStoreId"))
270
296
  ConnectCustomKeyStoreRequest.struct_class = Types::ConnectCustomKeyStoreRequest
271
297
 
@@ -283,6 +309,7 @@ module Aws::KMS
283
309
  CreateCustomKeyStoreRequest.add_member(:xks_proxy_uri_endpoint, Shapes::ShapeRef.new(shape: XksProxyUriEndpointType, location_name: "XksProxyUriEndpoint"))
284
310
  CreateCustomKeyStoreRequest.add_member(:xks_proxy_uri_path, Shapes::ShapeRef.new(shape: XksProxyUriPathType, location_name: "XksProxyUriPath"))
285
311
  CreateCustomKeyStoreRequest.add_member(:xks_proxy_vpc_endpoint_service_name, Shapes::ShapeRef.new(shape: XksProxyVpcEndpointServiceNameType, location_name: "XksProxyVpcEndpointServiceName"))
312
+ CreateCustomKeyStoreRequest.add_member(:xks_proxy_vpc_endpoint_service_owner, Shapes::ShapeRef.new(shape: AccountIdType, location_name: "XksProxyVpcEndpointServiceOwner"))
286
313
  CreateCustomKeyStoreRequest.add_member(:xks_proxy_authentication_credential, Shapes::ShapeRef.new(shape: XksProxyAuthenticationCredentialType, location_name: "XksProxyAuthenticationCredential"))
287
314
  CreateCustomKeyStoreRequest.add_member(:xks_proxy_connectivity, Shapes::ShapeRef.new(shape: XksProxyConnectivityType, location_name: "XksProxyConnectivity"))
288
315
  CreateCustomKeyStoreRequest.struct_class = Types::CreateCustomKeyStoreRequest
@@ -307,7 +334,7 @@ module Aws::KMS
307
334
  CreateKeyRequest.add_member(:policy, Shapes::ShapeRef.new(shape: PolicyType, location_name: "Policy"))
308
335
  CreateKeyRequest.add_member(:description, Shapes::ShapeRef.new(shape: DescriptionType, location_name: "Description"))
309
336
  CreateKeyRequest.add_member(:key_usage, Shapes::ShapeRef.new(shape: KeyUsageType, location_name: "KeyUsage"))
310
- CreateKeyRequest.add_member(:customer_master_key_spec, Shapes::ShapeRef.new(shape: CustomerMasterKeySpec, deprecated: true, location_name: "CustomerMasterKeySpec", metadata: {"deprecatedMessage"=>"This parameter has been deprecated. Instead, use the KeySpec parameter."}))
337
+ CreateKeyRequest.add_member(:customer_master_key_spec, Shapes::ShapeRef.new(shape: CustomerMasterKeySpec, deprecated: true, location_name: "CustomerMasterKeySpec", metadata: {"deprecatedMessage" => "This parameter has been deprecated. Instead, use the KeySpec parameter."}))
311
338
  CreateKeyRequest.add_member(:key_spec, Shapes::ShapeRef.new(shape: KeySpec, location_name: "KeySpec"))
312
339
  CreateKeyRequest.add_member(:origin, Shapes::ShapeRef.new(shape: OriginType, location_name: "Origin"))
313
340
  CreateKeyRequest.add_member(:custom_key_store_id, Shapes::ShapeRef.new(shape: CustomKeyStoreIdType, location_name: "CustomKeyStoreId"))
@@ -358,6 +385,7 @@ module Aws::KMS
358
385
  DecryptResponse.add_member(:plaintext, Shapes::ShapeRef.new(shape: PlaintextType, location_name: "Plaintext"))
359
386
  DecryptResponse.add_member(:encryption_algorithm, Shapes::ShapeRef.new(shape: EncryptionAlgorithmSpec, location_name: "EncryptionAlgorithm"))
360
387
  DecryptResponse.add_member(:ciphertext_for_recipient, Shapes::ShapeRef.new(shape: CiphertextType, location_name: "CiphertextForRecipient"))
388
+ DecryptResponse.add_member(:key_material_id, Shapes::ShapeRef.new(shape: BackingKeyIdType, location_name: "KeyMaterialId"))
361
389
  DecryptResponse.struct_class = Types::DecryptResponse
362
390
 
363
391
  DeleteAliasRequest.add_member(:alias_name, Shapes::ShapeRef.new(shape: AliasNameType, required: true, location_name: "AliasName"))
@@ -369,11 +397,31 @@ module Aws::KMS
369
397
  DeleteCustomKeyStoreResponse.struct_class = Types::DeleteCustomKeyStoreResponse
370
398
 
371
399
  DeleteImportedKeyMaterialRequest.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, required: true, location_name: "KeyId"))
400
+ DeleteImportedKeyMaterialRequest.add_member(:key_material_id, Shapes::ShapeRef.new(shape: BackingKeyIdType, location_name: "KeyMaterialId"))
372
401
  DeleteImportedKeyMaterialRequest.struct_class = Types::DeleteImportedKeyMaterialRequest
373
402
 
403
+ DeleteImportedKeyMaterialResponse.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, location_name: "KeyId"))
404
+ DeleteImportedKeyMaterialResponse.add_member(:key_material_id, Shapes::ShapeRef.new(shape: BackingKeyIdResponseType, location_name: "KeyMaterialId"))
405
+ DeleteImportedKeyMaterialResponse.struct_class = Types::DeleteImportedKeyMaterialResponse
406
+
374
407
  DependencyTimeoutException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessageType, location_name: "message"))
375
408
  DependencyTimeoutException.struct_class = Types::DependencyTimeoutException
376
409
 
410
+ DeriveSharedSecretRequest.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, required: true, location_name: "KeyId"))
411
+ DeriveSharedSecretRequest.add_member(:key_agreement_algorithm, Shapes::ShapeRef.new(shape: KeyAgreementAlgorithmSpec, required: true, location_name: "KeyAgreementAlgorithm"))
412
+ DeriveSharedSecretRequest.add_member(:public_key, Shapes::ShapeRef.new(shape: PublicKeyType, required: true, location_name: "PublicKey"))
413
+ DeriveSharedSecretRequest.add_member(:grant_tokens, Shapes::ShapeRef.new(shape: GrantTokenList, location_name: "GrantTokens"))
414
+ DeriveSharedSecretRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: NullableBooleanType, location_name: "DryRun"))
415
+ DeriveSharedSecretRequest.add_member(:recipient, Shapes::ShapeRef.new(shape: RecipientInfo, location_name: "Recipient"))
416
+ DeriveSharedSecretRequest.struct_class = Types::DeriveSharedSecretRequest
417
+
418
+ DeriveSharedSecretResponse.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, location_name: "KeyId"))
419
+ DeriveSharedSecretResponse.add_member(:shared_secret, Shapes::ShapeRef.new(shape: PlaintextType, location_name: "SharedSecret"))
420
+ DeriveSharedSecretResponse.add_member(:ciphertext_for_recipient, Shapes::ShapeRef.new(shape: CiphertextType, location_name: "CiphertextForRecipient"))
421
+ DeriveSharedSecretResponse.add_member(:key_agreement_algorithm, Shapes::ShapeRef.new(shape: KeyAgreementAlgorithmSpec, location_name: "KeyAgreementAlgorithm"))
422
+ DeriveSharedSecretResponse.add_member(:key_origin, Shapes::ShapeRef.new(shape: OriginType, location_name: "KeyOrigin"))
423
+ DeriveSharedSecretResponse.struct_class = Types::DeriveSharedSecretResponse
424
+
377
425
  DescribeCustomKeyStoresRequest.add_member(:custom_key_store_id, Shapes::ShapeRef.new(shape: CustomKeyStoreIdType, location_name: "CustomKeyStoreId"))
378
426
  DescribeCustomKeyStoresRequest.add_member(:custom_key_store_name, Shapes::ShapeRef.new(shape: CustomKeyStoreNameType, location_name: "CustomKeyStoreName"))
379
427
  DescribeCustomKeyStoresRequest.add_member(:limit, Shapes::ShapeRef.new(shape: LimitType, location_name: "Limit"))
@@ -413,6 +461,7 @@ module Aws::KMS
413
461
  EnableKeyRequest.struct_class = Types::EnableKeyRequest
414
462
 
415
463
  EnableKeyRotationRequest.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, required: true, location_name: "KeyId"))
464
+ EnableKeyRotationRequest.add_member(:rotation_period_in_days, Shapes::ShapeRef.new(shape: RotationPeriodInDaysType, location_name: "RotationPeriodInDays"))
416
465
  EnableKeyRotationRequest.struct_class = Types::EnableKeyRotationRequest
417
466
 
418
467
  EncryptRequest.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, required: true, location_name: "KeyId"))
@@ -450,6 +499,7 @@ module Aws::KMS
450
499
  GenerateDataKeyPairResponse.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, location_name: "KeyId"))
451
500
  GenerateDataKeyPairResponse.add_member(:key_pair_spec, Shapes::ShapeRef.new(shape: DataKeyPairSpec, location_name: "KeyPairSpec"))
452
501
  GenerateDataKeyPairResponse.add_member(:ciphertext_for_recipient, Shapes::ShapeRef.new(shape: CiphertextType, location_name: "CiphertextForRecipient"))
502
+ GenerateDataKeyPairResponse.add_member(:key_material_id, Shapes::ShapeRef.new(shape: BackingKeyIdType, location_name: "KeyMaterialId"))
453
503
  GenerateDataKeyPairResponse.struct_class = Types::GenerateDataKeyPairResponse
454
504
 
455
505
  GenerateDataKeyPairWithoutPlaintextRequest.add_member(:encryption_context, Shapes::ShapeRef.new(shape: EncryptionContextType, location_name: "EncryptionContext"))
@@ -463,6 +513,7 @@ module Aws::KMS
463
513
  GenerateDataKeyPairWithoutPlaintextResponse.add_member(:public_key, Shapes::ShapeRef.new(shape: PublicKeyType, location_name: "PublicKey"))
464
514
  GenerateDataKeyPairWithoutPlaintextResponse.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, location_name: "KeyId"))
465
515
  GenerateDataKeyPairWithoutPlaintextResponse.add_member(:key_pair_spec, Shapes::ShapeRef.new(shape: DataKeyPairSpec, location_name: "KeyPairSpec"))
516
+ GenerateDataKeyPairWithoutPlaintextResponse.add_member(:key_material_id, Shapes::ShapeRef.new(shape: BackingKeyIdType, location_name: "KeyMaterialId"))
466
517
  GenerateDataKeyPairWithoutPlaintextResponse.struct_class = Types::GenerateDataKeyPairWithoutPlaintextResponse
467
518
 
468
519
  GenerateDataKeyRequest.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, required: true, location_name: "KeyId"))
@@ -478,6 +529,7 @@ module Aws::KMS
478
529
  GenerateDataKeyResponse.add_member(:plaintext, Shapes::ShapeRef.new(shape: PlaintextType, location_name: "Plaintext"))
479
530
  GenerateDataKeyResponse.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, location_name: "KeyId"))
480
531
  GenerateDataKeyResponse.add_member(:ciphertext_for_recipient, Shapes::ShapeRef.new(shape: CiphertextType, location_name: "CiphertextForRecipient"))
532
+ GenerateDataKeyResponse.add_member(:key_material_id, Shapes::ShapeRef.new(shape: BackingKeyIdType, location_name: "KeyMaterialId"))
481
533
  GenerateDataKeyResponse.struct_class = Types::GenerateDataKeyResponse
482
534
 
483
535
  GenerateDataKeyWithoutPlaintextRequest.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, required: true, location_name: "KeyId"))
@@ -490,6 +542,7 @@ module Aws::KMS
490
542
 
491
543
  GenerateDataKeyWithoutPlaintextResponse.add_member(:ciphertext_blob, Shapes::ShapeRef.new(shape: CiphertextType, location_name: "CiphertextBlob"))
492
544
  GenerateDataKeyWithoutPlaintextResponse.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, location_name: "KeyId"))
545
+ GenerateDataKeyWithoutPlaintextResponse.add_member(:key_material_id, Shapes::ShapeRef.new(shape: BackingKeyIdType, location_name: "KeyMaterialId"))
493
546
  GenerateDataKeyWithoutPlaintextResponse.struct_class = Types::GenerateDataKeyWithoutPlaintextResponse
494
547
 
495
548
  GenerateMacRequest.add_member(:message, Shapes::ShapeRef.new(shape: PlaintextType, required: true, location_name: "Message"))
@@ -514,16 +567,21 @@ module Aws::KMS
514
567
  GenerateRandomResponse.struct_class = Types::GenerateRandomResponse
515
568
 
516
569
  GetKeyPolicyRequest.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, required: true, location_name: "KeyId"))
517
- GetKeyPolicyRequest.add_member(:policy_name, Shapes::ShapeRef.new(shape: PolicyNameType, required: true, location_name: "PolicyName"))
570
+ GetKeyPolicyRequest.add_member(:policy_name, Shapes::ShapeRef.new(shape: PolicyNameType, location_name: "PolicyName"))
518
571
  GetKeyPolicyRequest.struct_class = Types::GetKeyPolicyRequest
519
572
 
520
573
  GetKeyPolicyResponse.add_member(:policy, Shapes::ShapeRef.new(shape: PolicyType, location_name: "Policy"))
574
+ GetKeyPolicyResponse.add_member(:policy_name, Shapes::ShapeRef.new(shape: PolicyNameType, location_name: "PolicyName"))
521
575
  GetKeyPolicyResponse.struct_class = Types::GetKeyPolicyResponse
522
576
 
523
577
  GetKeyRotationStatusRequest.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, required: true, location_name: "KeyId"))
524
578
  GetKeyRotationStatusRequest.struct_class = Types::GetKeyRotationStatusRequest
525
579
 
526
580
  GetKeyRotationStatusResponse.add_member(:key_rotation_enabled, Shapes::ShapeRef.new(shape: BooleanType, location_name: "KeyRotationEnabled"))
581
+ GetKeyRotationStatusResponse.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, location_name: "KeyId"))
582
+ GetKeyRotationStatusResponse.add_member(:rotation_period_in_days, Shapes::ShapeRef.new(shape: RotationPeriodInDaysType, location_name: "RotationPeriodInDays"))
583
+ GetKeyRotationStatusResponse.add_member(:next_rotation_date, Shapes::ShapeRef.new(shape: DateType, location_name: "NextRotationDate"))
584
+ GetKeyRotationStatusResponse.add_member(:on_demand_rotation_start_date, Shapes::ShapeRef.new(shape: DateType, location_name: "OnDemandRotationStartDate"))
527
585
  GetKeyRotationStatusResponse.struct_class = Types::GetKeyRotationStatusResponse
528
586
 
529
587
  GetParametersForImportRequest.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, required: true, location_name: "KeyId"))
@@ -543,11 +601,12 @@ module Aws::KMS
543
601
 
544
602
  GetPublicKeyResponse.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, location_name: "KeyId"))
545
603
  GetPublicKeyResponse.add_member(:public_key, Shapes::ShapeRef.new(shape: PublicKeyType, location_name: "PublicKey"))
546
- GetPublicKeyResponse.add_member(:customer_master_key_spec, Shapes::ShapeRef.new(shape: CustomerMasterKeySpec, deprecated: true, location_name: "CustomerMasterKeySpec", metadata: {"deprecatedMessage"=>"This field has been deprecated. Instead, use the KeySpec field."}))
604
+ GetPublicKeyResponse.add_member(:customer_master_key_spec, Shapes::ShapeRef.new(shape: CustomerMasterKeySpec, deprecated: true, location_name: "CustomerMasterKeySpec", metadata: {"deprecatedMessage" => "This field has been deprecated. Instead, use the KeySpec field."}))
547
605
  GetPublicKeyResponse.add_member(:key_spec, Shapes::ShapeRef.new(shape: KeySpec, location_name: "KeySpec"))
548
606
  GetPublicKeyResponse.add_member(:key_usage, Shapes::ShapeRef.new(shape: KeyUsageType, location_name: "KeyUsage"))
549
607
  GetPublicKeyResponse.add_member(:encryption_algorithms, Shapes::ShapeRef.new(shape: EncryptionAlgorithmSpecList, location_name: "EncryptionAlgorithms"))
550
608
  GetPublicKeyResponse.add_member(:signing_algorithms, Shapes::ShapeRef.new(shape: SigningAlgorithmSpecList, location_name: "SigningAlgorithms"))
609
+ GetPublicKeyResponse.add_member(:key_agreement_algorithms, Shapes::ShapeRef.new(shape: KeyAgreementAlgorithmSpecList, location_name: "KeyAgreementAlgorithms"))
551
610
  GetPublicKeyResponse.struct_class = Types::GetPublicKeyResponse
552
611
 
553
612
  GrantConstraints.add_member(:encryption_context_subset, Shapes::ShapeRef.new(shape: EncryptionContextType, location_name: "EncryptionContextSubset"))
@@ -576,8 +635,13 @@ module Aws::KMS
576
635
  ImportKeyMaterialRequest.add_member(:encrypted_key_material, Shapes::ShapeRef.new(shape: CiphertextType, required: true, location_name: "EncryptedKeyMaterial"))
577
636
  ImportKeyMaterialRequest.add_member(:valid_to, Shapes::ShapeRef.new(shape: DateType, location_name: "ValidTo"))
578
637
  ImportKeyMaterialRequest.add_member(:expiration_model, Shapes::ShapeRef.new(shape: ExpirationModelType, location_name: "ExpirationModel"))
638
+ ImportKeyMaterialRequest.add_member(:import_type, Shapes::ShapeRef.new(shape: ImportType, location_name: "ImportType"))
639
+ ImportKeyMaterialRequest.add_member(:key_material_description, Shapes::ShapeRef.new(shape: KeyMaterialDescriptionType, location_name: "KeyMaterialDescription"))
640
+ ImportKeyMaterialRequest.add_member(:key_material_id, Shapes::ShapeRef.new(shape: BackingKeyIdType, location_name: "KeyMaterialId"))
579
641
  ImportKeyMaterialRequest.struct_class = Types::ImportKeyMaterialRequest
580
642
 
643
+ ImportKeyMaterialResponse.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, location_name: "KeyId"))
644
+ ImportKeyMaterialResponse.add_member(:key_material_id, Shapes::ShapeRef.new(shape: BackingKeyIdType, location_name: "KeyMaterialId"))
581
645
  ImportKeyMaterialResponse.struct_class = Types::ImportKeyMaterialResponse
582
646
 
583
647
  IncorrectKeyException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessageType, location_name: "message"))
@@ -625,6 +689,8 @@ module Aws::KMS
625
689
  KMSInvalidStateException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessageType, location_name: "message"))
626
690
  KMSInvalidStateException.struct_class = Types::KMSInvalidStateException
627
691
 
692
+ KeyAgreementAlgorithmSpecList.member = Shapes::ShapeRef.new(shape: KeyAgreementAlgorithmSpec)
693
+
628
694
  KeyList.member = Shapes::ShapeRef.new(shape: KeyListEntry)
629
695
 
630
696
  KeyListEntry.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, location_name: "KeyId"))
@@ -646,15 +712,17 @@ module Aws::KMS
646
712
  KeyMetadata.add_member(:cloud_hsm_cluster_id, Shapes::ShapeRef.new(shape: CloudHsmClusterIdType, location_name: "CloudHsmClusterId"))
647
713
  KeyMetadata.add_member(:expiration_model, Shapes::ShapeRef.new(shape: ExpirationModelType, location_name: "ExpirationModel"))
648
714
  KeyMetadata.add_member(:key_manager, Shapes::ShapeRef.new(shape: KeyManagerType, location_name: "KeyManager"))
649
- KeyMetadata.add_member(:customer_master_key_spec, Shapes::ShapeRef.new(shape: CustomerMasterKeySpec, deprecated: true, location_name: "CustomerMasterKeySpec", metadata: {"deprecatedMessage"=>"This field has been deprecated. Instead, use the KeySpec field."}))
715
+ KeyMetadata.add_member(:customer_master_key_spec, Shapes::ShapeRef.new(shape: CustomerMasterKeySpec, deprecated: true, location_name: "CustomerMasterKeySpec", metadata: {"deprecatedMessage" => "This field has been deprecated. Instead, use the KeySpec field."}))
650
716
  KeyMetadata.add_member(:key_spec, Shapes::ShapeRef.new(shape: KeySpec, location_name: "KeySpec"))
651
717
  KeyMetadata.add_member(:encryption_algorithms, Shapes::ShapeRef.new(shape: EncryptionAlgorithmSpecList, location_name: "EncryptionAlgorithms"))
652
718
  KeyMetadata.add_member(:signing_algorithms, Shapes::ShapeRef.new(shape: SigningAlgorithmSpecList, location_name: "SigningAlgorithms"))
719
+ KeyMetadata.add_member(:key_agreement_algorithms, Shapes::ShapeRef.new(shape: KeyAgreementAlgorithmSpecList, location_name: "KeyAgreementAlgorithms"))
653
720
  KeyMetadata.add_member(:multi_region, Shapes::ShapeRef.new(shape: NullableBooleanType, location_name: "MultiRegion"))
654
721
  KeyMetadata.add_member(:multi_region_configuration, Shapes::ShapeRef.new(shape: MultiRegionConfiguration, location_name: "MultiRegionConfiguration"))
655
722
  KeyMetadata.add_member(:pending_deletion_window_in_days, Shapes::ShapeRef.new(shape: PendingWindowInDaysType, location_name: "PendingDeletionWindowInDays"))
656
723
  KeyMetadata.add_member(:mac_algorithms, Shapes::ShapeRef.new(shape: MacAlgorithmSpecList, location_name: "MacAlgorithms"))
657
724
  KeyMetadata.add_member(:xks_key_configuration, Shapes::ShapeRef.new(shape: XksKeyConfigurationType, location_name: "XksKeyConfiguration"))
725
+ KeyMetadata.add_member(:current_key_material_id, Shapes::ShapeRef.new(shape: BackingKeyIdType, location_name: "CurrentKeyMaterialId"))
658
726
  KeyMetadata.struct_class = Types::KeyMetadata
659
727
 
660
728
  KeyUnavailableException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessageType, location_name: "message"))
@@ -695,6 +763,17 @@ module Aws::KMS
695
763
  ListKeyPoliciesResponse.add_member(:truncated, Shapes::ShapeRef.new(shape: BooleanType, location_name: "Truncated"))
696
764
  ListKeyPoliciesResponse.struct_class = Types::ListKeyPoliciesResponse
697
765
 
766
+ ListKeyRotationsRequest.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, required: true, location_name: "KeyId"))
767
+ ListKeyRotationsRequest.add_member(:include_key_material, Shapes::ShapeRef.new(shape: IncludeKeyMaterial, location_name: "IncludeKeyMaterial"))
768
+ ListKeyRotationsRequest.add_member(:limit, Shapes::ShapeRef.new(shape: LimitType, location_name: "Limit"))
769
+ ListKeyRotationsRequest.add_member(:marker, Shapes::ShapeRef.new(shape: MarkerType, location_name: "Marker"))
770
+ ListKeyRotationsRequest.struct_class = Types::ListKeyRotationsRequest
771
+
772
+ ListKeyRotationsResponse.add_member(:rotations, Shapes::ShapeRef.new(shape: RotationsList, location_name: "Rotations"))
773
+ ListKeyRotationsResponse.add_member(:next_marker, Shapes::ShapeRef.new(shape: MarkerType, location_name: "NextMarker"))
774
+ ListKeyRotationsResponse.add_member(:truncated, Shapes::ShapeRef.new(shape: BooleanType, location_name: "Truncated"))
775
+ ListKeyRotationsResponse.struct_class = Types::ListKeyRotationsResponse
776
+
698
777
  ListKeysRequest.add_member(:limit, Shapes::ShapeRef.new(shape: LimitType, location_name: "Limit"))
699
778
  ListKeysRequest.add_member(:marker, Shapes::ShapeRef.new(shape: MarkerType, location_name: "Marker"))
700
779
  ListKeysRequest.struct_class = Types::ListKeysRequest
@@ -741,7 +820,7 @@ module Aws::KMS
741
820
  PolicyNameList.member = Shapes::ShapeRef.new(shape: PolicyNameType)
742
821
 
743
822
  PutKeyPolicyRequest.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, required: true, location_name: "KeyId"))
744
- PutKeyPolicyRequest.add_member(:policy_name, Shapes::ShapeRef.new(shape: PolicyNameType, required: true, location_name: "PolicyName"))
823
+ PutKeyPolicyRequest.add_member(:policy_name, Shapes::ShapeRef.new(shape: PolicyNameType, location_name: "PolicyName"))
745
824
  PutKeyPolicyRequest.add_member(:policy, Shapes::ShapeRef.new(shape: PolicyType, required: true, location_name: "Policy"))
746
825
  PutKeyPolicyRequest.add_member(:bypass_policy_lockout_safety_check, Shapes::ShapeRef.new(shape: BooleanType, location_name: "BypassPolicyLockoutSafetyCheck"))
747
826
  PutKeyPolicyRequest.struct_class = Types::PutKeyPolicyRequest
@@ -762,6 +841,8 @@ module Aws::KMS
762
841
  ReEncryptResponse.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, location_name: "KeyId"))
763
842
  ReEncryptResponse.add_member(:source_encryption_algorithm, Shapes::ShapeRef.new(shape: EncryptionAlgorithmSpec, location_name: "SourceEncryptionAlgorithm"))
764
843
  ReEncryptResponse.add_member(:destination_encryption_algorithm, Shapes::ShapeRef.new(shape: EncryptionAlgorithmSpec, location_name: "DestinationEncryptionAlgorithm"))
844
+ ReEncryptResponse.add_member(:source_key_material_id, Shapes::ShapeRef.new(shape: BackingKeyIdType, location_name: "SourceKeyMaterialId"))
845
+ ReEncryptResponse.add_member(:destination_key_material_id, Shapes::ShapeRef.new(shape: BackingKeyIdType, location_name: "DestinationKeyMaterialId"))
765
846
  ReEncryptResponse.struct_class = Types::ReEncryptResponse
766
847
 
767
848
  RecipientInfo.add_member(:key_encryption_algorithm, Shapes::ShapeRef.new(shape: KeyEncryptionMechanism, location_name: "KeyEncryptionAlgorithm"))
@@ -792,6 +873,25 @@ module Aws::KMS
792
873
  RevokeGrantRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: NullableBooleanType, location_name: "DryRun"))
793
874
  RevokeGrantRequest.struct_class = Types::RevokeGrantRequest
794
875
 
876
+ RotateKeyOnDemandRequest.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, required: true, location_name: "KeyId"))
877
+ RotateKeyOnDemandRequest.struct_class = Types::RotateKeyOnDemandRequest
878
+
879
+ RotateKeyOnDemandResponse.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, location_name: "KeyId"))
880
+ RotateKeyOnDemandResponse.struct_class = Types::RotateKeyOnDemandResponse
881
+
882
+ RotationsList.member = Shapes::ShapeRef.new(shape: RotationsListEntry)
883
+
884
+ RotationsListEntry.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, location_name: "KeyId"))
885
+ RotationsListEntry.add_member(:key_material_id, Shapes::ShapeRef.new(shape: BackingKeyIdType, location_name: "KeyMaterialId"))
886
+ RotationsListEntry.add_member(:key_material_description, Shapes::ShapeRef.new(shape: KeyMaterialDescriptionType, location_name: "KeyMaterialDescription"))
887
+ RotationsListEntry.add_member(:import_state, Shapes::ShapeRef.new(shape: ImportState, location_name: "ImportState"))
888
+ RotationsListEntry.add_member(:key_material_state, Shapes::ShapeRef.new(shape: KeyMaterialState, location_name: "KeyMaterialState"))
889
+ RotationsListEntry.add_member(:expiration_model, Shapes::ShapeRef.new(shape: ExpirationModelType, location_name: "ExpirationModel"))
890
+ RotationsListEntry.add_member(:valid_to, Shapes::ShapeRef.new(shape: DateType, location_name: "ValidTo"))
891
+ RotationsListEntry.add_member(:rotation_date, Shapes::ShapeRef.new(shape: DateType, location_name: "RotationDate"))
892
+ RotationsListEntry.add_member(:rotation_type, Shapes::ShapeRef.new(shape: RotationType, location_name: "RotationType"))
893
+ RotationsListEntry.struct_class = Types::RotationsListEntry
894
+
795
895
  ScheduleKeyDeletionRequest.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, required: true, location_name: "KeyId"))
796
896
  ScheduleKeyDeletionRequest.add_member(:pending_window_in_days, Shapes::ShapeRef.new(shape: PendingWindowInDaysType, location_name: "PendingWindowInDays"))
797
897
  ScheduleKeyDeletionRequest.struct_class = Types::ScheduleKeyDeletionRequest
@@ -850,6 +950,7 @@ module Aws::KMS
850
950
  UpdateCustomKeyStoreRequest.add_member(:xks_proxy_uri_endpoint, Shapes::ShapeRef.new(shape: XksProxyUriEndpointType, location_name: "XksProxyUriEndpoint"))
851
951
  UpdateCustomKeyStoreRequest.add_member(:xks_proxy_uri_path, Shapes::ShapeRef.new(shape: XksProxyUriPathType, location_name: "XksProxyUriPath"))
852
952
  UpdateCustomKeyStoreRequest.add_member(:xks_proxy_vpc_endpoint_service_name, Shapes::ShapeRef.new(shape: XksProxyVpcEndpointServiceNameType, location_name: "XksProxyVpcEndpointServiceName"))
953
+ UpdateCustomKeyStoreRequest.add_member(:xks_proxy_vpc_endpoint_service_owner, Shapes::ShapeRef.new(shape: AccountIdType, location_name: "XksProxyVpcEndpointServiceOwner"))
853
954
  UpdateCustomKeyStoreRequest.add_member(:xks_proxy_authentication_credential, Shapes::ShapeRef.new(shape: XksProxyAuthenticationCredentialType, location_name: "XksProxyAuthenticationCredential"))
854
955
  UpdateCustomKeyStoreRequest.add_member(:xks_proxy_connectivity, Shapes::ShapeRef.new(shape: XksProxyConnectivityType, location_name: "XksProxyConnectivity"))
855
956
  UpdateCustomKeyStoreRequest.struct_class = Types::UpdateCustomKeyStoreRequest
@@ -912,6 +1013,7 @@ module Aws::KMS
912
1013
  XksProxyConfigurationType.add_member(:uri_endpoint, Shapes::ShapeRef.new(shape: XksProxyUriEndpointType, location_name: "UriEndpoint"))
913
1014
  XksProxyConfigurationType.add_member(:uri_path, Shapes::ShapeRef.new(shape: XksProxyUriPathType, location_name: "UriPath"))
914
1015
  XksProxyConfigurationType.add_member(:vpc_endpoint_service_name, Shapes::ShapeRef.new(shape: XksProxyVpcEndpointServiceNameType, location_name: "VpcEndpointServiceName"))
1016
+ XksProxyConfigurationType.add_member(:vpc_endpoint_service_owner, Shapes::ShapeRef.new(shape: AccountIdType, location_name: "VpcEndpointServiceOwner"))
915
1017
  XksProxyConfigurationType.struct_class = Types::XksProxyConfigurationType
916
1018
 
917
1019
  XksProxyIncorrectAuthenticationCredentialException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessageType, location_name: "message"))
@@ -949,9 +1051,11 @@ module Aws::KMS
949
1051
 
950
1052
  api.metadata = {
951
1053
  "apiVersion" => "2014-11-01",
1054
+ "auth" => ["aws.auth#sigv4"],
952
1055
  "endpointPrefix" => "kms",
953
1056
  "jsonVersion" => "1.1",
954
1057
  "protocol" => "json",
1058
+ "protocols" => ["json"],
955
1059
  "serviceAbbreviation" => "KMS",
956
1060
  "serviceFullName" => "AWS Key Management Service",
957
1061
  "serviceId" => "KMS",
@@ -1112,7 +1216,7 @@ module Aws::KMS
1112
1216
  o.http_method = "POST"
1113
1217
  o.http_request_uri = "/"
1114
1218
  o.input = Shapes::ShapeRef.new(shape: DeleteImportedKeyMaterialRequest)
1115
- o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1219
+ o.output = Shapes::ShapeRef.new(shape: DeleteImportedKeyMaterialResponse)
1116
1220
  o.errors << Shapes::ShapeRef.new(shape: InvalidArnException)
1117
1221
  o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
1118
1222
  o.errors << Shapes::ShapeRef.new(shape: DependencyTimeoutException)
@@ -1121,6 +1225,23 @@ module Aws::KMS
1121
1225
  o.errors << Shapes::ShapeRef.new(shape: KMSInvalidStateException)
1122
1226
  end)
1123
1227
 
1228
+ api.add_operation(:derive_shared_secret, Seahorse::Model::Operation.new.tap do |o|
1229
+ o.name = "DeriveSharedSecret"
1230
+ o.http_method = "POST"
1231
+ o.http_request_uri = "/"
1232
+ o.input = Shapes::ShapeRef.new(shape: DeriveSharedSecretRequest)
1233
+ o.output = Shapes::ShapeRef.new(shape: DeriveSharedSecretResponse)
1234
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1235
+ o.errors << Shapes::ShapeRef.new(shape: DisabledException)
1236
+ o.errors << Shapes::ShapeRef.new(shape: KeyUnavailableException)
1237
+ o.errors << Shapes::ShapeRef.new(shape: DependencyTimeoutException)
1238
+ o.errors << Shapes::ShapeRef.new(shape: InvalidGrantTokenException)
1239
+ o.errors << Shapes::ShapeRef.new(shape: InvalidKeyUsageException)
1240
+ o.errors << Shapes::ShapeRef.new(shape: KMSInternalException)
1241
+ o.errors << Shapes::ShapeRef.new(shape: KMSInvalidStateException)
1242
+ o.errors << Shapes::ShapeRef.new(shape: DryRunOperationException)
1243
+ end)
1244
+
1124
1245
  api.add_operation(:describe_custom_key_stores, Seahorse::Model::Operation.new.tap do |o|
1125
1246
  o.name = "DescribeCustomKeyStores"
1126
1247
  o.http_method = "POST"
@@ -1131,6 +1252,7 @@ module Aws::KMS
1131
1252
  o.errors << Shapes::ShapeRef.new(shape: InvalidMarkerException)
1132
1253
  o.errors << Shapes::ShapeRef.new(shape: KMSInternalException)
1133
1254
  o[:pager] = Aws::Pager.new(
1255
+ more_results: "truncated",
1134
1256
  limit_key: "limit",
1135
1257
  tokens: {
1136
1258
  "next_marker" => "marker"
@@ -1423,6 +1545,7 @@ module Aws::KMS
1423
1545
  o.errors << Shapes::ShapeRef.new(shape: InvalidArnException)
1424
1546
  o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1425
1547
  o[:pager] = Aws::Pager.new(
1548
+ more_results: "truncated",
1426
1549
  limit_key: "limit",
1427
1550
  tokens: {
1428
1551
  "next_marker" => "marker"
@@ -1444,6 +1567,7 @@ module Aws::KMS
1444
1567
  o.errors << Shapes::ShapeRef.new(shape: KMSInternalException)
1445
1568
  o.errors << Shapes::ShapeRef.new(shape: KMSInvalidStateException)
1446
1569
  o[:pager] = Aws::Pager.new(
1570
+ more_results: "truncated",
1447
1571
  limit_key: "limit",
1448
1572
  tokens: {
1449
1573
  "next_marker" => "marker"
@@ -1463,6 +1587,28 @@ module Aws::KMS
1463
1587
  o.errors << Shapes::ShapeRef.new(shape: KMSInternalException)
1464
1588
  o.errors << Shapes::ShapeRef.new(shape: KMSInvalidStateException)
1465
1589
  o[:pager] = Aws::Pager.new(
1590
+ more_results: "truncated",
1591
+ limit_key: "limit",
1592
+ tokens: {
1593
+ "next_marker" => "marker"
1594
+ }
1595
+ )
1596
+ end)
1597
+
1598
+ api.add_operation(:list_key_rotations, Seahorse::Model::Operation.new.tap do |o|
1599
+ o.name = "ListKeyRotations"
1600
+ o.http_method = "POST"
1601
+ o.http_request_uri = "/"
1602
+ o.input = Shapes::ShapeRef.new(shape: ListKeyRotationsRequest)
1603
+ o.output = Shapes::ShapeRef.new(shape: ListKeyRotationsResponse)
1604
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1605
+ o.errors << Shapes::ShapeRef.new(shape: InvalidArnException)
1606
+ o.errors << Shapes::ShapeRef.new(shape: InvalidMarkerException)
1607
+ o.errors << Shapes::ShapeRef.new(shape: KMSInternalException)
1608
+ o.errors << Shapes::ShapeRef.new(shape: KMSInvalidStateException)
1609
+ o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
1610
+ o[:pager] = Aws::Pager.new(
1611
+ more_results: "truncated",
1466
1612
  limit_key: "limit",
1467
1613
  tokens: {
1468
1614
  "next_marker" => "marker"
@@ -1480,6 +1626,7 @@ module Aws::KMS
1480
1626
  o.errors << Shapes::ShapeRef.new(shape: KMSInternalException)
1481
1627
  o.errors << Shapes::ShapeRef.new(shape: InvalidMarkerException)
1482
1628
  o[:pager] = Aws::Pager.new(
1629
+ more_results: "truncated",
1483
1630
  limit_key: "limit",
1484
1631
  tokens: {
1485
1632
  "next_marker" => "marker"
@@ -1498,6 +1645,7 @@ module Aws::KMS
1498
1645
  o.errors << Shapes::ShapeRef.new(shape: InvalidArnException)
1499
1646
  o.errors << Shapes::ShapeRef.new(shape: InvalidMarkerException)
1500
1647
  o[:pager] = Aws::Pager.new(
1648
+ more_results: "truncated",
1501
1649
  limit_key: "limit",
1502
1650
  tokens: {
1503
1651
  "next_marker" => "marker"
@@ -1517,6 +1665,7 @@ module Aws::KMS
1517
1665
  o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1518
1666
  o.errors << Shapes::ShapeRef.new(shape: KMSInternalException)
1519
1667
  o[:pager] = Aws::Pager.new(
1668
+ more_results: "truncated",
1520
1669
  limit_key: "limit",
1521
1670
  tokens: {
1522
1671
  "next_marker" => "marker"
@@ -1608,6 +1757,23 @@ module Aws::KMS
1608
1757
  o.errors << Shapes::ShapeRef.new(shape: DryRunOperationException)
1609
1758
  end)
1610
1759
 
1760
+ api.add_operation(:rotate_key_on_demand, Seahorse::Model::Operation.new.tap do |o|
1761
+ o.name = "RotateKeyOnDemand"
1762
+ o.http_method = "POST"
1763
+ o.http_request_uri = "/"
1764
+ o.input = Shapes::ShapeRef.new(shape: RotateKeyOnDemandRequest)
1765
+ o.output = Shapes::ShapeRef.new(shape: RotateKeyOnDemandResponse)
1766
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1767
+ o.errors << Shapes::ShapeRef.new(shape: DisabledException)
1768
+ o.errors << Shapes::ShapeRef.new(shape: InvalidArnException)
1769
+ o.errors << Shapes::ShapeRef.new(shape: DependencyTimeoutException)
1770
+ o.errors << Shapes::ShapeRef.new(shape: KMSInternalException)
1771
+ o.errors << Shapes::ShapeRef.new(shape: KMSInvalidStateException)
1772
+ o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
1773
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1774
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
1775
+ end)
1776
+
1611
1777
  api.add_operation(:schedule_key_deletion, Seahorse::Model::Operation.new.tap do |o|
1612
1778
  o.name = "ScheduleKeyDeletion"
1613
1779
  o.http_method = "POST"
@@ -1,8 +0,0 @@
1
- # frozen_string_literal: true
2
- # WARNING ABOUT GENERATED CODE
3
- #
4
- # This file is generated. See the contributing for info on making contributions:
5
- # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
6
- #
7
- # WARNING ABOUT GENERATED CODE
8
-
@@ -13,22 +13,22 @@ module Aws::KMS
13
13
  # @!attribute region
14
14
  # The AWS region used to dispatch the request.
15
15
  #
16
- # @return [String]
16
+ # @return [string]
17
17
  #
18
18
  # @!attribute use_dual_stack
19
19
  # When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.
20
20
  #
21
- # @return [Boolean]
21
+ # @return [boolean]
22
22
  #
23
23
  # @!attribute use_fips
24
24
  # When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.
25
25
  #
26
- # @return [Boolean]
26
+ # @return [boolean]
27
27
  #
28
28
  # @!attribute endpoint
29
29
  # Override the endpoint used to send this request
30
30
  #
31
- # @return [String]
31
+ # @return [string]
32
32
  #
33
33
  EndpointParameters = Struct.new(
34
34
  :region,
@@ -52,15 +52,18 @@ module Aws::KMS
52
52
  self[:region] = options[:region]
53
53
  self[:use_dual_stack] = options[:use_dual_stack]
54
54
  self[:use_dual_stack] = false if self[:use_dual_stack].nil?
55
- if self[:use_dual_stack].nil?
56
- raise ArgumentError, "Missing required EndpointParameter: :use_dual_stack"
57
- end
58
55
  self[:use_fips] = options[:use_fips]
59
56
  self[:use_fips] = false if self[:use_fips].nil?
60
- if self[:use_fips].nil?
61
- raise ArgumentError, "Missing required EndpointParameter: :use_fips"
62
- end
63
57
  self[:endpoint] = options[:endpoint]
64
58
  end
59
+
60
+ def self.create(config, options={})
61
+ new({
62
+ region: config.region,
63
+ use_dual_stack: config.use_dualstack_endpoint,
64
+ use_fips: config.use_fips_endpoint,
65
+ endpoint: (config.endpoint.to_s unless config.regional_endpoint),
66
+ }.merge(options))
67
+ end
65
68
  end
66
69
  end
@@ -10,40 +10,36 @@
10
10
  module Aws::KMS
11
11
  class EndpointProvider
12
12
  def resolve_endpoint(parameters)
13
- region = parameters.region
14
- use_dual_stack = parameters.use_dual_stack
15
- use_fips = parameters.use_fips
16
- endpoint = parameters.endpoint
17
- if Aws::Endpoints::Matchers.set?(endpoint)
18
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
13
+ if Aws::Endpoints::Matchers.set?(parameters.endpoint)
14
+ if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true)
19
15
  raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
20
16
  end
21
- if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
17
+ if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_dual_stack, true)
22
18
  raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
23
19
  end
24
- return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
20
+ return Aws::Endpoints::Endpoint.new(url: parameters.endpoint, headers: {}, properties: {})
25
21
  end
26
- if Aws::Endpoints::Matchers.set?(region)
27
- if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
28
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
22
+ if Aws::Endpoints::Matchers.set?(parameters.region)
23
+ if (partition_result = Aws::Endpoints::Matchers.aws_partition(parameters.region))
24
+ if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(parameters.use_dual_stack, true)
29
25
  if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
30
- return Aws::Endpoints::Endpoint.new(url: "https://kms-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
26
+ return Aws::Endpoints::Endpoint.new(url: "https://kms-fips.#{parameters.region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
31
27
  end
32
28
  raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
33
29
  end
34
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
30
+ if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true)
35
31
  if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"), true)
36
- return Aws::Endpoints::Endpoint.new(url: "https://kms-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
32
+ return Aws::Endpoints::Endpoint.new(url: "https://kms-fips.#{parameters.region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
37
33
  end
38
34
  raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
39
35
  end
40
- if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
36
+ if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_dual_stack, true)
41
37
  if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
42
- return Aws::Endpoints::Endpoint.new(url: "https://kms.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
38
+ return Aws::Endpoints::Endpoint.new(url: "https://kms.#{parameters.region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
43
39
  end
44
40
  raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
45
41
  end
46
- return Aws::Endpoints::Endpoint.new(url: "https://kms.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
42
+ return Aws::Endpoints::Endpoint.new(url: "https://kms.#{parameters.region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
47
43
  end
48
44
  end
49
45
  raise ArgumentError, "Invalid Configuration: Missing Region"