@aws-sdk/client-kms 3.36.0 → 3.39.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.
Files changed (131) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/dist-cjs/KMS.js +0 -92
  3. package/dist-cjs/KMSClient.js +0 -97
  4. package/dist-cjs/commands/CancelKeyDeletionCommand.js +0 -37
  5. package/dist-cjs/commands/ConnectCustomKeyStoreCommand.js +0 -85
  6. package/dist-cjs/commands/CreateAliasCommand.js +0 -81
  7. package/dist-cjs/commands/CreateCustomKeyStoreCommand.js +0 -73
  8. package/dist-cjs/commands/CreateGrantCommand.js +0 -86
  9. package/dist-cjs/commands/CreateKeyCommand.js +0 -148
  10. package/dist-cjs/commands/DecryptCommand.js +0 -112
  11. package/dist-cjs/commands/DeleteAliasCommand.js +0 -71
  12. package/dist-cjs/commands/DeleteCustomKeyStoreCommand.js +0 -78
  13. package/dist-cjs/commands/DeleteImportedKeyMaterialCommand.js +0 -53
  14. package/dist-cjs/commands/DescribeCustomKeyStoresCommand.js +0 -77
  15. package/dist-cjs/commands/DescribeKeyCommand.js +0 -103
  16. package/dist-cjs/commands/DisableKeyCommand.js +0 -39
  17. package/dist-cjs/commands/DisableKeyRotationCommand.js +0 -49
  18. package/dist-cjs/commands/DisconnectCustomKeyStoreCommand.js +0 -76
  19. package/dist-cjs/commands/EnableKeyCommand.js +0 -36
  20. package/dist-cjs/commands/EnableKeyRotationCommand.js +0 -49
  21. package/dist-cjs/commands/EncryptCommand.js +0 -148
  22. package/dist-cjs/commands/GenerateDataKeyCommand.js +0 -121
  23. package/dist-cjs/commands/GenerateDataKeyPairCommand.js +0 -100
  24. package/dist-cjs/commands/GenerateDataKeyPairWithoutPlaintextCommand.js +0 -90
  25. package/dist-cjs/commands/GenerateDataKeyWithoutPlaintextCommand.js +0 -95
  26. package/dist-cjs/commands/GenerateRandomCommand.js +0 -33
  27. package/dist-cjs/commands/GetKeyPolicyCommand.js +0 -32
  28. package/dist-cjs/commands/GetKeyRotationStatusCommand.js +0 -61
  29. package/dist-cjs/commands/GetParametersForImportCommand.js +0 -58
  30. package/dist-cjs/commands/GetPublicKeyCommand.js +0 -70
  31. package/dist-cjs/commands/ImportKeyMaterialCommand.js +0 -87
  32. package/dist-cjs/commands/ListAliasesCommand.js +0 -66
  33. package/dist-cjs/commands/ListGrantsCommand.js +0 -69
  34. package/dist-cjs/commands/ListKeyPoliciesCommand.js +0 -46
  35. package/dist-cjs/commands/ListKeysCommand.js +0 -54
  36. package/dist-cjs/commands/ListResourceTagsCommand.js +0 -58
  37. package/dist-cjs/commands/ListRetirableGrantsCommand.js +0 -67
  38. package/dist-cjs/commands/PutKeyPolicyCommand.js +0 -37
  39. package/dist-cjs/commands/ReEncryptCommand.js +0 -122
  40. package/dist-cjs/commands/ReplicateKeyCommand.js +0 -101
  41. package/dist-cjs/commands/RetireGrantCommand.js +0 -70
  42. package/dist-cjs/commands/RevokeGrantCommand.js +0 -67
  43. package/dist-cjs/commands/ScheduleKeyDeletionCommand.js +0 -78
  44. package/dist-cjs/commands/SignCommand.js +0 -69
  45. package/dist-cjs/commands/TagResourceCommand.js +0 -71
  46. package/dist-cjs/commands/UntagResourceCommand.js +0 -67
  47. package/dist-cjs/commands/UpdateAliasCommand.js +0 -86
  48. package/dist-cjs/commands/UpdateCustomKeyStoreCommand.js +0 -96
  49. package/dist-cjs/commands/UpdateKeyDescriptionCommand.js +0 -47
  50. package/dist-cjs/commands/UpdatePrimaryRegionCommand.js +0 -89
  51. package/dist-cjs/commands/VerifyCommand.js +0 -54
  52. package/dist-cjs/commands/index.js +51 -0
  53. package/dist-cjs/endpoints.js +6 -1
  54. package/dist-cjs/index.js +4 -55
  55. package/dist-cjs/models/models_0.js +0 -366
  56. package/dist-cjs/pagination/ListAliasesPaginator.js +0 -10
  57. package/dist-cjs/pagination/ListGrantsPaginator.js +0 -10
  58. package/dist-cjs/pagination/ListKeyPoliciesPaginator.js +0 -10
  59. package/dist-cjs/pagination/ListKeysPaginator.js +0 -10
  60. package/dist-cjs/pagination/index.js +8 -0
  61. package/dist-cjs/protocols/Aws_json1_1.js +0 -5
  62. package/dist-cjs/runtimeConfig.browser.js +1 -5
  63. package/dist-cjs/runtimeConfig.js +1 -5
  64. package/dist-cjs/runtimeConfig.native.js +0 -3
  65. package/dist-cjs/runtimeConfig.shared.js +0 -3
  66. package/dist-es/commands/index.js +48 -0
  67. package/dist-es/endpoints.js +6 -1
  68. package/dist-es/index.js +4 -55
  69. package/dist-es/pagination/index.js +5 -0
  70. package/dist-types/commands/index.d.ts +48 -0
  71. package/dist-types/index.d.ts +4 -55
  72. package/dist-types/pagination/index.d.ts +5 -0
  73. package/dist-types/ts3.4/KMS.d.ts +49 -2646
  74. package/dist-types/ts3.4/KMSClient.d.ts +24 -178
  75. package/dist-types/ts3.4/commands/CancelKeyDeletionCommand.d.ts +2 -33
  76. package/dist-types/ts3.4/commands/ConnectCustomKeyStoreCommand.d.ts +2 -81
  77. package/dist-types/ts3.4/commands/CreateAliasCommand.d.ts +2 -77
  78. package/dist-types/ts3.4/commands/CreateCustomKeyStoreCommand.d.ts +2 -69
  79. package/dist-types/ts3.4/commands/CreateGrantCommand.d.ts +2 -82
  80. package/dist-types/ts3.4/commands/CreateKeyCommand.d.ts +2 -144
  81. package/dist-types/ts3.4/commands/DecryptCommand.d.ts +2 -108
  82. package/dist-types/ts3.4/commands/DeleteAliasCommand.d.ts +2 -67
  83. package/dist-types/ts3.4/commands/DeleteCustomKeyStoreCommand.d.ts +2 -74
  84. package/dist-types/ts3.4/commands/DeleteImportedKeyMaterialCommand.d.ts +2 -49
  85. package/dist-types/ts3.4/commands/DescribeCustomKeyStoresCommand.d.ts +2 -73
  86. package/dist-types/ts3.4/commands/DescribeKeyCommand.d.ts +2 -99
  87. package/dist-types/ts3.4/commands/DisableKeyCommand.d.ts +2 -35
  88. package/dist-types/ts3.4/commands/DisableKeyRotationCommand.d.ts +2 -45
  89. package/dist-types/ts3.4/commands/DisconnectCustomKeyStoreCommand.d.ts +2 -72
  90. package/dist-types/ts3.4/commands/EnableKeyCommand.d.ts +2 -32
  91. package/dist-types/ts3.4/commands/EnableKeyRotationCommand.d.ts +2 -45
  92. package/dist-types/ts3.4/commands/EncryptCommand.d.ts +2 -144
  93. package/dist-types/ts3.4/commands/GenerateDataKeyCommand.d.ts +2 -117
  94. package/dist-types/ts3.4/commands/GenerateDataKeyPairCommand.d.ts +2 -96
  95. package/dist-types/ts3.4/commands/GenerateDataKeyPairWithoutPlaintextCommand.d.ts +2 -86
  96. package/dist-types/ts3.4/commands/GenerateDataKeyWithoutPlaintextCommand.d.ts +2 -91
  97. package/dist-types/ts3.4/commands/GenerateRandomCommand.d.ts +2 -29
  98. package/dist-types/ts3.4/commands/GetKeyPolicyCommand.d.ts +2 -28
  99. package/dist-types/ts3.4/commands/GetKeyRotationStatusCommand.d.ts +2 -57
  100. package/dist-types/ts3.4/commands/GetParametersForImportCommand.d.ts +2 -54
  101. package/dist-types/ts3.4/commands/GetPublicKeyCommand.d.ts +2 -66
  102. package/dist-types/ts3.4/commands/ImportKeyMaterialCommand.d.ts +2 -83
  103. package/dist-types/ts3.4/commands/ListAliasesCommand.d.ts +2 -62
  104. package/dist-types/ts3.4/commands/ListGrantsCommand.d.ts +2 -65
  105. package/dist-types/ts3.4/commands/ListKeyPoliciesCommand.d.ts +2 -42
  106. package/dist-types/ts3.4/commands/ListKeysCommand.d.ts +2 -50
  107. package/dist-types/ts3.4/commands/ListResourceTagsCommand.d.ts +2 -54
  108. package/dist-types/ts3.4/commands/ListRetirableGrantsCommand.d.ts +2 -63
  109. package/dist-types/ts3.4/commands/PutKeyPolicyCommand.d.ts +2 -33
  110. package/dist-types/ts3.4/commands/ReEncryptCommand.d.ts +2 -118
  111. package/dist-types/ts3.4/commands/ReplicateKeyCommand.d.ts +2 -97
  112. package/dist-types/ts3.4/commands/RetireGrantCommand.d.ts +2 -66
  113. package/dist-types/ts3.4/commands/RevokeGrantCommand.d.ts +2 -63
  114. package/dist-types/ts3.4/commands/ScheduleKeyDeletionCommand.d.ts +2 -74
  115. package/dist-types/ts3.4/commands/SignCommand.d.ts +2 -65
  116. package/dist-types/ts3.4/commands/TagResourceCommand.d.ts +2 -67
  117. package/dist-types/ts3.4/commands/UntagResourceCommand.d.ts +2 -63
  118. package/dist-types/ts3.4/commands/UpdateAliasCommand.d.ts +2 -82
  119. package/dist-types/ts3.4/commands/UpdateCustomKeyStoreCommand.d.ts +2 -92
  120. package/dist-types/ts3.4/commands/UpdateKeyDescriptionCommand.d.ts +2 -43
  121. package/dist-types/ts3.4/commands/UpdatePrimaryRegionCommand.d.ts +2 -85
  122. package/dist-types/ts3.4/commands/VerifyCommand.d.ts +2 -50
  123. package/dist-types/ts3.4/commands/index.d.ts +48 -0
  124. package/dist-types/ts3.4/index.d.ts +4 -55
  125. package/dist-types/ts3.4/models/models_0.d.ts +445 -2963
  126. package/dist-types/ts3.4/pagination/index.d.ts +5 -0
  127. package/dist-types/ts3.4/runtimeConfig.browser.d.ts +1 -3
  128. package/dist-types/ts3.4/runtimeConfig.d.ts +1 -3
  129. package/dist-types/ts3.4/runtimeConfig.native.d.ts +1 -3
  130. package/dist-types/ts3.4/runtimeConfig.shared.d.ts +1 -3
  131. package/package.json +32 -32
@@ -6,42 +6,11 @@ export interface PutKeyPolicyCommandInput extends PutKeyPolicyRequest {
6
6
  }
7
7
  export interface PutKeyPolicyCommandOutput extends __MetadataBearer {
8
8
  }
9
- /**
10
- * <p>Attaches a key policy to the specified KMS key. </p>
11
- * <p>For more information about key policies, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html">Key Policies</a> in the <i>Key Management Service Developer Guide</i>.
12
- * For help writing and formatting a JSON policy document, see the <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html">IAM JSON Policy Reference</a> in the <i>
13
- * <i>Identity and Access Management User Guide</i>
14
- * </i>. For examples of adding a key policy in multiple programming languages,
15
- * see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/programming-key-policies.html#put-policy">Setting a key policy</a> in the <i>Key Management Service Developer Guide</i>.</p>
16
- * <p>
17
- * <b>Cross-account use</b>: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.</p>
18
- *
19
- * <p>
20
- * <b>Required permissions</b>: <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:PutKeyPolicy</a> (key policy)</p>
21
- * <p>
22
- * <b>Related operations</b>: <a>GetKeyPolicy</a>
23
- * </p>
24
- * @example
25
- * Use a bare-bones client and the command you need to make an API call.
26
- * ```javascript
27
- * import { KMSClient, PutKeyPolicyCommand } from "@aws-sdk/client-kms"; // ES Modules import
28
- * // const { KMSClient, PutKeyPolicyCommand } = require("@aws-sdk/client-kms"); // CommonJS import
29
- * const client = new KMSClient(config);
30
- * const command = new PutKeyPolicyCommand(input);
31
- * const response = await client.send(command);
32
- * ```
33
- *
34
- * @see {@link PutKeyPolicyCommandInput} for command's `input` shape.
35
- * @see {@link PutKeyPolicyCommandOutput} for command's `response` shape.
36
- * @see {@link KMSClientResolvedConfig | config} for command's `input` shape.
37
- *
38
- */
9
+
39
10
  export declare class PutKeyPolicyCommand extends $Command<PutKeyPolicyCommandInput, PutKeyPolicyCommandOutput, KMSClientResolvedConfig> {
40
11
  readonly input: PutKeyPolicyCommandInput;
41
12
  constructor(input: PutKeyPolicyCommandInput);
42
- /**
43
- * @internal
44
- */
13
+
45
14
  resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: KMSClientResolvedConfig, options?: __HttpHandlerOptions): Handler<PutKeyPolicyCommandInput, PutKeyPolicyCommandOutput>;
46
15
  private serialize;
47
16
  private deserialize;
@@ -6,127 +6,11 @@ export interface ReEncryptCommandInput extends ReEncryptRequest {
6
6
  }
7
7
  export interface ReEncryptCommandOutput extends ReEncryptResponse, __MetadataBearer {
8
8
  }
9
- /**
10
- * <p>Decrypts ciphertext and then reencrypts it entirely within KMS. You can use this
11
- * operation to change the KMS key under which data is encrypted, such as when you <a href="https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html#rotate-keys-manually">manually
12
- * rotate</a> a KMS key or change the KMS key that protects a ciphertext. You can also use
13
- * it to reencrypt ciphertext under the same KMS key, such as to change the <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context">encryption
14
- * context</a> of a ciphertext.</p>
15
- * <p>The <code>ReEncrypt</code> operation can decrypt ciphertext that was encrypted by using an
16
- * KMS KMS key in an KMS operation, such as <a>Encrypt</a> or <a>GenerateDataKey</a>. It can also decrypt ciphertext that was encrypted by using the
17
- * public key of an <a href="https://docs.aws.amazon.com/kms/latest/developerguide/symm-asymm-concepts.html#asymmetric-cmks">asymmetric KMS key</a>
18
- * outside of KMS. However, it cannot decrypt ciphertext produced by other libraries, such as
19
- * the <a href="https://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/">Amazon Web Services Encryption SDK</a> or
20
- * <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingClientSideEncryption.html">Amazon S3
21
- * client-side encryption</a>. These libraries return a ciphertext format that is
22
- * incompatible with KMS.</p>
23
- * <p>When you use the <code>ReEncrypt</code> operation, you need to provide information for the
24
- * decrypt operation and the subsequent encrypt operation.</p>
25
- * <ul>
26
- * <li>
27
- * <p>If your ciphertext was encrypted under an asymmetric KMS key, you must use the
28
- * <code>SourceKeyId</code> parameter to identify the KMS key that encrypted the
29
- * ciphertext. You must also supply the encryption algorithm that was used. This information
30
- * is required to decrypt the data.</p>
31
- * </li>
32
- * <li>
33
- * <p>If your ciphertext was encrypted under a symmetric KMS key, the
34
- * <code>SourceKeyId</code> parameter is optional. KMS can get this information from
35
- * metadata that it adds to the symmetric ciphertext blob. This feature adds durability to
36
- * your implementation by ensuring that authorized users can decrypt ciphertext decades after
37
- * it was encrypted, even if they've lost track of the key ID. However, specifying the source
38
- * KMS key is always recommended as a best practice. When you use the
39
- * <code>SourceKeyId</code> parameter to specify a KMS key, KMS uses only the KMS key you
40
- * specify. If the ciphertext was encrypted under a different KMS key, the
41
- * <code>ReEncrypt</code> operation fails. This practice ensures that you use the KMS key
42
- * that you intend.</p>
43
- * </li>
44
- * <li>
45
- * <p>To reencrypt the data, you must use the <code>DestinationKeyId</code> parameter
46
- * specify the KMS key that re-encrypts the data after it is decrypted. You can select a
47
- * symmetric or asymmetric KMS key. If the destination KMS key is an asymmetric KMS key, you
48
- * must also provide the encryption algorithm. The algorithm that you choose must be
49
- * compatible with the KMS key.</p>
50
- *
51
- * <important>
52
- * <p>When you use an asymmetric KMS key to encrypt or reencrypt data, be sure to record the KMS key and encryption algorithm that you choose. You will be required to provide the same KMS key and encryption algorithm when you decrypt the data. If the KMS key and algorithm do not match the values used to encrypt the data, the decrypt operation fails.</p>
53
- * <p>You are not required to supply the key ID and encryption algorithm when you decrypt with symmetric KMS keys because KMS stores this information in the ciphertext blob. KMS cannot store metadata in ciphertext generated with asymmetric keys. The standard format for asymmetric key ciphertext does not include configurable fields.</p>
54
- * </important>
55
- * </li>
56
- * </ul>
57
- * <p>The KMS key that you use for this operation must be in a compatible key state. For
58
- * details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html">Key state: Effect on your KMS key</a> in the <i>Key Management Service Developer Guide</i>.</p>
59
- * <p>
60
- * <b>Cross-account use</b>: Yes.
61
- * The source KMS key and destination KMS key can be in different Amazon Web Services accounts. Either or both
62
- * KMS keys can be in a different account than the caller. To specify a KMS key in a different
63
- * account, you must use its key ARN or alias ARN.</p>
64
- *
65
- * <p>
66
- * <b>Required permissions</b>:</p>
67
- * <ul>
68
- * <li>
69
- * <p>
70
- * <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:ReEncryptFrom</a>
71
- * permission on the source KMS key (key policy)</p>
72
- * </li>
73
- * <li>
74
- * <p>
75
- * <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:ReEncryptTo</a>
76
- * permission on the destination KMS key (key policy)</p>
77
- * </li>
78
- * </ul>
79
- * <p>To permit reencryption from or to a KMS key, include the <code>"kms:ReEncrypt*"</code>
80
- * permission in your <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html">key policy</a>. This permission is
81
- * automatically included in the key policy when you use the console to create a KMS key. But you
82
- * must include it manually when you create a KMS key programmatically or when you use the <a>PutKeyPolicy</a> operation to set a key policy.</p>
83
- *
84
- * <p>
85
- * <b>Related operations:</b>
86
- * </p>
87
- * <ul>
88
- * <li>
89
- * <p>
90
- * <a>Decrypt</a>
91
- * </p>
92
- * </li>
93
- * <li>
94
- * <p>
95
- * <a>Encrypt</a>
96
- * </p>
97
- * </li>
98
- * <li>
99
- * <p>
100
- * <a>GenerateDataKey</a>
101
- * </p>
102
- * </li>
103
- * <li>
104
- * <p>
105
- * <a>GenerateDataKeyPair</a>
106
- * </p>
107
- * </li>
108
- * </ul>
109
- * @example
110
- * Use a bare-bones client and the command you need to make an API call.
111
- * ```javascript
112
- * import { KMSClient, ReEncryptCommand } from "@aws-sdk/client-kms"; // ES Modules import
113
- * // const { KMSClient, ReEncryptCommand } = require("@aws-sdk/client-kms"); // CommonJS import
114
- * const client = new KMSClient(config);
115
- * const command = new ReEncryptCommand(input);
116
- * const response = await client.send(command);
117
- * ```
118
- *
119
- * @see {@link ReEncryptCommandInput} for command's `input` shape.
120
- * @see {@link ReEncryptCommandOutput} for command's `response` shape.
121
- * @see {@link KMSClientResolvedConfig | config} for command's `input` shape.
122
- *
123
- */
9
+
124
10
  export declare class ReEncryptCommand extends $Command<ReEncryptCommandInput, ReEncryptCommandOutput, KMSClientResolvedConfig> {
125
11
  readonly input: ReEncryptCommandInput;
126
12
  constructor(input: ReEncryptCommandInput);
127
- /**
128
- * @internal
129
- */
13
+
130
14
  resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: KMSClientResolvedConfig, options?: __HttpHandlerOptions): Handler<ReEncryptCommandInput, ReEncryptCommandOutput>;
131
15
  private serialize;
132
16
  private deserialize;
@@ -6,106 +6,11 @@ export interface ReplicateKeyCommandInput extends ReplicateKeyRequest {
6
6
  }
7
7
  export interface ReplicateKeyCommandOutput extends ReplicateKeyResponse, __MetadataBearer {
8
8
  }
9
- /**
10
- * <p>Replicates a multi-Region key into the specified Region. This operation creates a
11
- * multi-Region replica key based on a multi-Region primary key in a different Region of the same
12
- * Amazon Web Services partition. You can create multiple replicas of a primary key, but each must be in a
13
- * different Region. To create a multi-Region primary key, use the <a>CreateKey</a>
14
- * operation.</p>
15
- * <p>This operation supports <i>multi-Region keys</i>, an KMS feature that lets you create multiple
16
- * interoperable KMS keys in different Amazon Web Services Regions. Because these KMS keys have the same key ID, key
17
- * material, and other metadata, you can use them interchangeably to encrypt data in one Amazon Web Services Region and decrypt
18
- * it in a different Amazon Web Services Region without re-encrypting the data or making a cross-Region call. For more information about multi-Region keys, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html">Using multi-Region keys</a> in the <i>Key Management Service Developer Guide</i>.</p>
19
- * <p>A <i>replica key</i> is a fully-functional KMS key that can be used
20
- * independently of its primary and peer replica keys. A primary key and its replica keys share
21
- * properties that make them interoperable. They have the same <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id-key-id">key ID</a> and key material. They also
22
- * have the same <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-spec">key
23
- * spec</a>, <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-usage">key
24
- * usage</a>, <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-origin">key
25
- * material origin</a>, and <a href="https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html">automatic key rotation status</a>. KMS automatically synchronizes these shared
26
- * properties among related multi-Region keys. All other properties of a replica key can differ,
27
- * including its <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html">key
28
- * policy</a>, <a href="https://docs.aws.amazon.com/kms/latest/developerguide/tagging-keys.html">tags</a>, <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-alias.html">aliases</a>, and <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html">key
29
- * state</a>. KMS pricing and quotas for KMS keys apply to each primary key and replica
30
- * key.</p>
31
- * <p>When this operation completes, the new replica key has a transient key state of
32
- * <code>Creating</code>. This key state changes to <code>Enabled</code> (or
33
- * <code>PendingImport</code>) after a few seconds when the process of creating the new replica
34
- * key is complete. While the key state is <code>Creating</code>, you can manage key, but you
35
- * cannot yet use it in cryptographic operations. If you are creating and using the replica key
36
- * programmatically, retry on <code>KMSInvalidStateException</code> or call
37
- * <code>DescribeKey</code> to check its <code>KeyState</code> value before using it. For
38
- * details about the <code>Creating</code> key state, see <a href="kms/latest/developerguide/key-state.html">Key state: Effect on your KMS key</a> in the
39
- * <i>Key Management Service Developer Guide</i>.</p>
40
- * <p>The CloudTrail log of a <code>ReplicateKey</code> operation records a
41
- * <code>ReplicateKey</code> operation in the primary key's Region and a <a>CreateKey</a> operation in the replica key's Region.</p>
42
- * <p>If you replicate a multi-Region primary key with imported key material, the replica key is
43
- * created with no key material. You must import the same key material that you imported into the
44
- * primary key. For details, see <a href="kms/latest/developerguide/multi-region-keys-import.html">Importing key material into multi-Region keys</a> in the <i>Key Management Service Developer Guide</i>.</p>
45
- * <p>To convert a replica key to a primary key, use the <a>UpdatePrimaryRegion</a>
46
- * operation.</p>
47
- * <note>
48
- * <p>
49
- * <code>ReplicateKey</code> uses different default values for the <code>KeyPolicy</code>
50
- * and <code>Tags</code> parameters than those used in the KMS console. For details, see the
51
- * parameter descriptions.</p>
52
- * </note>
53
- * <p>
54
- * <b>Cross-account use</b>: No. You cannot use this operation to
55
- * create a replica key in a different Amazon Web Services account. </p>
56
- * <p>
57
- * <b>Required permissions</b>: </p>
58
- * <ul>
59
- * <li>
60
- * <p>
61
- * <code>kms:ReplicateKey</code> on the primary key (in the primary key's Region).
62
- * Include this permission in the primary key's key policy.</p>
63
- * </li>
64
- * <li>
65
- * <p>
66
- * <code>kms:CreateKey</code> in an IAM policy in the replica Region.</p>
67
- * </li>
68
- * <li>
69
- * <p>To use the <code>Tags</code> parameter, <code>kms:TagResource</code> in an IAM policy
70
- * in the replica Region.</p>
71
- * </li>
72
- * </ul>
73
- * <p>
74
- * <b>Related operations</b>
75
- * </p>
76
- * <ul>
77
- * <li>
78
- * <p>
79
- * <a>CreateKey</a>
80
- * </p>
81
- * </li>
82
- * <li>
83
- * <p>
84
- * <a>UpdatePrimaryRegion</a>
85
- * </p>
86
- * </li>
87
- * </ul>
88
- * @example
89
- * Use a bare-bones client and the command you need to make an API call.
90
- * ```javascript
91
- * import { KMSClient, ReplicateKeyCommand } from "@aws-sdk/client-kms"; // ES Modules import
92
- * // const { KMSClient, ReplicateKeyCommand } = require("@aws-sdk/client-kms"); // CommonJS import
93
- * const client = new KMSClient(config);
94
- * const command = new ReplicateKeyCommand(input);
95
- * const response = await client.send(command);
96
- * ```
97
- *
98
- * @see {@link ReplicateKeyCommandInput} for command's `input` shape.
99
- * @see {@link ReplicateKeyCommandOutput} for command's `response` shape.
100
- * @see {@link KMSClientResolvedConfig | config} for command's `input` shape.
101
- *
102
- */
9
+
103
10
  export declare class ReplicateKeyCommand extends $Command<ReplicateKeyCommandInput, ReplicateKeyCommandOutput, KMSClientResolvedConfig> {
104
11
  readonly input: ReplicateKeyCommandInput;
105
12
  constructor(input: ReplicateKeyCommandInput);
106
- /**
107
- * @internal
108
- */
13
+
109
14
  resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: KMSClientResolvedConfig, options?: __HttpHandlerOptions): Handler<ReplicateKeyCommandInput, ReplicateKeyCommandOutput>;
110
15
  private serialize;
111
16
  private deserialize;
@@ -6,75 +6,11 @@ export interface RetireGrantCommandInput extends RetireGrantRequest {
6
6
  }
7
7
  export interface RetireGrantCommandOutput extends __MetadataBearer {
8
8
  }
9
- /**
10
- * <p>Deletes a grant. Typically, you retire a grant when you no longer need its permissions. To
11
- * identify the grant to retire, use a <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#grant_token">grant token</a>, or both the grant ID and a
12
- * key identifier (key ID or key ARN) of the KMS key. The <a>CreateGrant</a> operation
13
- * returns both values.</p>
14
- * <p>This operation can be called by the <i>retiring principal</i> for a grant,
15
- * by the <i>grantee principal</i> if the grant allows the <code>RetireGrant</code>
16
- * operation, and by the Amazon Web Services account (root user) in which the grant is created. It can also be
17
- * called by principals to whom permission for retiring a grant is delegated. For details, see
18
- * <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grant-manage.html#grant-delete">Retiring and
19
- * revoking grants</a> in the <i>Key Management Service Developer Guide</i>.</p>
20
- * <p>For detailed information about grants, including grant terminology, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grants.html">Using grants</a> in the
21
- * <i>
22
- * <i>Key Management Service Developer Guide</i>
23
- * </i>. For examples of working with grants in several
24
- * programming languages, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/programming-grants.html">Programming grants</a>. </p>
25
- * <p>
26
- * <b>Cross-account use</b>: Yes. You can retire a grant on a KMS
27
- * key in a different Amazon Web Services account.</p>
28
- * <p>
29
- * <b>Required permissions:</b>:Permission to retire a grant is
30
- * determined primarily by the grant. For details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grant-manage.html#grant-delete">Retiring and revoking grants</a> in
31
- * the <i>Key Management Service Developer Guide</i>.</p>
32
- * <p>
33
- * <b>Related operations:</b>
34
- * </p>
35
- * <ul>
36
- * <li>
37
- * <p>
38
- * <a>CreateGrant</a>
39
- * </p>
40
- * </li>
41
- * <li>
42
- * <p>
43
- * <a>ListGrants</a>
44
- * </p>
45
- * </li>
46
- * <li>
47
- * <p>
48
- * <a>ListRetirableGrants</a>
49
- * </p>
50
- * </li>
51
- * <li>
52
- * <p>
53
- * <a>RevokeGrant</a>
54
- * </p>
55
- * </li>
56
- * </ul>
57
- * @example
58
- * Use a bare-bones client and the command you need to make an API call.
59
- * ```javascript
60
- * import { KMSClient, RetireGrantCommand } from "@aws-sdk/client-kms"; // ES Modules import
61
- * // const { KMSClient, RetireGrantCommand } = require("@aws-sdk/client-kms"); // CommonJS import
62
- * const client = new KMSClient(config);
63
- * const command = new RetireGrantCommand(input);
64
- * const response = await client.send(command);
65
- * ```
66
- *
67
- * @see {@link RetireGrantCommandInput} for command's `input` shape.
68
- * @see {@link RetireGrantCommandOutput} for command's `response` shape.
69
- * @see {@link KMSClientResolvedConfig | config} for command's `input` shape.
70
- *
71
- */
9
+
72
10
  export declare class RetireGrantCommand extends $Command<RetireGrantCommandInput, RetireGrantCommandOutput, KMSClientResolvedConfig> {
73
11
  readonly input: RetireGrantCommandInput;
74
12
  constructor(input: RetireGrantCommandInput);
75
- /**
76
- * @internal
77
- */
13
+
78
14
  resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: KMSClientResolvedConfig, options?: __HttpHandlerOptions): Handler<RetireGrantCommandInput, RetireGrantCommandOutput>;
79
15
  private serialize;
80
16
  private deserialize;
@@ -6,72 +6,11 @@ export interface RevokeGrantCommandInput extends RevokeGrantRequest {
6
6
  }
7
7
  export interface RevokeGrantCommandOutput extends __MetadataBearer {
8
8
  }
9
- /**
10
- * <p>Deletes the specified grant. You revoke a grant to terminate the permissions that the
11
- * grant allows. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/managing-grants.html#grant-delete">Retiring and revoking grants</a> in
12
- * the <i>
13
- * <i>Key Management Service Developer Guide</i>
14
- * </i>.</p>
15
- * <p>When you create, retire, or revoke a grant, there might be a brief delay, usually less than five minutes, until the grant is available throughout KMS. This state is known as <i>eventual consistency</i>. For details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#terms-eventual-consistency">Eventual consistency</a> in
16
- * the <i>
17
- * <i>Key Management Service Developer Guide</i>
18
- * </i>. </p>
19
- * <p>For detailed information about grants, including grant terminology, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grants.html">Using grants</a> in the
20
- * <i>
21
- * <i>Key Management Service Developer Guide</i>
22
- * </i>. For examples of working with grants in several
23
- * programming languages, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/programming-grants.html">Programming grants</a>. </p>
24
- * <p>
25
- * <b>Cross-account use</b>: Yes. To perform this operation on a KMS key in a different Amazon Web Services account, specify the key
26
- * ARN in the value of the <code>KeyId</code> parameter.</p>
27
- * <p>
28
- * <b>Required permissions</b>: <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:RevokeGrant</a> (key policy).</p>
29
- * <p>
30
- * <b>Related operations:</b>
31
- * </p>
32
- * <ul>
33
- * <li>
34
- * <p>
35
- * <a>CreateGrant</a>
36
- * </p>
37
- * </li>
38
- * <li>
39
- * <p>
40
- * <a>ListGrants</a>
41
- * </p>
42
- * </li>
43
- * <li>
44
- * <p>
45
- * <a>ListRetirableGrants</a>
46
- * </p>
47
- * </li>
48
- * <li>
49
- * <p>
50
- * <a>RetireGrant</a>
51
- * </p>
52
- * </li>
53
- * </ul>
54
- * @example
55
- * Use a bare-bones client and the command you need to make an API call.
56
- * ```javascript
57
- * import { KMSClient, RevokeGrantCommand } from "@aws-sdk/client-kms"; // ES Modules import
58
- * // const { KMSClient, RevokeGrantCommand } = require("@aws-sdk/client-kms"); // CommonJS import
59
- * const client = new KMSClient(config);
60
- * const command = new RevokeGrantCommand(input);
61
- * const response = await client.send(command);
62
- * ```
63
- *
64
- * @see {@link RevokeGrantCommandInput} for command's `input` shape.
65
- * @see {@link RevokeGrantCommandOutput} for command's `response` shape.
66
- * @see {@link KMSClientResolvedConfig | config} for command's `input` shape.
67
- *
68
- */
9
+
69
10
  export declare class RevokeGrantCommand extends $Command<RevokeGrantCommandInput, RevokeGrantCommandOutput, KMSClientResolvedConfig> {
70
11
  readonly input: RevokeGrantCommandInput;
71
12
  constructor(input: RevokeGrantCommandInput);
72
- /**
73
- * @internal
74
- */
13
+
75
14
  resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: KMSClientResolvedConfig, options?: __HttpHandlerOptions): Handler<RevokeGrantCommandInput, RevokeGrantCommandOutput>;
76
15
  private serialize;
77
16
  private deserialize;
@@ -6,83 +6,11 @@ export interface ScheduleKeyDeletionCommandInput extends ScheduleKeyDeletionRequ
6
6
  }
7
7
  export interface ScheduleKeyDeletionCommandOutput extends ScheduleKeyDeletionResponse, __MetadataBearer {
8
8
  }
9
- /**
10
- * <p>Schedules the deletion of a KMS key. By default, KMS applies a waiting period of 30
11
- * days, but you can specify a waiting period of 7-30 days. When this operation is successful,
12
- * the key state of the KMS key changes to <code>PendingDeletion</code> and the key can't be used
13
- * in any cryptographic operations. It remains in this state for the duration of the waiting
14
- * period. Before the waiting period ends, you can use <a>CancelKeyDeletion</a> to
15
- * cancel the deletion of the KMS key. After the waiting period ends, KMS deletes the KMS key,
16
- * its key material, and all KMS data associated with it, including all aliases that refer to
17
- * it.</p>
18
- * <important>
19
- * <p>Deleting a KMS key is a destructive and potentially dangerous operation. When a KMS key
20
- * is deleted, all data that was encrypted under the KMS key is unrecoverable. (The only
21
- * exception is a multi-Region replica key.) To prevent the use of a KMS key without deleting
22
- * it, use <a>DisableKey</a>. </p>
23
- * </important>
24
- * <p>If you schedule deletion of a KMS key from a <a href="https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html">custom key store</a>, when the waiting period
25
- * expires, <code>ScheduleKeyDeletion</code> deletes the KMS key from KMS. Then KMS makes a
26
- * best effort to delete the key material from the associated CloudHSM cluster. However, you might
27
- * need to manually <a href="https://docs.aws.amazon.com/kms/latest/developerguide/fix-keystore.html#fix-keystore-orphaned-key">delete the orphaned key
28
- * material</a> from the cluster and its backups.</p>
29
- * <p>You can schedule the deletion of a multi-Region primary key and its replica keys at any
30
- * time. However, KMS will not delete a multi-Region primary key with existing replica keys. If
31
- * you schedule the deletion of a primary key with replicas, its key state changes to
32
- * <code>PendingReplicaDeletion</code> and it cannot be replicated or used in cryptographic
33
- * operations. This status can continue indefinitely. When the last of its replicas keys is
34
- * deleted (not just scheduled), the key state of the primary key changes to
35
- * <code>PendingDeletion</code> and its waiting period (<code>PendingWindowInDays</code>)
36
- * begins. For details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-delete.html">Deleting multi-Region keys</a> in the
37
- * <i>Key Management Service Developer Guide</i>. </p>
38
- * <p>For more information about scheduling a KMS key for deletion, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/deleting-keys.html">Deleting KMS keys</a> in the
39
- * <i>Key Management Service Developer Guide</i>.</p>
40
- * <p>The KMS key that you use for this operation must be in a compatible key state. For
41
- * details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html">Key state: Effect on your KMS key</a> in the <i>Key Management Service Developer Guide</i>.</p>
42
- * <p>
43
- * <b>Cross-account
44
- * use</b>: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.</p>
45
- *
46
- *
47
- * <p>
48
- * <b>Required permissions</b>: kms:ScheduleKeyDeletion (key
49
- * policy)</p>
50
- * <p>
51
- * <b>Related operations</b>
52
- * </p>
53
- * <ul>
54
- * <li>
55
- * <p>
56
- * <a>CancelKeyDeletion</a>
57
- * </p>
58
- * </li>
59
- * <li>
60
- * <p>
61
- * <a>DisableKey</a>
62
- * </p>
63
- * </li>
64
- * </ul>
65
- * @example
66
- * Use a bare-bones client and the command you need to make an API call.
67
- * ```javascript
68
- * import { KMSClient, ScheduleKeyDeletionCommand } from "@aws-sdk/client-kms"; // ES Modules import
69
- * // const { KMSClient, ScheduleKeyDeletionCommand } = require("@aws-sdk/client-kms"); // CommonJS import
70
- * const client = new KMSClient(config);
71
- * const command = new ScheduleKeyDeletionCommand(input);
72
- * const response = await client.send(command);
73
- * ```
74
- *
75
- * @see {@link ScheduleKeyDeletionCommandInput} for command's `input` shape.
76
- * @see {@link ScheduleKeyDeletionCommandOutput} for command's `response` shape.
77
- * @see {@link KMSClientResolvedConfig | config} for command's `input` shape.
78
- *
79
- */
9
+
80
10
  export declare class ScheduleKeyDeletionCommand extends $Command<ScheduleKeyDeletionCommandInput, ScheduleKeyDeletionCommandOutput, KMSClientResolvedConfig> {
81
11
  readonly input: ScheduleKeyDeletionCommandInput;
82
12
  constructor(input: ScheduleKeyDeletionCommandInput);
83
- /**
84
- * @internal
85
- */
13
+
86
14
  resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: KMSClientResolvedConfig, options?: __HttpHandlerOptions): Handler<ScheduleKeyDeletionCommandInput, ScheduleKeyDeletionCommandOutput>;
87
15
  private serialize;
88
16
  private deserialize;
@@ -6,74 +6,11 @@ export interface SignCommandInput extends SignRequest {
6
6
  }
7
7
  export interface SignCommandOutput extends SignResponse, __MetadataBearer {
8
8
  }
9
- /**
10
- * <p>Creates a <a href="https://en.wikipedia.org/wiki/Digital_signature">digital
11
- * signature</a> for a message or message digest by using the private key in an asymmetric
12
- * KMS key. To verify the signature, use the <a>Verify</a> operation, or use the
13
- * public key in the same asymmetric KMS key outside of KMS. For information about symmetric and asymmetric KMS keys, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Using Symmetric and Asymmetric KMS keys</a> in the <i>Key Management Service Developer Guide</i>.</p>
14
- * <p>Digital signatures are generated and verified by using asymmetric key pair, such as an RSA
15
- * or ECC pair that is represented by an asymmetric KMS key. The key owner (or an authorized
16
- * user) uses their private key to sign a message. Anyone with the public key can verify that the
17
- * message was signed with that particular private key and that the message hasn't changed since
18
- * it was signed. </p>
19
- * <p>To use the <code>Sign</code> operation, provide the following information:</p>
20
- * <ul>
21
- * <li>
22
- * <p>Use the <code>KeyId</code> parameter to identify an asymmetric KMS key with a
23
- * <code>KeyUsage</code> value of <code>SIGN_VERIFY</code>. To get the
24
- * <code>KeyUsage</code> value of a KMS key, use the <a>DescribeKey</a>
25
- * operation. The caller must have <code>kms:Sign</code> permission on the KMS key.</p>
26
- * </li>
27
- * <li>
28
- * <p>Use the <code>Message</code> parameter to specify the message or message digest to
29
- * sign. You can submit messages of up to 4096 bytes. To sign a larger message, generate a
30
- * hash digest of the message, and then provide the hash digest in the <code>Message</code>
31
- * parameter. To indicate whether the message is a full message or a digest, use the
32
- * <code>MessageType</code> parameter.</p>
33
- * </li>
34
- * <li>
35
- * <p>Choose a signing algorithm that is compatible with the KMS key. </p>
36
- * </li>
37
- * </ul>
38
- * <important>
39
- * <p>When signing a message, be sure to record the KMS key and the signing algorithm. This
40
- * information is required to verify the signature.</p>
41
- * </important>
42
- * <p>To verify the signature that this operation generates, use the <a>Verify</a>
43
- * operation. Or use the <a>GetPublicKey</a> operation to download the public key and
44
- * then use the public key to verify the signature outside of KMS. </p>
45
- * <p>The KMS key that you use for this operation must be in a compatible key state. For
46
- * details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html">Key state: Effect on your KMS key</a> in the <i>Key Management Service Developer Guide</i>.</p>
47
- * <p>
48
- * <b>Cross-account use</b>: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify
49
- * the key ARN or alias ARN in the value of the <code>KeyId</code> parameter.</p>
50
- *
51
- * <p>
52
- * <b>Required permissions</b>: <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:Sign</a> (key policy)</p>
53
- * <p>
54
- * <b>Related operations</b>: <a>Verify</a>
55
- * </p>
56
- * @example
57
- * Use a bare-bones client and the command you need to make an API call.
58
- * ```javascript
59
- * import { KMSClient, SignCommand } from "@aws-sdk/client-kms"; // ES Modules import
60
- * // const { KMSClient, SignCommand } = require("@aws-sdk/client-kms"); // CommonJS import
61
- * const client = new KMSClient(config);
62
- * const command = new SignCommand(input);
63
- * const response = await client.send(command);
64
- * ```
65
- *
66
- * @see {@link SignCommandInput} for command's `input` shape.
67
- * @see {@link SignCommandOutput} for command's `response` shape.
68
- * @see {@link KMSClientResolvedConfig | config} for command's `input` shape.
69
- *
70
- */
9
+
71
10
  export declare class SignCommand extends $Command<SignCommandInput, SignCommandOutput, KMSClientResolvedConfig> {
72
11
  readonly input: SignCommandInput;
73
12
  constructor(input: SignCommandInput);
74
- /**
75
- * @internal
76
- */
13
+
77
14
  resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: KMSClientResolvedConfig, options?: __HttpHandlerOptions): Handler<SignCommandInput, SignCommandOutput>;
78
15
  private serialize;
79
16
  private deserialize;