@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
@@ -4,355 +4,181 @@ export declare enum AlgorithmSpec {
4
4
  RSAES_OAEP_SHA_256 = "RSAES_OAEP_SHA_256",
5
5
  RSAES_PKCS1_V1_5 = "RSAES_PKCS1_V1_5"
6
6
  }
7
- /**
8
- * <p>Contains information about an alias.</p>
9
- */
7
+
10
8
  export interface AliasListEntry {
11
- /**
12
- * <p>String that contains the alias. This value begins with <code>alias/</code>.</p>
13
- */
9
+
14
10
  AliasName?: string;
15
- /**
16
- * <p>String that contains the key ARN.</p>
17
- */
11
+
18
12
  AliasArn?: string;
19
- /**
20
- * <p>String that contains the key identifier of the KMS key associated with the alias.</p>
21
- */
13
+
22
14
  TargetKeyId?: string;
23
- /**
24
- * <p>Date and time that the alias was most recently created in the account and Region.
25
- * Formatted as Unix time.</p>
26
- */
15
+
27
16
  CreationDate?: Date;
28
- /**
29
- * <p>Date and time that the alias was most recently associated with a KMS key in the account
30
- * and Region. Formatted as Unix time.</p>
31
- */
17
+
32
18
  LastUpdatedDate?: Date;
33
19
  }
34
20
  export declare namespace AliasListEntry {
35
- /**
36
- * @internal
37
- */
21
+
38
22
  const filterSensitiveLog: (obj: AliasListEntry) => any;
39
23
  }
40
- /**
41
- * <p>The request was rejected because it attempted to create a resource that already
42
- * exists.</p>
43
- */
24
+
44
25
  export interface AlreadyExistsException extends __SmithyException, $MetadataBearer {
45
26
  name: "AlreadyExistsException";
46
27
  $fault: "client";
47
28
  message?: string;
48
29
  }
49
30
  export declare namespace AlreadyExistsException {
50
- /**
51
- * @internal
52
- */
31
+
53
32
  const filterSensitiveLog: (obj: AlreadyExistsException) => any;
54
33
  }
55
34
  export interface CancelKeyDeletionRequest {
56
- /**
57
- * <p>Identifies the KMS key whose deletion is being canceled.</p>
58
- *
59
- * <p>Specify the key ID or key ARN of the KMS key.</p>
60
- * <p>For example:</p>
61
- * <ul>
62
- * <li>
63
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
64
- * </p>
65
- * </li>
66
- * <li>
67
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
68
- * </p>
69
- * </li>
70
- * </ul>
71
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
72
- */
35
+
73
36
  KeyId: string | undefined;
74
37
  }
75
38
  export declare namespace CancelKeyDeletionRequest {
76
- /**
77
- * @internal
78
- */
39
+
79
40
  const filterSensitiveLog: (obj: CancelKeyDeletionRequest) => any;
80
41
  }
81
42
  export interface CancelKeyDeletionResponse {
82
- /**
83
- * <p>The Amazon Resource Name (<a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id-key-ARN">key ARN</a>) of the KMS key whose deletion is canceled.</p>
84
- */
43
+
85
44
  KeyId?: string;
86
45
  }
87
46
  export declare namespace CancelKeyDeletionResponse {
88
- /**
89
- * @internal
90
- */
47
+
91
48
  const filterSensitiveLog: (obj: CancelKeyDeletionResponse) => any;
92
49
  }
93
- /**
94
- * <p>The system timed out while trying to fulfill the request. The request can be
95
- * retried.</p>
96
- */
50
+
97
51
  export interface DependencyTimeoutException extends __SmithyException, $MetadataBearer {
98
52
  name: "DependencyTimeoutException";
99
53
  $fault: "server";
100
54
  message?: string;
101
55
  }
102
56
  export declare namespace DependencyTimeoutException {
103
- /**
104
- * @internal
105
- */
57
+
106
58
  const filterSensitiveLog: (obj: DependencyTimeoutException) => any;
107
59
  }
108
- /**
109
- * <p>The request was rejected because a specified ARN, or an ARN in a key policy, is not
110
- * valid.</p>
111
- */
60
+
112
61
  export interface InvalidArnException extends __SmithyException, $MetadataBearer {
113
62
  name: "InvalidArnException";
114
63
  $fault: "client";
115
64
  message?: string;
116
65
  }
117
66
  export declare namespace InvalidArnException {
118
- /**
119
- * @internal
120
- */
67
+
121
68
  const filterSensitiveLog: (obj: InvalidArnException) => any;
122
69
  }
123
- /**
124
- * <p>The request was rejected because an internal exception occurred. The request can be
125
- * retried.</p>
126
- */
70
+
127
71
  export interface KMSInternalException extends __SmithyException, $MetadataBearer {
128
72
  name: "KMSInternalException";
129
73
  $fault: "server";
130
74
  message?: string;
131
75
  }
132
76
  export declare namespace KMSInternalException {
133
- /**
134
- * @internal
135
- */
77
+
136
78
  const filterSensitiveLog: (obj: KMSInternalException) => any;
137
79
  }
138
- /**
139
- * <p>The request was rejected because the state of the specified resource is not valid for this
140
- * request.</p>
141
- * <p>For more information about how key state affects the use of a KMS key, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html">Key state: Effect on your KMS
142
- * key</a> in the <i>
143
- * <i>Key Management Service Developer Guide</i>
144
- * </i>.</p>
145
- */
80
+
146
81
  export interface KMSInvalidStateException extends __SmithyException, $MetadataBearer {
147
82
  name: "KMSInvalidStateException";
148
83
  $fault: "client";
149
84
  message?: string;
150
85
  }
151
86
  export declare namespace KMSInvalidStateException {
152
- /**
153
- * @internal
154
- */
87
+
155
88
  const filterSensitiveLog: (obj: KMSInvalidStateException) => any;
156
89
  }
157
- /**
158
- * <p>The request was rejected because the specified entity or resource could not be
159
- * found.</p>
160
- */
90
+
161
91
  export interface NotFoundException extends __SmithyException, $MetadataBearer {
162
92
  name: "NotFoundException";
163
93
  $fault: "client";
164
94
  message?: string;
165
95
  }
166
96
  export declare namespace NotFoundException {
167
- /**
168
- * @internal
169
- */
97
+
170
98
  const filterSensitiveLog: (obj: NotFoundException) => any;
171
99
  }
172
- /**
173
- * <p>The request was rejected because the specified CloudHSM cluster is already associated with a
174
- * custom key store or it shares a backup history with a cluster that is associated with a custom
175
- * key store. Each custom key store must be associated with a different CloudHSM cluster.</p>
176
- * <p>Clusters that share a backup history have the same cluster certificate. To view the
177
- * cluster certificate of a cluster, use the <a href="https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html">DescribeClusters</a> operation.</p>
178
- */
100
+
179
101
  export interface CloudHsmClusterInUseException extends __SmithyException, $MetadataBearer {
180
102
  name: "CloudHsmClusterInUseException";
181
103
  $fault: "client";
182
104
  message?: string;
183
105
  }
184
106
  export declare namespace CloudHsmClusterInUseException {
185
- /**
186
- * @internal
187
- */
107
+
188
108
  const filterSensitiveLog: (obj: CloudHsmClusterInUseException) => any;
189
109
  }
190
- /**
191
- * <p>The request was rejected because the associated CloudHSM cluster did not meet the
192
- * configuration requirements for a custom key store.</p>
193
- *
194
- * <ul>
195
- * <li>
196
- * <p>The cluster must be configured with private subnets in at least two different
197
- * Availability Zones in the Region.</p>
198
- * </li>
199
- * <li>
200
- * <p>The <a href="https://docs.aws.amazon.com/cloudhsm/latest/userguide/configure-sg.html">security group for
201
- * the cluster</a> (cloudhsm-cluster-<i><cluster-id></i>-sg) must
202
- * include inbound rules and outbound rules that allow TCP traffic on ports 2223-2225. The
203
- * <b>Source</b> in the inbound rules and the <b>Destination</b> in the outbound rules must match the security group
204
- * ID. These rules are set by default when you create the cluster. Do not delete or change
205
- * them. To get information about a particular security group, use the <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSecurityGroups.html">DescribeSecurityGroups</a> operation.</p>
206
- * </li>
207
- * <li>
208
- * <p>The cluster must contain at least as many HSMs as the operation requires. To add HSMs,
209
- * use the CloudHSM <a href="https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_CreateHsm.html">CreateHsm</a> operation.</p>
210
- * <p>For the <a>CreateCustomKeyStore</a>, <a>UpdateCustomKeyStore</a>, and <a>CreateKey</a> operations, the CloudHSM cluster must have at least two
211
- * active HSMs, each in a different Availability Zone. For the <a>ConnectCustomKeyStore</a> operation, the CloudHSM must contain at least one active
212
- * HSM.</p>
213
- * </li>
214
- * </ul>
215
- * <p>For information about the requirements for an CloudHSM cluster that is associated with a
216
- * custom key store, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/create-keystore.html#before-keystore">Assemble the Prerequisites</a>
217
- * in the <i>Key Management Service Developer Guide</i>. For information about creating a private subnet for an CloudHSM cluster,
218
- * see <a href="https://docs.aws.amazon.com/cloudhsm/latest/userguide/create-subnets.html">Create a Private
219
- * Subnet</a> in the <i>CloudHSM User Guide</i>. For information about cluster security groups, see
220
- * <a href="https://docs.aws.amazon.com/cloudhsm/latest/userguide/configure-sg.html">Configure a Default Security
221
- * Group</a> in the <i>
222
- * <i>CloudHSM User Guide</i>
223
- * </i>. </p>
224
- */
110
+
225
111
  export interface CloudHsmClusterInvalidConfigurationException extends __SmithyException, $MetadataBearer {
226
112
  name: "CloudHsmClusterInvalidConfigurationException";
227
113
  $fault: "client";
228
114
  message?: string;
229
115
  }
230
116
  export declare namespace CloudHsmClusterInvalidConfigurationException {
231
- /**
232
- * @internal
233
- */
117
+
234
118
  const filterSensitiveLog: (obj: CloudHsmClusterInvalidConfigurationException) => any;
235
119
  }
236
- /**
237
- * <p>The request was rejected because the CloudHSM cluster that is associated with the custom key
238
- * store is not active. Initialize and activate the cluster and try the command again. For
239
- * detailed instructions, see <a href="https://docs.aws.amazon.com/cloudhsm/latest/userguide/getting-started.html">Getting Started</a> in the <i>CloudHSM User Guide</i>.</p>
240
- */
120
+
241
121
  export interface CloudHsmClusterNotActiveException extends __SmithyException, $MetadataBearer {
242
122
  name: "CloudHsmClusterNotActiveException";
243
123
  $fault: "client";
244
124
  message?: string;
245
125
  }
246
126
  export declare namespace CloudHsmClusterNotActiveException {
247
- /**
248
- * @internal
249
- */
127
+
250
128
  const filterSensitiveLog: (obj: CloudHsmClusterNotActiveException) => any;
251
129
  }
252
- /**
253
- * <p>The request was rejected because KMS cannot find the CloudHSM cluster with the specified
254
- * cluster ID. Retry the request with a different cluster ID.</p>
255
- */
130
+
256
131
  export interface CloudHsmClusterNotFoundException extends __SmithyException, $MetadataBearer {
257
132
  name: "CloudHsmClusterNotFoundException";
258
133
  $fault: "client";
259
134
  message?: string;
260
135
  }
261
136
  export declare namespace CloudHsmClusterNotFoundException {
262
- /**
263
- * @internal
264
- */
137
+
265
138
  const filterSensitiveLog: (obj: CloudHsmClusterNotFoundException) => any;
266
139
  }
267
- /**
268
- * <p>The request was rejected because the specified CloudHSM cluster has a different cluster
269
- * certificate than the original cluster. You cannot use the operation to specify an unrelated
270
- * cluster.</p>
271
- * <p>Specify a cluster that shares a backup history with the original cluster. This includes
272
- * clusters that were created from a backup of the current cluster, and clusters that were
273
- * created from the same backup that produced the current cluster.</p>
274
- * <p>Clusters that share a backup history have the same cluster certificate. To view the
275
- * cluster certificate of a cluster, use the <a href="https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html">DescribeClusters</a> operation.</p>
276
- */
140
+
277
141
  export interface CloudHsmClusterNotRelatedException extends __SmithyException, $MetadataBearer {
278
142
  name: "CloudHsmClusterNotRelatedException";
279
143
  $fault: "client";
280
144
  message?: string;
281
145
  }
282
146
  export declare namespace CloudHsmClusterNotRelatedException {
283
- /**
284
- * @internal
285
- */
147
+
286
148
  const filterSensitiveLog: (obj: CloudHsmClusterNotRelatedException) => any;
287
149
  }
288
150
  export interface ConnectCustomKeyStoreRequest {
289
- /**
290
- * <p>Enter the key store ID of the custom key store that you want to connect.
291
- * To find the ID of a custom key store, use the <a>DescribeCustomKeyStores</a> operation.</p>
292
- */
151
+
293
152
  CustomKeyStoreId: string | undefined;
294
153
  }
295
154
  export declare namespace ConnectCustomKeyStoreRequest {
296
- /**
297
- * @internal
298
- */
155
+
299
156
  const filterSensitiveLog: (obj: ConnectCustomKeyStoreRequest) => any;
300
157
  }
301
158
  export interface ConnectCustomKeyStoreResponse {
302
159
  }
303
160
  export declare namespace ConnectCustomKeyStoreResponse {
304
- /**
305
- * @internal
306
- */
161
+
307
162
  const filterSensitiveLog: (obj: ConnectCustomKeyStoreResponse) => any;
308
163
  }
309
- /**
310
- * <p>The request was rejected because of the <code>ConnectionState</code> of the custom key
311
- * store. To get the <code>ConnectionState</code> of a custom key store, use the <a>DescribeCustomKeyStores</a> operation.</p>
312
- * <p>This exception is thrown under the following conditions:</p>
313
- * <ul>
314
- * <li>
315
- * <p>You requested the <a>CreateKey</a> or <a>GenerateRandom</a>
316
- * operation in a custom key store that is not connected. These operations are valid only
317
- * when the custom key store <code>ConnectionState</code> is <code>CONNECTED</code>.</p>
318
- * </li>
319
- * <li>
320
- * <p>You requested the <a>UpdateCustomKeyStore</a> or <a>DeleteCustomKeyStore</a> operation on a custom key store that is not
321
- * disconnected. This operation is valid only when the custom key store
322
- * <code>ConnectionState</code> is <code>DISCONNECTED</code>.</p>
323
- * </li>
324
- * <li>
325
- * <p>You requested the <a>ConnectCustomKeyStore</a> operation on a custom key
326
- * store with a <code>ConnectionState</code> of <code>DISCONNECTING</code> or
327
- * <code>FAILED</code>. This operation is valid for all other <code>ConnectionState</code>
328
- * values.</p>
329
- * </li>
330
- * </ul>
331
- */
164
+
332
165
  export interface CustomKeyStoreInvalidStateException extends __SmithyException, $MetadataBearer {
333
166
  name: "CustomKeyStoreInvalidStateException";
334
167
  $fault: "client";
335
168
  message?: string;
336
169
  }
337
170
  export declare namespace CustomKeyStoreInvalidStateException {
338
- /**
339
- * @internal
340
- */
171
+
341
172
  const filterSensitiveLog: (obj: CustomKeyStoreInvalidStateException) => any;
342
173
  }
343
- /**
344
- * <p>The request was rejected because KMS cannot find a custom key store with the specified
345
- * key store name or ID.</p>
346
- */
174
+
347
175
  export interface CustomKeyStoreNotFoundException extends __SmithyException, $MetadataBearer {
348
176
  name: "CustomKeyStoreNotFoundException";
349
177
  $fault: "client";
350
178
  message?: string;
351
179
  }
352
180
  export declare namespace CustomKeyStoreNotFoundException {
353
- /**
354
- * @internal
355
- */
181
+
356
182
  const filterSensitiveLog: (obj: CustomKeyStoreNotFoundException) => any;
357
183
  }
358
184
  export declare enum ConnectionErrorCodeType {
@@ -374,199 +200,90 @@ export declare enum ConnectionStateType {
374
200
  FAILED = "FAILED"
375
201
  }
376
202
  export interface CreateAliasRequest {
377
- /**
378
- * <p>Specifies the alias name. This value must begin with <code>alias/</code> followed by a
379
- * name, such as <code>alias/ExampleAlias</code>. </p>
380
- * <p>The <code>AliasName</code> value must be string of 1-256 characters. It can contain only
381
- * alphanumeric characters, forward slashes (/), underscores (_), and dashes (-). The alias name
382
- * cannot begin with <code>alias/aws/</code>. The <code>alias/aws/</code> prefix is reserved for
383
- * <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk">Amazon Web Services managed
384
- * keys</a>.</p>
385
- */
203
+
386
204
  AliasName: string | undefined;
387
- /**
388
- * <p>Associates the alias with the specified <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk">customer managed key</a>. The KMS key must
389
- * be in the same Amazon Web Services Region. </p>
390
- * <p>A valid key ID is required. If you supply a null or empty string value, this operation
391
- * returns an error.</p>
392
- * <p>For help finding the key ID and ARN, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/viewing-keys.html#find-cmk-id-arn">Finding the Key ID and
393
- * ARN</a> in the <i>
394
- * <i>Key Management Service Developer Guide</i>
395
- * </i>.</p>
396
- * <p>Specify the key ID or key ARN of the KMS key.</p>
397
- * <p>For example:</p>
398
- * <ul>
399
- * <li>
400
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
401
- * </p>
402
- * </li>
403
- * <li>
404
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
405
- * </p>
406
- * </li>
407
- * </ul>
408
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
409
- */
205
+
410
206
  TargetKeyId: string | undefined;
411
207
  }
412
208
  export declare namespace CreateAliasRequest {
413
- /**
414
- * @internal
415
- */
209
+
416
210
  const filterSensitiveLog: (obj: CreateAliasRequest) => any;
417
211
  }
418
- /**
419
- * <p>The request was rejected because the specified alias name is not valid.</p>
420
- */
212
+
421
213
  export interface InvalidAliasNameException extends __SmithyException, $MetadataBearer {
422
214
  name: "InvalidAliasNameException";
423
215
  $fault: "client";
424
216
  message?: string;
425
217
  }
426
218
  export declare namespace InvalidAliasNameException {
427
- /**
428
- * @internal
429
- */
219
+
430
220
  const filterSensitiveLog: (obj: InvalidAliasNameException) => any;
431
221
  }
432
- /**
433
- * <p>The request was rejected because a quota was exceeded. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/limits.html">Quotas</a> in the
434
- * <i>Key Management Service Developer Guide</i>.</p>
435
- */
222
+
436
223
  export interface LimitExceededException extends __SmithyException, $MetadataBearer {
437
224
  name: "LimitExceededException";
438
225
  $fault: "client";
439
226
  message?: string;
440
227
  }
441
228
  export declare namespace LimitExceededException {
442
- /**
443
- * @internal
444
- */
229
+
445
230
  const filterSensitiveLog: (obj: LimitExceededException) => any;
446
231
  }
447
232
  export interface CreateCustomKeyStoreRequest {
448
- /**
449
- * <p>Specifies a friendly name for the custom key store. The name must be unique in your
450
- * Amazon Web Services account.</p>
451
- */
233
+
452
234
  CustomKeyStoreName: string | undefined;
453
- /**
454
- * <p>Identifies the CloudHSM cluster for the custom key store. Enter the cluster ID of any active
455
- * CloudHSM cluster that is not already associated with a custom key store. To find the cluster ID,
456
- * use the <a href="https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html">DescribeClusters</a> operation.</p>
457
- */
235
+
458
236
  CloudHsmClusterId: string | undefined;
459
- /**
460
- * <p>Enter the content of the trust anchor certificate for the cluster. This is the content of
461
- * the <code>customerCA.crt</code> file that you created when you <a href="https://docs.aws.amazon.com/cloudhsm/latest/userguide/initialize-cluster.html">initialized the cluster</a>.</p>
462
- */
237
+
463
238
  TrustAnchorCertificate: string | undefined;
464
- /**
465
- * <p>Enter the password of the <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-store-concepts.html#concept-kmsuser">
466
- * <code>kmsuser</code> crypto user
467
- * (CU) account</a> in the specified CloudHSM cluster. KMS logs into the cluster as this
468
- * user to manage key material on your behalf.</p>
469
- * <p>The password must be a string of 7 to 32 characters. Its value is case sensitive.</p>
470
- * <p>This parameter tells KMS the <code>kmsuser</code> account password; it does not change
471
- * the password in the CloudHSM cluster.</p>
472
- */
239
+
473
240
  KeyStorePassword: string | undefined;
474
241
  }
475
242
  export declare namespace CreateCustomKeyStoreRequest {
476
- /**
477
- * @internal
478
- */
243
+
479
244
  const filterSensitiveLog: (obj: CreateCustomKeyStoreRequest) => any;
480
245
  }
481
246
  export interface CreateCustomKeyStoreResponse {
482
- /**
483
- * <p>A unique identifier for the new custom key store.</p>
484
- */
247
+
485
248
  CustomKeyStoreId?: string;
486
249
  }
487
250
  export declare namespace CreateCustomKeyStoreResponse {
488
- /**
489
- * @internal
490
- */
251
+
491
252
  const filterSensitiveLog: (obj: CreateCustomKeyStoreResponse) => any;
492
253
  }
493
- /**
494
- * <p>The request was rejected because the specified custom key store name is already assigned
495
- * to another custom key store in the account. Try again with a custom key store name that is
496
- * unique in the account.</p>
497
- */
254
+
498
255
  export interface CustomKeyStoreNameInUseException extends __SmithyException, $MetadataBearer {
499
256
  name: "CustomKeyStoreNameInUseException";
500
257
  $fault: "client";
501
258
  message?: string;
502
259
  }
503
260
  export declare namespace CustomKeyStoreNameInUseException {
504
- /**
505
- * @internal
506
- */
261
+
507
262
  const filterSensitiveLog: (obj: CustomKeyStoreNameInUseException) => any;
508
263
  }
509
- /**
510
- * <p>The request was rejected because the trust anchor certificate in the request is not the
511
- * trust anchor certificate for the specified CloudHSM cluster.</p>
512
- * <p>When you <a href="https://docs.aws.amazon.com/cloudhsm/latest/userguide/initialize-cluster.html#sign-csr">initialize the cluster</a>, you create the trust anchor certificate and save it in the
513
- * <code>customerCA.crt</code> file.</p>
514
- */
264
+
515
265
  export interface IncorrectTrustAnchorException extends __SmithyException, $MetadataBearer {
516
266
  name: "IncorrectTrustAnchorException";
517
267
  $fault: "client";
518
268
  message?: string;
519
269
  }
520
270
  export declare namespace IncorrectTrustAnchorException {
521
- /**
522
- * @internal
523
- */
271
+
524
272
  const filterSensitiveLog: (obj: IncorrectTrustAnchorException) => any;
525
273
  }
526
- /**
527
- * <p>Use this structure to allow <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations">cryptographic operations</a> in the grant only when the operation request
528
- * includes the specified <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context">encryption context</a>. </p>
529
- * <p>KMS applies the grant constraints only to cryptographic operations that support an
530
- * encryption context, that is, all cryptographic operations with a <a href="https://docs.aws.amazon.com/kms/latest/developerguide/symm-asymm-concepts.html#symmetric-cmks">symmetric KMS key</a>. Grant
531
- * constraints are not applied to operations that do not support an encryption context, such as
532
- * cryptographic operations with asymmetric KMS keys and management operations, such as <a>DescribeKey</a> or <a>RetireGrant</a>.</p>
533
- * <important>
534
- * <p>In a cryptographic operation, the encryption context in the decryption operation must be
535
- * an exact, case-sensitive match for the keys and values in the encryption context of the
536
- * encryption operation. Only the order of the pairs can vary.</p>
537
- * <p>However, in a grant constraint, the key in each key-value pair is not case sensitive,
538
- * but the value is case sensitive.</p>
539
- * <p>To avoid confusion, do not use multiple encryption context pairs that differ only by
540
- * case. To require a fully case-sensitive encryption context, use the
541
- * <code>kms:EncryptionContext:</code> and <code>kms:EncryptionContextKeys</code> conditions
542
- * in an IAM or key policy. For details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/policy-conditions.html#conditions-kms-encryption-context">kms:EncryptionContext:</a> in the <i>
543
- * <i>Key Management Service Developer Guide</i>
544
- * </i>.</p>
545
- * </important>
546
- */
274
+
547
275
  export interface GrantConstraints {
548
- /**
549
- * <p>A list of key-value pairs that must be included in the encryption context of the
550
- * <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations">cryptographic operation</a> request. The grant allows the cryptographic operation only when the encryption
551
- * context in the request includes the key-value pairs specified in this constraint, although it
552
- * can include additional key-value pairs.</p>
553
- */
276
+
554
277
  EncryptionContextSubset?: {
555
278
  [key: string]: string;
556
279
  };
557
- /**
558
- * <p>A list of key-value pairs that must match the encryption context in the <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations">cryptographic operation</a>
559
- * request. The grant allows the operation only when the encryption context in the request is the
560
- * same as the encryption context specified in this constraint.</p>
561
- */
280
+
562
281
  EncryptionContextEquals?: {
563
282
  [key: string]: string;
564
283
  };
565
284
  }
566
285
  export declare namespace GrantConstraints {
567
- /**
568
- * @internal
569
- */
286
+
570
287
  const filterSensitiveLog: (obj: GrantConstraints) => any;
571
288
  }
572
289
  export declare enum GrantOperation {
@@ -586,150 +303,53 @@ export declare enum GrantOperation {
586
303
  Verify = "Verify"
587
304
  }
588
305
  export interface CreateGrantRequest {
589
- /**
590
- * <p>Identifies the KMS key for the grant. The grant gives principals permission to use this
591
- * KMS key.</p>
592
- * <p>Specify the key ID or key ARN of the KMS key. To specify a KMS key in a
593
- * different Amazon Web Services account, you must use the key ARN.</p>
594
- * <p>For example:</p>
595
- * <ul>
596
- * <li>
597
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
598
- * </p>
599
- * </li>
600
- * <li>
601
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
602
- * </p>
603
- * </li>
604
- * </ul>
605
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
606
- */
306
+
607
307
  KeyId: string | undefined;
608
- /**
609
- * <p>The identity that gets the permissions specified in the grant.</p>
610
- * <p>To specify the principal, use the <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Name (ARN)</a> of an
611
- * Amazon Web Services principal. Valid Amazon Web Services principals include Amazon Web Services accounts (root), IAM users, IAM roles,
612
- * federated users, and assumed role users. For examples of the ARN syntax to use for specifying
613
- * a principal, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-iam">Amazon Web Services Identity and Access
614
- * Management (IAM)</a> in the Example ARNs section of the <i>Amazon Web Services General
615
- * Reference</i>.</p>
616
- */
308
+
617
309
  GranteePrincipal: string | undefined;
618
- /**
619
- * <p>The principal that has permission to use the <a>RetireGrant</a> operation to
620
- * retire the grant. </p>
621
- * <p>To specify the principal, use the <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Name (ARN)</a> of an
622
- * Amazon Web Services principal. Valid Amazon Web Services principals include Amazon Web Services accounts (root), IAM users, federated
623
- * users, and assumed role users. For examples of the ARN syntax to use for specifying a
624
- * principal, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-iam">Amazon Web Services Identity and Access
625
- * Management (IAM)</a> in the Example ARNs section of the <i>Amazon Web Services General
626
- * Reference</i>.</p>
627
- * <p>The grant determines the retiring principal. Other principals might have permission to
628
- * retire the grant or revoke the grant. For details, see <a>RevokeGrant</a> and
629
- * <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grant-manage.html#grant-delete">Retiring and
630
- * revoking grants</a> in the <i>Key Management Service Developer Guide</i>. </p>
631
- */
310
+
632
311
  RetiringPrincipal?: string;
633
- /**
634
- * <p>A list of operations that the grant permits. </p>
635
- * <p>The operation must be supported on the KMS key. For example, you cannot create a grant for
636
- * a symmetric KMS key that allows the <a>Sign</a> operation, or a grant for an
637
- * asymmetric KMS key that allows the <a>GenerateDataKey</a> operation. If you try,
638
- * KMS returns a <code>ValidationError</code> exception. For details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#terms-grant-operations">Grant
639
- * operations</a> in the <i>Key Management Service Developer Guide</i>.</p>
640
- */
312
+
641
313
  Operations: (GrantOperation | string)[] | undefined;
642
- /**
643
- * <p>Specifies a grant constraint. </p>
644
- * <p>KMS supports the <code>EncryptionContextEquals</code> and
645
- * <code>EncryptionContextSubset</code> grant constraints. Each constraint value can include up
646
- * to 8 encryption context pairs. The encryption context value in each constraint cannot exceed
647
- * 384 characters.</p>
648
- * <p>These grant constraints allow the permissions in the grant only when the encryption
649
- * context in the request matches (<code>EncryptionContextEquals</code>) or includes
650
- * (<code>EncryptionContextSubset</code>) the encryption context specified in this structure.
651
- * For information about grant constraints, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/create-grant-overview.html#grant-constraints">Using grant
652
- * constraints</a> in the <i>Key Management Service Developer Guide</i>. For more information about encryption context,
653
- * see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context">Encryption
654
- * Context</a> in the <i>
655
- * <i>Key Management Service Developer Guide</i>
656
- * </i>. </p>
657
- * <p>The encryption context grant constraints are supported only on operations that include an
658
- * encryption context. You cannot use an encryption context grant constraint for cryptographic
659
- * operations with asymmetric KMS keys or for management operations, such as <a>DescribeKey</a> or <a>RetireGrant</a>.</p>
660
- */
314
+
661
315
  Constraints?: GrantConstraints;
662
- /**
663
- * <p>A list of grant tokens. </p>
664
- * <p>Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved <i>eventual consistency</i>. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#grant_token">Grant token</a> and <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grant-manage.html#using-grant-token">Using a grant token</a> in the
665
- * <i>Key Management Service Developer Guide</i>.</p>
666
- */
316
+
667
317
  GrantTokens?: string[];
668
- /**
669
- * <p>A friendly name for the grant. Use this value to prevent the unintended creation of
670
- * duplicate grants when retrying this request.</p>
671
- * <p>When this value is absent, all <code>CreateGrant</code> requests result in a new grant
672
- * with a unique <code>GrantId</code> even if all the supplied parameters are identical. This can
673
- * result in unintended duplicates when you retry the <code>CreateGrant</code> request.</p>
674
- * <p>When this value is present, you can retry a <code>CreateGrant</code> request with
675
- * identical parameters; if the grant already exists, the original <code>GrantId</code> is
676
- * returned without creating a new grant. Note that the returned grant token is unique with every
677
- * <code>CreateGrant</code> request, even when a duplicate <code>GrantId</code> is returned.
678
- * All grant tokens for the same grant ID can be used interchangeably.</p>
679
- */
318
+
680
319
  Name?: string;
681
320
  }
682
321
  export declare namespace CreateGrantRequest {
683
- /**
684
- * @internal
685
- */
322
+
686
323
  const filterSensitiveLog: (obj: CreateGrantRequest) => any;
687
324
  }
688
325
  export interface CreateGrantResponse {
689
- /**
690
- * <p>The grant token.</p>
691
- * <p>Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved <i>eventual consistency</i>. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#grant_token">Grant token</a> and <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grant-manage.html#using-grant-token">Using a grant token</a> in the
692
- * <i>Key Management Service Developer Guide</i>.</p>
693
- */
326
+
694
327
  GrantToken?: string;
695
- /**
696
- * <p>The unique identifier for the grant.</p>
697
- * <p>You can use the <code>GrantId</code> in a <a>ListGrants</a>, <a>RetireGrant</a>, or <a>RevokeGrant</a> operation.</p>
698
- */
328
+
699
329
  GrantId?: string;
700
330
  }
701
331
  export declare namespace CreateGrantResponse {
702
- /**
703
- * @internal
704
- */
332
+
705
333
  const filterSensitiveLog: (obj: CreateGrantResponse) => any;
706
334
  }
707
- /**
708
- * <p>The request was rejected because the specified KMS key is not enabled.</p>
709
- */
335
+
710
336
  export interface DisabledException extends __SmithyException, $MetadataBearer {
711
337
  name: "DisabledException";
712
338
  $fault: "client";
713
339
  message?: string;
714
340
  }
715
341
  export declare namespace DisabledException {
716
- /**
717
- * @internal
718
- */
342
+
719
343
  const filterSensitiveLog: (obj: DisabledException) => any;
720
344
  }
721
- /**
722
- * <p>The request was rejected because the specified grant token is not valid.</p>
723
- */
345
+
724
346
  export interface InvalidGrantTokenException extends __SmithyException, $MetadataBearer {
725
347
  name: "InvalidGrantTokenException";
726
348
  $fault: "client";
727
349
  message?: string;
728
350
  }
729
351
  export declare namespace InvalidGrantTokenException {
730
- /**
731
- * @internal
732
- */
352
+
733
353
  const filterSensitiveLog: (obj: InvalidGrantTokenException) => any;
734
354
  }
735
355
  export declare enum CustomerMasterKeySpec {
@@ -761,262 +381,41 @@ export declare enum OriginType {
761
381
  AWS_KMS = "AWS_KMS",
762
382
  EXTERNAL = "EXTERNAL"
763
383
  }
764
- /**
765
- * <p>A key-value pair. A tag consists of a tag key and a tag value. Tag keys and tag values are
766
- * both required, but tag values can be empty (null) strings.</p>
767
- * <p>For information about the rules that apply to tag keys and tag values, see <a href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/allocation-tag-restrictions.html">User-Defined Tag Restrictions</a> in the <i>Amazon Web Services Billing and Cost Management
768
- * User Guide</i>.</p>
769
- */
384
+
770
385
  export interface Tag {
771
- /**
772
- * <p>The key of the tag.</p>
773
- */
386
+
774
387
  TagKey: string | undefined;
775
- /**
776
- * <p>The value of the tag.</p>
777
- */
388
+
778
389
  TagValue: string | undefined;
779
390
  }
780
391
  export declare namespace Tag {
781
- /**
782
- * @internal
783
- */
392
+
784
393
  const filterSensitiveLog: (obj: Tag) => any;
785
394
  }
786
395
  export interface CreateKeyRequest {
787
- /**
788
- * <p>The key policy to attach to the KMS key.</p>
789
- * <p>If you provide a key policy, it must meet the following criteria:</p>
790
- * <ul>
791
- * <li>
792
- * <p>If you don't set <code>BypassPolicyLockoutSafetyCheck</code> to true, the key policy
793
- * must allow the principal that is making the <code>CreateKey</code> request to make a
794
- * subsequent <a>PutKeyPolicy</a> request on the KMS key. This reduces the risk
795
- * that the KMS key becomes unmanageable. For more information, refer to the scenario in the
796
- * <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-root-enable-iam">Default Key Policy</a> section of the <i>
797
- * <i>Key Management Service Developer Guide</i>
798
- * </i>.</p>
799
- * </li>
800
- * <li>
801
- * <p>Each statement in the key policy must contain one or more principals. The principals
802
- * in the key policy must exist and be visible to KMS. When you create a new Amazon Web Services
803
- * principal (for example, an IAM user or role), you might need to enforce a delay before
804
- * including the new principal in a key policy because the new principal might not be
805
- * immediately visible to KMS. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_general.html#troubleshoot_general_eventual-consistency">Changes that I make are not always immediately visible</a> in the <i>Amazon Web Services
806
- * Identity and Access Management User Guide</i>.</p>
807
- * </li>
808
- * </ul>
809
- * <p>If you do not provide a key policy, KMS attaches a default key policy to the KMS key.
810
- * For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default">Default Key Policy</a> in the
811
- * <i>Key Management Service Developer Guide</i>. </p>
812
- * <p>The key policy size quota is 32 kilobytes (32768 bytes).</p>
813
- * <p>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>
814
- * <i>Identity and Access Management User Guide</i>
815
- * </i>.</p>
816
- */
396
+
817
397
  Policy?: string;
818
- /**
819
- * <p>A description of the KMS key.</p>
820
- * <p>Use a description that helps you decide whether the KMS key is appropriate for a task. The
821
- * default value is an empty string (no description).</p>
822
- * <p>To set or change the description after the key is created, use <a>UpdateKeyDescription</a>.</p>
823
- */
398
+
824
399
  Description?: string;
825
- /**
826
- * <p>Determines the <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations">cryptographic operations</a> for which you can use the KMS key. The default value is
827
- * <code>ENCRYPT_DECRYPT</code>. This parameter is required only for asymmetric KMS keys. You
828
- * can't change the <code>KeyUsage</code> value after the KMS key is created.</p>
829
- * <p>Select only one valid value.</p>
830
- * <ul>
831
- * <li>
832
- * <p>For symmetric KMS keys, omit the parameter or specify
833
- * <code>ENCRYPT_DECRYPT</code>.</p>
834
- * </li>
835
- * <li>
836
- * <p>For asymmetric KMS keys with RSA key material, specify <code>ENCRYPT_DECRYPT</code> or
837
- * <code>SIGN_VERIFY</code>.</p>
838
- * </li>
839
- * <li>
840
- * <p>For asymmetric KMS keys with ECC key material, specify
841
- * <code>SIGN_VERIFY</code>.</p>
842
- * </li>
843
- * </ul>
844
- */
400
+
845
401
  KeyUsage?: KeyUsageType | string;
846
- /**
847
- * @deprecated
848
- *
849
- * <p>Instead, use the <code>KeySpec</code> parameter.</p>
850
- * <p>The <code>KeySpec</code> and <code>CustomerMasterKeySpec</code> parameters work the same
851
- * way. Only the names differ. We recommend that you use <code>KeySpec</code> parameter in your
852
- * code. However, to avoid breaking changes, KMS will support both parameters.</p>
853
- */
402
+
854
403
  CustomerMasterKeySpec?: CustomerMasterKeySpec | string;
855
- /**
856
- * <p>Specifies the type of KMS key to create. The default value,
857
- * <code>SYMMETRIC_DEFAULT</code>, creates a KMS key with a 256-bit symmetric key for encryption
858
- * and decryption. For help choosing a key spec for your KMS key, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/symm-asymm-choose.html">How to Choose Your KMS key
859
- * Configuration</a> in the <i>
860
- * <i>Key Management Service Developer Guide</i>
861
- * </i>.</p>
862
- * <p>The <code>KeySpec</code> determines whether the KMS key contains a symmetric key or an
863
- * asymmetric key pair. It also determines the encryption algorithms or signing algorithms that
864
- * the KMS key supports. You can't change the <code>KeySpec</code> after the KMS key is created.
865
- * To further restrict the algorithms that can be used with the KMS key, use a condition key in
866
- * its key policy or IAM policy. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/policy-conditions.html#conditions-kms-encryption-algorithm">kms:EncryptionAlgorithm</a> or <a href="https://docs.aws.amazon.com/kms/latest/developerguide/policy-conditions.html#conditions-kms-signing-algorithm">kms:Signing Algorithm</a> in the <i>
867
- * <i>Key Management Service Developer Guide</i>
868
- * </i>.</p>
869
- * <important>
870
- * <p>
871
- * <a href="http://aws.amazon.com/kms/features/#AWS_Service_Integration">Amazon Web Services services that
872
- * are integrated with KMS</a> use symmetric KMS keys to protect your data. These
873
- * services do not support asymmetric KMS keys. For help determining whether a KMS key is
874
- * symmetric or asymmetric, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/find-symm-asymm.html">Identifying Symmetric and Asymmetric
875
- * KMS keys</a> in the <i>Key Management Service Developer Guide</i>.</p>
876
- * </important>
877
- * <p>KMS supports the following key specs for KMS keys:</p>
878
- * <ul>
879
- * <li>
880
- * <p>Symmetric key (default)</p>
881
- * <ul>
882
- * <li>
883
- * <p>
884
- * <code>SYMMETRIC_DEFAULT</code> (AES-256-GCM)</p>
885
- * </li>
886
- * </ul>
887
- * </li>
888
- * <li>
889
- * <p>Asymmetric RSA key pairs</p>
890
- * <ul>
891
- * <li>
892
- * <p>
893
- * <code>RSA_2048</code>
894
- * </p>
895
- * </li>
896
- * <li>
897
- * <p>
898
- * <code>RSA_3072</code>
899
- * </p>
900
- * </li>
901
- * <li>
902
- * <p>
903
- * <code>RSA_4096</code>
904
- * </p>
905
- * </li>
906
- * </ul>
907
- * </li>
908
- * <li>
909
- * <p>Asymmetric NIST-recommended elliptic curve key pairs</p>
910
- * <ul>
911
- * <li>
912
- * <p>
913
- * <code>ECC_NIST_P256</code> (secp256r1)</p>
914
- * </li>
915
- * <li>
916
- * <p>
917
- * <code>ECC_NIST_P384</code> (secp384r1)</p>
918
- * </li>
919
- * <li>
920
- * <p>
921
- * <code>ECC_NIST_P521</code> (secp521r1)</p>
922
- * </li>
923
- * </ul>
924
- * </li>
925
- * <li>
926
- * <p>Other asymmetric elliptic curve key pairs</p>
927
- * <ul>
928
- * <li>
929
- * <p>
930
- * <code>ECC_SECG_P256K1</code> (secp256k1), commonly used for
931
- * cryptocurrencies.</p>
932
- * </li>
933
- * </ul>
934
- * </li>
935
- * </ul>
936
- */
404
+
937
405
  KeySpec?: KeySpec | string;
938
- /**
939
- * <p>The source of the key material for the KMS key. You cannot change the origin after you
940
- * create the KMS key. The default is <code>AWS_KMS</code>, which means that KMS creates the
941
- * key material.</p>
942
- * <p>To create a KMS key with no key material (for imported key material), set the value to
943
- * <code>EXTERNAL</code>. For more information about importing key material into KMS, see
944
- * <a href="https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html">Importing Key
945
- * Material</a> in the <i>Key Management Service Developer Guide</i>. This value is valid only for symmetric KMS
946
- * keys.</p>
947
- * <p>To create a KMS key in an KMS <a href="https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html">custom key store</a> and create its key material in the
948
- * associated CloudHSM cluster, set this value to <code>AWS_CLOUDHSM</code>. You must also use the
949
- * <code>CustomKeyStoreId</code> parameter to identify the custom key store. This value is
950
- * valid only for symmetric KMS keys.</p>
951
- */
406
+
952
407
  Origin?: OriginType | string;
953
- /**
954
- * <p>Creates the KMS key in the specified <a href="https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html">custom key store</a> and the key material in its
955
- * associated CloudHSM cluster. To create a KMS key in a custom key store, you must also specify the
956
- * <code>Origin</code> parameter with a value of <code>AWS_CLOUDHSM</code>. The CloudHSM cluster
957
- * that is associated with the custom key store must have at least two active HSMs, each in a
958
- * different Availability Zone in the Region.</p>
959
- * <p>This parameter is valid only for symmetric KMS keys and regional KMS keys. You cannot
960
- * create an asymmetric KMS key or a multi-Region key in a custom key store.</p>
961
- * <p>To find the ID of a custom key store, use the <a>DescribeCustomKeyStores</a> operation.</p>
962
- * <p>The response includes the custom key store ID and the ID of the CloudHSM cluster.</p>
963
- * <p>This operation is part of the <a href="https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html">Custom Key Store feature</a> feature in KMS, which
964
- * combines the convenience and extensive integration of KMS with the isolation and control of a
965
- * single-tenant key store.</p>
966
- */
408
+
967
409
  CustomKeyStoreId?: string;
968
- /**
969
- * <p>A flag to indicate whether to bypass the key policy lockout safety check.</p>
970
- * <important>
971
- * <p>Setting this value to true increases the risk that the KMS key becomes unmanageable. Do
972
- * not set this value to true indiscriminately.</p>
973
- * <p>For more information, refer to the scenario in the <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-root-enable-iam">Default Key Policy</a> section in the <i>
974
- * <i>Key Management Service Developer Guide</i>
975
- * </i>.</p>
976
- * </important>
977
- * <p>Use this parameter only when you include a policy in the request and you intend to prevent
978
- * the principal that is making the request from making a subsequent <a>PutKeyPolicy</a> request on the KMS key.</p>
979
- * <p>The default value is false.</p>
980
- */
410
+
981
411
  BypassPolicyLockoutSafetyCheck?: boolean;
982
- /**
983
- * <p>Assigns one or more tags to the KMS key. Use this parameter to tag the KMS key when it is
984
- * created. To tag an existing KMS key, use the <a>TagResource</a> operation.</p>
985
- * <note>
986
- * <p>Tagging or untagging a KMS key can allow or deny permission to the KMS key. For details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/abac.html">Using ABAC in KMS</a> in the <i>Key Management Service Developer Guide</i>.</p>
987
- * </note>
988
- * <p>To use this parameter, you must have <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:TagResource</a> permission in an IAM policy.</p>
989
- * <p>Each tag consists of a tag key and a tag value. Both the tag key and the tag value are
990
- * required, but the tag value can be an empty (null) string. You cannot have more than one tag
991
- * on a KMS key with the same tag key. If you specify an existing tag key with a different tag
992
- * value, KMS replaces the current tag value with the specified one.</p>
993
- * <p>When you add tags to an Amazon Web Services resource, Amazon Web Services generates a cost allocation
994
- * report with usage and costs aggregated by tags. Tags can also be used to control access to a KMS key. For details,
995
- * see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/tagging-keys.html">Tagging Keys</a>.</p>
996
- */
412
+
997
413
  Tags?: Tag[];
998
- /**
999
- * <p>Creates a multi-Region primary key that you can replicate into other Amazon Web Services Regions. You
1000
- * cannot change this value after you create the KMS key. </p>
1001
- * <p>For a multi-Region key, set this parameter to <code>True</code>. For a single-Region KMS
1002
- * key, omit this parameter or set it to <code>False</code>. The default value is
1003
- * <code>False</code>.</p>
1004
- * <p>This operation supports <i>multi-Region keys</i>, an KMS feature that lets you create multiple
1005
- * interoperable KMS keys in different Amazon Web Services Regions. Because these KMS keys have the same key ID, key
1006
- * material, and other metadata, you can use them interchangeably to encrypt data in one Amazon Web Services Region and decrypt
1007
- * 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>
1008
- * <p>This value creates a <i>primary key</i>, not a replica. To create a
1009
- * <i>replica key</i>, use the <a>ReplicateKey</a> operation. </p>
1010
- * <p>You can create a symmetric or asymmetric multi-Region key, and you can create a
1011
- * multi-Region key with imported key material. However, you cannot create a multi-Region key in
1012
- * a custom key store.</p>
1013
- */
414
+
1014
415
  MultiRegion?: boolean;
1015
416
  }
1016
417
  export declare namespace CreateKeyRequest {
1017
- /**
1018
- * @internal
1019
- */
418
+
1020
419
  const filterSensitiveLog: (obj: CreateKeyRequest) => any;
1021
420
  }
1022
421
  export declare enum EncryptionAlgorithmSpec {
@@ -1046,52 +445,28 @@ export declare enum MultiRegionKeyType {
1046
445
  PRIMARY = "PRIMARY",
1047
446
  REPLICA = "REPLICA"
1048
447
  }
1049
- /**
1050
- * <p>Describes the primary or replica key in a multi-Region key.</p>
1051
- */
448
+
1052
449
  export interface MultiRegionKey {
1053
- /**
1054
- * <p>Displays the key ARN of a primary or replica key of a multi-Region key.</p>
1055
- */
450
+
1056
451
  Arn?: string;
1057
- /**
1058
- * <p>Displays the Amazon Web Services Region of a primary or replica key in a multi-Region key.</p>
1059
- */
452
+
1060
453
  Region?: string;
1061
454
  }
1062
455
  export declare namespace MultiRegionKey {
1063
- /**
1064
- * @internal
1065
- */
456
+
1066
457
  const filterSensitiveLog: (obj: MultiRegionKey) => any;
1067
458
  }
1068
- /**
1069
- * <p>Describes the configuration of this multi-Region key. This field appears only when the KMS
1070
- * key is a primary or replica of a multi-Region key.</p>
1071
- * <p>For more information about any listed KMS key, use the <a>DescribeKey</a>
1072
- * operation.</p>
1073
- */
459
+
1074
460
  export interface MultiRegionConfiguration {
1075
- /**
1076
- * <p>Indicates whether the KMS key is a <code>PRIMARY</code> or <code>REPLICA</code>
1077
- * key.</p>
1078
- */
461
+
1079
462
  MultiRegionKeyType?: MultiRegionKeyType | string;
1080
- /**
1081
- * <p>Displays the key ARN and Region of the primary key. This field includes the current KMS
1082
- * key if it is the primary key.</p>
1083
- */
463
+
1084
464
  PrimaryKey?: MultiRegionKey;
1085
- /**
1086
- * <p>displays the key ARNs and Regions of all replica keys. This field includes the current KMS
1087
- * key if it is a replica key.</p>
1088
- */
465
+
1089
466
  ReplicaKeys?: MultiRegionKey[];
1090
467
  }
1091
468
  export declare namespace MultiRegionConfiguration {
1092
- /**
1093
- * @internal
1094
- */
469
+
1095
470
  const filterSensitiveLog: (obj: MultiRegionConfiguration) => any;
1096
471
  }
1097
472
  export declare enum SigningAlgorithmSpec {
@@ -1105,366 +480,124 @@ export declare enum SigningAlgorithmSpec {
1105
480
  RSASSA_PSS_SHA_384 = "RSASSA_PSS_SHA_384",
1106
481
  RSASSA_PSS_SHA_512 = "RSASSA_PSS_SHA_512"
1107
482
  }
1108
- /**
1109
- * <p>Contains metadata about a KMS key.</p>
1110
- * <p>This data type is used as a response element for the <a>CreateKey</a> and <a>DescribeKey</a> operations.</p>
1111
- */
483
+
1112
484
  export interface KeyMetadata {
1113
- /**
1114
- * <p>The twelve-digit account ID of the Amazon Web Services account that owns the KMS key.</p>
1115
- */
485
+
1116
486
  AWSAccountId?: string;
1117
- /**
1118
- * <p>The globally unique identifier for the KMS key.</p>
1119
- */
487
+
1120
488
  KeyId: string | undefined;
1121
- /**
1122
- * <p>The Amazon Resource Name (ARN) of the KMS key. For examples, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-kms">Key Management Service (KMS)</a> in the Example ARNs section of the <i>Amazon Web Services General
1123
- * Reference</i>.</p>
1124
- */
489
+
1125
490
  Arn?: string;
1126
- /**
1127
- * <p>The date and time when the KMS key was created.</p>
1128
- */
491
+
1129
492
  CreationDate?: Date;
1130
- /**
1131
- * <p>Specifies whether the KMS key is enabled. When <code>KeyState</code> is
1132
- * <code>Enabled</code> this value is true, otherwise it is false.</p>
1133
- */
493
+
1134
494
  Enabled?: boolean;
1135
- /**
1136
- * <p>The description of the KMS key.</p>
1137
- */
495
+
1138
496
  Description?: string;
1139
- /**
1140
- * <p>The <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations">cryptographic operations</a> for which you can use the KMS key.</p>
1141
- */
497
+
1142
498
  KeyUsage?: KeyUsageType | string;
1143
- /**
1144
- * <p>The current status of the KMS key.</p>
1145
- * <p>For more information about how key state affects the use of a KMS key, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html">Key state: Effect on your KMS
1146
- * key</a> in the <i>Key Management Service Developer Guide</i>.</p>
1147
- */
499
+
1148
500
  KeyState?: KeyState | string;
1149
- /**
1150
- * <p>The date and time after which KMS deletes this KMS key. This value is present only when
1151
- * the KMS key is scheduled for deletion, that is, when its <code>KeyState</code> is
1152
- * <code>PendingDeletion</code>.</p>
1153
- * <p>When the primary key in a multi-Region key is scheduled for deletion but still has replica
1154
- * keys, its key state is <code>PendingReplicaDeletion</code> and the length of its waiting
1155
- * period is displayed in the <code>PendingDeletionWindowInDays</code> field.</p>
1156
- */
501
+
1157
502
  DeletionDate?: Date;
1158
- /**
1159
- * <p>The time at which the imported key material expires. When the key material expires, KMS
1160
- * deletes the key material and the KMS key becomes unusable. This value is present only for KMS
1161
- * keys whose <code>Origin</code> is <code>EXTERNAL</code> and whose <code>ExpirationModel</code>
1162
- * is <code>KEY_MATERIAL_EXPIRES</code>, otherwise this value is omitted.</p>
1163
- */
503
+
1164
504
  ValidTo?: Date;
1165
- /**
1166
- * <p>The source of the key material for the KMS key. When this value is <code>AWS_KMS</code>,
1167
- * KMS created the key material. When this value is <code>EXTERNAL</code>, the key material was
1168
- * imported or the KMS key doesn't have any key material. When this value is
1169
- * <code>AWS_CLOUDHSM</code>, the key material was created in the CloudHSM cluster associated with
1170
- * a custom key store.</p>
1171
- */
505
+
1172
506
  Origin?: OriginType | string;
1173
- /**
1174
- * <p>A unique identifier for the <a href="https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html">custom key store</a> that contains the KMS key. This value is
1175
- * present only when the KMS key is created in a custom key store.</p>
1176
- */
507
+
1177
508
  CustomKeyStoreId?: string;
1178
- /**
1179
- * <p>The cluster ID of the CloudHSM cluster that contains the key material for the KMS key. When
1180
- * you create a KMS key in a <a href="https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html">custom key store</a>, KMS creates the key material for the KMS key in
1181
- * the associated CloudHSM cluster. This value is present only when the KMS key is created in a
1182
- * custom key store.</p>
1183
- */
509
+
1184
510
  CloudHsmClusterId?: string;
1185
- /**
1186
- * <p>Specifies whether the KMS key's key material expires. This value is present only when
1187
- * <code>Origin</code> is <code>EXTERNAL</code>, otherwise this value is omitted.</p>
1188
- */
511
+
1189
512
  ExpirationModel?: ExpirationModelType | string;
1190
- /**
1191
- * <p>The manager of the KMS key. KMS keys in your Amazon Web Services account are either customer managed or
1192
- * Amazon Web Services managed. For more information about the difference, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#kms_keys">KMS keys</a> in the <i>Key Management Service Developer Guide</i>.</p>
1193
- */
513
+
1194
514
  KeyManager?: KeyManagerType | string;
1195
- /**
1196
- * @deprecated
1197
- *
1198
- * <p>Instead, use the <code>KeySpec</code> field.</p>
1199
- * <p>The <code>KeySpec</code> and <code>CustomerMasterKeySpec</code> fields have the same
1200
- * value. We recommend that you use the <code>KeySpec</code> field in your code. However, to
1201
- * avoid breaking changes, KMS will support both fields.</p>
1202
- */
515
+
1203
516
  CustomerMasterKeySpec?: CustomerMasterKeySpec | string;
1204
- /**
1205
- * <p>Describes the type of key material in the KMS key.</p>
1206
- */
517
+
1207
518
  KeySpec?: KeySpec | string;
1208
- /**
1209
- * <p>The encryption algorithms that the KMS key supports. You cannot use the KMS key with other
1210
- * encryption algorithms within KMS.</p>
1211
- * <p>This value is present only when the <code>KeyUsage</code> of the KMS key is
1212
- * <code>ENCRYPT_DECRYPT</code>.</p>
1213
- */
519
+
1214
520
  EncryptionAlgorithms?: (EncryptionAlgorithmSpec | string)[];
1215
- /**
1216
- * <p>The signing algorithms that the KMS key supports. You cannot use the KMS key with other
1217
- * signing algorithms within KMS.</p>
1218
- * <p>This field appears only when the <code>KeyUsage</code> of the KMS key is
1219
- * <code>SIGN_VERIFY</code>.</p>
1220
- */
521
+
1221
522
  SigningAlgorithms?: (SigningAlgorithmSpec | string)[];
1222
- /**
1223
- * <p>Indicates whether the KMS key is a multi-Region (<code>True</code>) or regional
1224
- * (<code>False</code>) key. This value is <code>True</code> for multi-Region primary and
1225
- * replica keys and <code>False</code> for regional KMS keys.</p>
1226
- * <p>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>
1227
- */
523
+
1228
524
  MultiRegion?: boolean;
1229
- /**
1230
- * <p>Lists the primary and replica keys in same multi-Region key. This field is present only
1231
- * when the value of the <code>MultiRegion</code> field is <code>True</code>.</p>
1232
- * <p>For more information about any listed KMS key, use the <a>DescribeKey</a>
1233
- * operation.</p>
1234
- * <ul>
1235
- * <li>
1236
- * <p>
1237
- * <code>MultiRegionKeyType</code> indicates whether the KMS key is a
1238
- * <code>PRIMARY</code> or <code>REPLICA</code> key.</p>
1239
- * </li>
1240
- * <li>
1241
- * <p>
1242
- * <code>PrimaryKey</code> displays the key ARN and Region of the primary key. This field
1243
- * displays the current KMS key if it is the primary key.</p>
1244
- * </li>
1245
- * <li>
1246
- * <p>
1247
- * <code>ReplicaKeys</code> displays the key ARNs and Regions of all replica keys. This
1248
- * field includes the current KMS key if it is a replica key.</p>
1249
- * </li>
1250
- * </ul>
1251
- */
525
+
1252
526
  MultiRegionConfiguration?: MultiRegionConfiguration;
1253
- /**
1254
- * <p>The waiting period before the primary key in a multi-Region key is deleted. This waiting
1255
- * period begins when the last of its replica keys is deleted. This value is present only when
1256
- * the <code>KeyState</code> of the KMS key is <code>PendingReplicaDeletion</code>. That
1257
- * indicates that the KMS key is the primary key in a multi-Region key, it is scheduled for
1258
- * deletion, and it still has existing replica keys.</p>
1259
- * <p>When a single-Region KMS key or a multi-Region replica key is scheduled for deletion, its
1260
- * deletion date is displayed in the <code>DeletionDate</code> field. However, when the primary
1261
- * key in a multi-Region key is scheduled for deletion, its waiting period doesn't begin until
1262
- * all of its replica keys are deleted. This value displays that waiting period. When the last
1263
- * replica key in the multi-Region key is deleted, the <code>KeyState</code> of the scheduled
1264
- * primary key changes from <code>PendingReplicaDeletion</code> to <code>PendingDeletion</code>
1265
- * and the deletion date appears in the <code>DeletionDate</code> field.</p>
1266
- */
527
+
1267
528
  PendingDeletionWindowInDays?: number;
1268
529
  }
1269
530
  export declare namespace KeyMetadata {
1270
- /**
1271
- * @internal
1272
- */
531
+
1273
532
  const filterSensitiveLog: (obj: KeyMetadata) => any;
1274
533
  }
1275
534
  export interface CreateKeyResponse {
1276
- /**
1277
- * <p>Metadata associated with the KMS key.</p>
1278
- */
535
+
1279
536
  KeyMetadata?: KeyMetadata;
1280
537
  }
1281
538
  export declare namespace CreateKeyResponse {
1282
- /**
1283
- * @internal
1284
- */
539
+
1285
540
  const filterSensitiveLog: (obj: CreateKeyResponse) => any;
1286
541
  }
1287
- /**
1288
- * <p>The request was rejected because the specified policy is not syntactically or semantically
1289
- * correct.</p>
1290
- */
542
+
1291
543
  export interface MalformedPolicyDocumentException extends __SmithyException, $MetadataBearer {
1292
544
  name: "MalformedPolicyDocumentException";
1293
545
  $fault: "client";
1294
546
  message?: string;
1295
547
  }
1296
548
  export declare namespace MalformedPolicyDocumentException {
1297
- /**
1298
- * @internal
1299
- */
549
+
1300
550
  const filterSensitiveLog: (obj: MalformedPolicyDocumentException) => any;
1301
551
  }
1302
- /**
1303
- * <p>The request was rejected because one or more tags are not valid.</p>
1304
- */
552
+
1305
553
  export interface TagException extends __SmithyException, $MetadataBearer {
1306
554
  name: "TagException";
1307
555
  $fault: "client";
1308
556
  message?: string;
1309
557
  }
1310
558
  export declare namespace TagException {
1311
- /**
1312
- * @internal
1313
- */
559
+
1314
560
  const filterSensitiveLog: (obj: TagException) => any;
1315
561
  }
1316
- /**
1317
- * <p>The request was rejected because a specified parameter is not supported or a specified
1318
- * resource is not valid for this operation.</p>
1319
- */
562
+
1320
563
  export interface UnsupportedOperationException extends __SmithyException, $MetadataBearer {
1321
564
  name: "UnsupportedOperationException";
1322
565
  $fault: "client";
1323
566
  message?: string;
1324
567
  }
1325
568
  export declare namespace UnsupportedOperationException {
1326
- /**
1327
- * @internal
1328
- */
569
+
1329
570
  const filterSensitiveLog: (obj: UnsupportedOperationException) => any;
1330
571
  }
1331
- /**
1332
- * <p>The request was rejected because the custom key store contains KMS keys. After verifying
1333
- * that you do not need to use the KMS keys, use the <a>ScheduleKeyDeletion</a>
1334
- * operation to delete the KMS keys. After they are deleted, you can delete the custom key
1335
- * store.</p>
1336
- */
572
+
1337
573
  export interface CustomKeyStoreHasCMKsException extends __SmithyException, $MetadataBearer {
1338
574
  name: "CustomKeyStoreHasCMKsException";
1339
575
  $fault: "client";
1340
576
  message?: string;
1341
577
  }
1342
578
  export declare namespace CustomKeyStoreHasCMKsException {
1343
- /**
1344
- * @internal
1345
- */
579
+
1346
580
  const filterSensitiveLog: (obj: CustomKeyStoreHasCMKsException) => any;
1347
581
  }
1348
- /**
1349
- * <p>Contains information about each custom key store in the custom key store list.</p>
1350
- */
582
+
1351
583
  export interface CustomKeyStoresListEntry {
1352
- /**
1353
- * <p>A unique identifier for the custom key store.</p>
1354
- */
584
+
1355
585
  CustomKeyStoreId?: string;
1356
- /**
1357
- * <p>The user-specified friendly name for the custom key store.</p>
1358
- */
586
+
1359
587
  CustomKeyStoreName?: string;
1360
- /**
1361
- * <p>A unique identifier for the CloudHSM cluster that is associated with the custom key
1362
- * store.</p>
1363
- */
588
+
1364
589
  CloudHsmClusterId?: string;
1365
- /**
1366
- * <p>The trust anchor certificate of the associated CloudHSM cluster. When you <a href="https://docs.aws.amazon.com/cloudhsm/latest/userguide/initialize-cluster.html#sign-csr">initialize the
1367
- * cluster</a>, you create this certificate and save it in the <code>customerCA.crt</code>
1368
- * file.</p>
1369
- */
590
+
1370
591
  TrustAnchorCertificate?: string;
1371
- /**
1372
- * <p>Indicates whether the custom key store is connected to its CloudHSM cluster.</p>
1373
- * <p>You can create and use KMS keys in your custom key stores only when its connection state
1374
- * is <code>CONNECTED</code>.</p>
1375
- * <p>The value is <code>DISCONNECTED</code> if the key store has never been connected or you
1376
- * use the <a>DisconnectCustomKeyStore</a> operation to disconnect it. If the value is
1377
- * <code>CONNECTED</code> but you are having trouble using the custom key store, make sure that
1378
- * its associated CloudHSM cluster is active and contains at least one active HSM.</p>
1379
- * <p>A value of <code>FAILED</code> indicates that an attempt to connect was unsuccessful. The
1380
- * <code>ConnectionErrorCode</code> field in the response indicates the cause of the failure.
1381
- * For help resolving a connection failure, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/fix-keystore.html">Troubleshooting a Custom Key Store</a> in the
1382
- * <i>Key Management Service Developer Guide</i>.</p>
1383
- */
592
+
1384
593
  ConnectionState?: ConnectionStateType | string;
1385
- /**
1386
- * <p>Describes the connection error. This field appears in the response only when the
1387
- * <code>ConnectionState</code> is <code>FAILED</code>. For help resolving these errors, see
1388
- * <a href="https://docs.aws.amazon.com/kms/latest/developerguide/fix-keystore.html#fix-keystore-failed">How to
1389
- * Fix a Connection Failure</a> in <i>Key Management Service Developer Guide</i>.</p>
1390
- * <p>Valid values are:</p>
1391
- * <ul>
1392
- * <li>
1393
- * <p>
1394
- * <code>CLUSTER_NOT_FOUND</code> - KMS cannot find the CloudHSM cluster with the
1395
- * specified cluster ID.</p>
1396
- * </li>
1397
- * <li>
1398
- * <p>
1399
- * <code>INSUFFICIENT_CLOUDHSM_HSMS</code> - The associated CloudHSM cluster does not
1400
- * contain any active HSMs. To connect a custom key store to its CloudHSM cluster, the cluster
1401
- * must contain at least one active HSM.</p>
1402
- * </li>
1403
- * <li>
1404
- * <p>
1405
- * <code>INTERNAL_ERROR</code> - KMS could not complete the request due to an internal
1406
- * error. Retry the request. For <code>ConnectCustomKeyStore</code> requests, disconnect the
1407
- * custom key store before trying to connect again.</p>
1408
- * </li>
1409
- * <li>
1410
- * <p>
1411
- * <code>INVALID_CREDENTIALS</code> - KMS does not have the correct password for the
1412
- * <code>kmsuser</code> crypto user in the CloudHSM cluster. Before you can connect your
1413
- * custom key store to its CloudHSM cluster, you must change the <code>kmsuser</code> account
1414
- * password and update the key store password value for the custom key store.</p>
1415
- * </li>
1416
- * <li>
1417
- * <p>
1418
- * <code>NETWORK_ERRORS</code> - Network errors are preventing KMS from connecting to
1419
- * the custom key store.</p>
1420
- * </li>
1421
- * <li>
1422
- * <p>
1423
- * <code>SUBNET_NOT_FOUND</code> - A subnet in the CloudHSM cluster configuration was
1424
- * deleted. If KMS cannot find all of the subnets in the cluster configuration, attempts to
1425
- * connect the custom key store to the CloudHSM cluster fail. To fix this error, create a
1426
- * cluster from a recent backup and associate it with your custom key store. (This process
1427
- * creates a new cluster configuration with a VPC and private subnets.) For details, see
1428
- * <a href="https://docs.aws.amazon.com/kms/latest/developerguide/fix-keystore.html#fix-keystore-failed">How
1429
- * to Fix a Connection Failure</a> in the <i>Key Management Service Developer Guide</i>.</p>
1430
- * </li>
1431
- * <li>
1432
- * <p>
1433
- * <code>USER_LOCKED_OUT</code> - The <code>kmsuser</code> CU account is locked out of
1434
- * the associated CloudHSM cluster due to too many failed password attempts. Before you can
1435
- * connect your custom key store to its CloudHSM cluster, you must change the
1436
- * <code>kmsuser</code> account password and update the key store password value for the
1437
- * custom key store.</p>
1438
- * </li>
1439
- * <li>
1440
- * <p>
1441
- * <code>USER_LOGGED_IN</code> - The <code>kmsuser</code> CU account is logged into the
1442
- * the associated CloudHSM cluster. This prevents KMS from rotating the <code>kmsuser</code>
1443
- * account password and logging into the cluster. Before you can connect your custom key
1444
- * store to its CloudHSM cluster, you must log the <code>kmsuser</code> CU out of the cluster.
1445
- * If you changed the <code>kmsuser</code> password to log into the cluster, you must also
1446
- * and update the key store password value for the custom key store. For help, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/fix-keystore.html#login-kmsuser-2">How to Log Out
1447
- * and Reconnect</a> in the <i>Key Management Service Developer Guide</i>.</p>
1448
- * </li>
1449
- * <li>
1450
- * <p>
1451
- * <code>USER_NOT_FOUND</code> - KMS cannot find a <code>kmsuser</code> CU account in
1452
- * the associated CloudHSM cluster. Before you can connect your custom key store to its CloudHSM
1453
- * cluster, you must create a <code>kmsuser</code> CU account in the cluster, and then update
1454
- * the key store password value for the custom key store.</p>
1455
- * </li>
1456
- * </ul>
1457
- */
594
+
1458
595
  ConnectionErrorCode?: ConnectionErrorCodeType | string;
1459
- /**
1460
- * <p>The date and time when the custom key store was created.</p>
1461
- */
596
+
1462
597
  CreationDate?: Date;
1463
598
  }
1464
599
  export declare namespace CustomKeyStoresListEntry {
1465
- /**
1466
- * @internal
1467
- */
600
+
1468
601
  const filterSensitiveLog: (obj: CustomKeyStoresListEntry) => any;
1469
602
  }
1470
603
  export declare enum DataKeyPairSpec {
@@ -1481,1733 +614,706 @@ export declare enum DataKeySpec {
1481
614
  AES_256 = "AES_256"
1482
615
  }
1483
616
  export interface DecryptRequest {
1484
- /**
1485
- * <p>Ciphertext to be decrypted. The blob includes metadata.</p>
1486
- */
617
+
1487
618
  CiphertextBlob: Uint8Array | undefined;
1488
- /**
1489
- * <p>Specifies the encryption context to use when decrypting the data.
1490
- * An encryption context is valid only for <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations">cryptographic operations</a> with a symmetric KMS key. The standard asymmetric encryption algorithms that KMS uses do not support an encryption context.</p>
1491
- * <p>An <i>encryption context</i> is a collection of non-secret key-value pairs that represents additional authenticated data. When you use an encryption context to encrypt data, you must specify the same (an exact case-sensitive match) encryption context to decrypt the data. An encryption context is optional when encrypting with a symmetric KMS key, but it is highly recommended.</p>
1492
- * <p>For more information, see
1493
- * <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context">Encryption
1494
- * Context</a> in the <i>Key Management Service Developer Guide</i>.</p>
1495
- */
619
+
1496
620
  EncryptionContext?: {
1497
621
  [key: string]: string;
1498
622
  };
1499
- /**
1500
- * <p>A list of grant tokens. </p>
1501
- * <p>Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved <i>eventual consistency</i>. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#grant_token">Grant token</a> and <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grant-manage.html#using-grant-token">Using a grant token</a> in the
1502
- * <i>Key Management Service Developer Guide</i>.</p>
1503
- */
623
+
1504
624
  GrantTokens?: string[];
1505
- /**
1506
- * <p>Specifies the KMS key that KMS uses to decrypt the ciphertext. Enter a key ID of the KMS
1507
- * key that was used to encrypt the ciphertext. </p>
1508
- *
1509
- * <p>This parameter is required only when the ciphertext was encrypted under an asymmetric KMS
1510
- * key. If you used a symmetric KMS key, KMS can get the KMS key from metadata that it adds to
1511
- * the symmetric ciphertext blob. However, it is always recommended as a best practice. This
1512
- * practice ensures that you use the KMS key that you intend.</p>
1513
- *
1514
- * <p>To specify a KMS key, use its key ID, key ARN, alias name, or alias ARN. When using an alias name, prefix it with <code>"alias/"</code>. To specify a KMS key in a different Amazon Web Services account, you must use the key ARN or alias ARN.</p>
1515
- * <p>For example:</p>
1516
- * <ul>
1517
- * <li>
1518
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
1519
- * </p>
1520
- * </li>
1521
- * <li>
1522
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
1523
- * </p>
1524
- * </li>
1525
- * <li>
1526
- * <p>Alias name: <code>alias/ExampleAlias</code>
1527
- * </p>
1528
- * </li>
1529
- * <li>
1530
- * <p>Alias ARN: <code>arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias</code>
1531
- * </p>
1532
- * </li>
1533
- * </ul>
1534
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>. To get the alias name and alias ARN, use <a>ListAliases</a>.</p>
1535
- */
625
+
1536
626
  KeyId?: string;
1537
- /**
1538
- * <p>Specifies the encryption algorithm that will be used to decrypt the ciphertext. Specify
1539
- * the same algorithm that was used to encrypt the data. If you specify a different algorithm,
1540
- * the <code>Decrypt</code> operation fails.</p>
1541
- * <p>This parameter is required only when the ciphertext was encrypted under an asymmetric KMS
1542
- * key. The default value, <code>SYMMETRIC_DEFAULT</code>, represents the only supported
1543
- * algorithm that is valid for symmetric KMS keys.</p>
1544
- */
627
+
1545
628
  EncryptionAlgorithm?: EncryptionAlgorithmSpec | string;
1546
629
  }
1547
630
  export declare namespace DecryptRequest {
1548
- /**
1549
- * @internal
1550
- */
631
+
1551
632
  const filterSensitiveLog: (obj: DecryptRequest) => any;
1552
633
  }
1553
634
  export interface DecryptResponse {
1554
- /**
1555
- * <p>The Amazon Resource Name (<a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id-key-ARN">key ARN</a>) of the KMS key that was used to decrypt the ciphertext.</p>
1556
- */
635
+
1557
636
  KeyId?: string;
1558
- /**
1559
- * <p>Decrypted plaintext data. When you use the HTTP API or the Amazon Web Services CLI, the value is Base64-encoded. Otherwise, it is not Base64-encoded.</p>
1560
- */
637
+
1561
638
  Plaintext?: Uint8Array;
1562
- /**
1563
- * <p>The encryption algorithm that was used to decrypt the ciphertext.</p>
1564
- */
639
+
1565
640
  EncryptionAlgorithm?: EncryptionAlgorithmSpec | string;
1566
641
  }
1567
642
  export declare namespace DecryptResponse {
1568
- /**
1569
- * @internal
1570
- */
643
+
1571
644
  const filterSensitiveLog: (obj: DecryptResponse) => any;
1572
645
  }
1573
- /**
1574
- * <p>The request was rejected because the specified KMS key cannot decrypt the data. The
1575
- * <code>KeyId</code> in a <a>Decrypt</a> request and the <code>SourceKeyId</code>
1576
- * in a <a>ReEncrypt</a> request must identify the same KMS key that was used to
1577
- * encrypt the ciphertext.</p>
1578
- */
646
+
1579
647
  export interface IncorrectKeyException extends __SmithyException, $MetadataBearer {
1580
648
  name: "IncorrectKeyException";
1581
649
  $fault: "client";
1582
650
  message?: string;
1583
651
  }
1584
652
  export declare namespace IncorrectKeyException {
1585
- /**
1586
- * @internal
1587
- */
653
+
1588
654
  const filterSensitiveLog: (obj: IncorrectKeyException) => any;
1589
655
  }
1590
- /**
1591
- * <p>From the <a>Decrypt</a> or <a>ReEncrypt</a> operation, the request
1592
- * was rejected because the specified ciphertext, or additional authenticated data incorporated
1593
- * into the ciphertext, such as the encryption context, is corrupted, missing, or otherwise
1594
- * invalid.</p>
1595
- * <p>From the <a>ImportKeyMaterial</a> operation, the request was rejected because
1596
- * KMS could not decrypt the encrypted (wrapped) key material. </p>
1597
- */
656
+
1598
657
  export interface InvalidCiphertextException extends __SmithyException, $MetadataBearer {
1599
658
  name: "InvalidCiphertextException";
1600
659
  $fault: "client";
1601
660
  message?: string;
1602
661
  }
1603
662
  export declare namespace InvalidCiphertextException {
1604
- /**
1605
- * @internal
1606
- */
663
+
1607
664
  const filterSensitiveLog: (obj: InvalidCiphertextException) => any;
1608
665
  }
1609
- /**
1610
- * <p>The request was rejected for one of the following reasons: </p>
1611
- * <ul>
1612
- * <li>
1613
- * <p>The <code>KeyUsage</code> value of the KMS key is incompatible with the API
1614
- * operation.</p>
1615
- * </li>
1616
- * <li>
1617
- * <p>The encryption algorithm or signing algorithm specified for the operation is
1618
- * incompatible with the type of key material in the KMS key <code>(KeySpec</code>).</p>
1619
- * </li>
1620
- * </ul>
1621
- * <p>For encrypting, decrypting, re-encrypting, and generating data keys, the
1622
- * <code>KeyUsage</code> must be <code>ENCRYPT_DECRYPT</code>. For signing and verifying, the
1623
- * <code>KeyUsage</code> must be <code>SIGN_VERIFY</code>. To find the <code>KeyUsage</code> of
1624
- * a KMS key, use the <a>DescribeKey</a> operation.</p>
1625
- * <p>To find the encryption or signing algorithms supported for a particular KMS key, use the
1626
- * <a>DescribeKey</a> operation.</p>
1627
- */
666
+
1628
667
  export interface InvalidKeyUsageException extends __SmithyException, $MetadataBearer {
1629
668
  name: "InvalidKeyUsageException";
1630
669
  $fault: "client";
1631
670
  message?: string;
1632
671
  }
1633
672
  export declare namespace InvalidKeyUsageException {
1634
- /**
1635
- * @internal
1636
- */
673
+
1637
674
  const filterSensitiveLog: (obj: InvalidKeyUsageException) => any;
1638
675
  }
1639
- /**
1640
- * <p>The request was rejected because the specified KMS key was not available. You can retry
1641
- * the request.</p>
1642
- */
676
+
1643
677
  export interface KeyUnavailableException extends __SmithyException, $MetadataBearer {
1644
678
  name: "KeyUnavailableException";
1645
679
  $fault: "server";
1646
680
  message?: string;
1647
681
  }
1648
682
  export declare namespace KeyUnavailableException {
1649
- /**
1650
- * @internal
1651
- */
683
+
1652
684
  const filterSensitiveLog: (obj: KeyUnavailableException) => any;
1653
685
  }
1654
686
  export interface DeleteAliasRequest {
1655
- /**
1656
- * <p>The alias to be deleted. The alias name must begin with <code>alias/</code> followed by
1657
- * the alias name, such as <code>alias/ExampleAlias</code>.</p>
1658
- */
687
+
1659
688
  AliasName: string | undefined;
1660
689
  }
1661
690
  export declare namespace DeleteAliasRequest {
1662
- /**
1663
- * @internal
1664
- */
691
+
1665
692
  const filterSensitiveLog: (obj: DeleteAliasRequest) => any;
1666
693
  }
1667
694
  export interface DeleteCustomKeyStoreRequest {
1668
- /**
1669
- * <p>Enter the ID of the custom key store you want to delete. To find the ID of a custom key store, use the <a>DescribeCustomKeyStores</a> operation.</p>
1670
- */
695
+
1671
696
  CustomKeyStoreId: string | undefined;
1672
697
  }
1673
698
  export declare namespace DeleteCustomKeyStoreRequest {
1674
- /**
1675
- * @internal
1676
- */
699
+
1677
700
  const filterSensitiveLog: (obj: DeleteCustomKeyStoreRequest) => any;
1678
701
  }
1679
702
  export interface DeleteCustomKeyStoreResponse {
1680
703
  }
1681
704
  export declare namespace DeleteCustomKeyStoreResponse {
1682
- /**
1683
- * @internal
1684
- */
705
+
1685
706
  const filterSensitiveLog: (obj: DeleteCustomKeyStoreResponse) => any;
1686
707
  }
1687
708
  export interface DeleteImportedKeyMaterialRequest {
1688
- /**
1689
- * <p>Identifies the KMS key from which you are deleting imported key material. The
1690
- * <code>Origin</code> of the KMS key must be <code>EXTERNAL</code>.</p>
1691
- *
1692
- * <p>Specify the key ID or key ARN of the KMS key.</p>
1693
- * <p>For example:</p>
1694
- * <ul>
1695
- * <li>
1696
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
1697
- * </p>
1698
- * </li>
1699
- * <li>
1700
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
1701
- * </p>
1702
- * </li>
1703
- * </ul>
1704
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
1705
- */
709
+
1706
710
  KeyId: string | undefined;
1707
711
  }
1708
712
  export declare namespace DeleteImportedKeyMaterialRequest {
1709
- /**
1710
- * @internal
1711
- */
713
+
1712
714
  const filterSensitiveLog: (obj: DeleteImportedKeyMaterialRequest) => any;
1713
715
  }
1714
716
  export interface DescribeCustomKeyStoresRequest {
1715
- /**
1716
- * <p>Gets only information about the specified custom key store. Enter the key store ID.</p>
1717
- * <p>By default, this operation gets information about all custom key stores in the account and
1718
- * Region. To limit the output to a particular custom key store, you can use either the
1719
- * <code>CustomKeyStoreId</code> or <code>CustomKeyStoreName</code> parameter, but not
1720
- * both.</p>
1721
- */
717
+
1722
718
  CustomKeyStoreId?: string;
1723
- /**
1724
- * <p>Gets only information about the specified custom key store. Enter the friendly name of the
1725
- * custom key store.</p>
1726
- * <p>By default, this operation gets information about all custom key stores in the account and
1727
- * Region. To limit the output to a particular custom key store, you can use either the
1728
- * <code>CustomKeyStoreId</code> or <code>CustomKeyStoreName</code> parameter, but not
1729
- * both.</p>
1730
- */
719
+
1731
720
  CustomKeyStoreName?: string;
1732
- /**
1733
- * <p>Use this parameter to specify the maximum number of items to return. When this
1734
- * value is present, KMS does not return more than the specified number of items, but it might
1735
- * return fewer.</p>
1736
- */
721
+
1737
722
  Limit?: number;
1738
- /**
1739
- * <p>Use this parameter in a subsequent request after you receive a response with
1740
- * truncated results. Set it to the value of <code>NextMarker</code> from the truncated response
1741
- * you just received.</p>
1742
- */
723
+
1743
724
  Marker?: string;
1744
725
  }
1745
726
  export declare namespace DescribeCustomKeyStoresRequest {
1746
- /**
1747
- * @internal
1748
- */
727
+
1749
728
  const filterSensitiveLog: (obj: DescribeCustomKeyStoresRequest) => any;
1750
729
  }
1751
730
  export interface DescribeCustomKeyStoresResponse {
1752
- /**
1753
- * <p>Contains metadata about each custom key store.</p>
1754
- */
731
+
1755
732
  CustomKeyStores?: CustomKeyStoresListEntry[];
1756
- /**
1757
- * <p>When <code>Truncated</code> is true, this element is present and contains the
1758
- * value to use for the <code>Marker</code> parameter in a subsequent request.</p>
1759
- */
733
+
1760
734
  NextMarker?: string;
1761
- /**
1762
- * <p>A flag that indicates whether there are more items in the list. When this
1763
- * value is true, the list in this response is truncated. To get more items, pass the value of
1764
- * the <code>NextMarker</code> element in thisresponse to the <code>Marker</code> parameter in a
1765
- * subsequent request.</p>
1766
- */
735
+
1767
736
  Truncated?: boolean;
1768
737
  }
1769
738
  export declare namespace DescribeCustomKeyStoresResponse {
1770
- /**
1771
- * @internal
1772
- */
739
+
1773
740
  const filterSensitiveLog: (obj: DescribeCustomKeyStoresResponse) => any;
1774
741
  }
1775
- /**
1776
- * <p>The request was rejected because the marker that specifies where pagination should next
1777
- * begin is not valid.</p>
1778
- */
742
+
1779
743
  export interface InvalidMarkerException extends __SmithyException, $MetadataBearer {
1780
744
  name: "InvalidMarkerException";
1781
745
  $fault: "client";
1782
746
  message?: string;
1783
747
  }
1784
748
  export declare namespace InvalidMarkerException {
1785
- /**
1786
- * @internal
1787
- */
749
+
1788
750
  const filterSensitiveLog: (obj: InvalidMarkerException) => any;
1789
751
  }
1790
752
  export interface DescribeKeyRequest {
1791
- /**
1792
- * <p>Describes the specified KMS key. </p>
1793
- * <p>If you specify a predefined Amazon Web Services alias (an Amazon Web Services alias with no key ID), KMS associates
1794
- * the alias with an <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html##aws-managed-cmk">Amazon Web Services managed key</a> and returns its
1795
- * <code>KeyId</code> and <code>Arn</code> in the response.</p>
1796
- *
1797
- * <p>To specify a KMS key, use its key ID, key ARN, alias name, or alias ARN. When using an alias name, prefix it with <code>"alias/"</code>. To specify a KMS key in a different Amazon Web Services account, you must use the key ARN or alias ARN.</p>
1798
- * <p>For example:</p>
1799
- * <ul>
1800
- * <li>
1801
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
1802
- * </p>
1803
- * </li>
1804
- * <li>
1805
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
1806
- * </p>
1807
- * </li>
1808
- * <li>
1809
- * <p>Alias name: <code>alias/ExampleAlias</code>
1810
- * </p>
1811
- * </li>
1812
- * <li>
1813
- * <p>Alias ARN: <code>arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias</code>
1814
- * </p>
1815
- * </li>
1816
- * </ul>
1817
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>. To get the alias name and alias ARN, use <a>ListAliases</a>.</p>
1818
- */
753
+
1819
754
  KeyId: string | undefined;
1820
- /**
1821
- * <p>A list of grant tokens.</p>
1822
- * <p>Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved <i>eventual consistency</i>. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#grant_token">Grant token</a> and <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grant-manage.html#using-grant-token">Using a grant token</a> in the
1823
- * <i>Key Management Service Developer Guide</i>.</p>
1824
- */
755
+
1825
756
  GrantTokens?: string[];
1826
757
  }
1827
758
  export declare namespace DescribeKeyRequest {
1828
- /**
1829
- * @internal
1830
- */
759
+
1831
760
  const filterSensitiveLog: (obj: DescribeKeyRequest) => any;
1832
761
  }
1833
762
  export interface DescribeKeyResponse {
1834
- /**
1835
- * <p>Metadata associated with the key.</p>
1836
- */
763
+
1837
764
  KeyMetadata?: KeyMetadata;
1838
765
  }
1839
766
  export declare namespace DescribeKeyResponse {
1840
- /**
1841
- * @internal
1842
- */
767
+
1843
768
  const filterSensitiveLog: (obj: DescribeKeyResponse) => any;
1844
769
  }
1845
770
  export interface DisableKeyRequest {
1846
- /**
1847
- * <p>Identifies the KMS key to disable.</p>
1848
- * <p>Specify the key ID or key ARN of the KMS key.</p>
1849
- * <p>For example:</p>
1850
- * <ul>
1851
- * <li>
1852
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
1853
- * </p>
1854
- * </li>
1855
- * <li>
1856
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
1857
- * </p>
1858
- * </li>
1859
- * </ul>
1860
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
1861
- */
771
+
1862
772
  KeyId: string | undefined;
1863
773
  }
1864
774
  export declare namespace DisableKeyRequest {
1865
- /**
1866
- * @internal
1867
- */
775
+
1868
776
  const filterSensitiveLog: (obj: DisableKeyRequest) => any;
1869
777
  }
1870
778
  export interface DisableKeyRotationRequest {
1871
- /**
1872
- * <p>Identifies a symmetric KMS key. You cannot enable or disable automatic rotation of <a href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html#asymmetric-cmks">asymmetric
1873
- * KMS keys</a>, KMS keys with <a href="https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html">imported key material</a>, or KMS keys in a
1874
- * <a href="https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html">custom key store</a>.</p>
1875
- * <p>Specify the key ID or key ARN of the KMS key.</p>
1876
- * <p>For example:</p>
1877
- * <ul>
1878
- * <li>
1879
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
1880
- * </p>
1881
- * </li>
1882
- * <li>
1883
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
1884
- * </p>
1885
- * </li>
1886
- * </ul>
1887
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
1888
- */
779
+
1889
780
  KeyId: string | undefined;
1890
781
  }
1891
782
  export declare namespace DisableKeyRotationRequest {
1892
- /**
1893
- * @internal
1894
- */
783
+
1895
784
  const filterSensitiveLog: (obj: DisableKeyRotationRequest) => any;
1896
785
  }
1897
786
  export interface DisconnectCustomKeyStoreRequest {
1898
- /**
1899
- * <p>Enter the ID of the custom key store you want to disconnect. To find the ID of a custom key store, use the <a>DescribeCustomKeyStores</a> operation.</p>
1900
- */
787
+
1901
788
  CustomKeyStoreId: string | undefined;
1902
789
  }
1903
790
  export declare namespace DisconnectCustomKeyStoreRequest {
1904
- /**
1905
- * @internal
1906
- */
791
+
1907
792
  const filterSensitiveLog: (obj: DisconnectCustomKeyStoreRequest) => any;
1908
793
  }
1909
794
  export interface DisconnectCustomKeyStoreResponse {
1910
795
  }
1911
796
  export declare namespace DisconnectCustomKeyStoreResponse {
1912
- /**
1913
- * @internal
1914
- */
797
+
1915
798
  const filterSensitiveLog: (obj: DisconnectCustomKeyStoreResponse) => any;
1916
799
  }
1917
800
  export interface EnableKeyRequest {
1918
- /**
1919
- * <p>Identifies the KMS key to enable.</p>
1920
- * <p>Specify the key ID or key ARN of the KMS key.</p>
1921
- * <p>For example:</p>
1922
- * <ul>
1923
- * <li>
1924
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
1925
- * </p>
1926
- * </li>
1927
- * <li>
1928
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
1929
- * </p>
1930
- * </li>
1931
- * </ul>
1932
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
1933
- */
801
+
1934
802
  KeyId: string | undefined;
1935
803
  }
1936
804
  export declare namespace EnableKeyRequest {
1937
- /**
1938
- * @internal
1939
- */
805
+
1940
806
  const filterSensitiveLog: (obj: EnableKeyRequest) => any;
1941
807
  }
1942
808
  export interface EnableKeyRotationRequest {
1943
- /**
1944
- * <p>Identifies a symmetric KMS key. You cannot enable automatic rotation of <a href="https://docs.aws.amazon.com/kms/latest/developerguide/symm-asymm-concepts.html#asymmetric-cmks">asymmetric KMS keys</a>, KMS keys with <a href="https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html">imported key material</a>, or KMS keys in a <a href="https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html">custom key store</a>. To enable or disable automatic rotation of a set of related <a href="https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html#mrk-replica-key">multi-Region keys</a>, set the property on the primary key.</p>
1945
- * <p>Specify the key ID or key ARN of the KMS key.</p>
1946
- * <p>For example:</p>
1947
- * <ul>
1948
- * <li>
1949
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
1950
- * </p>
1951
- * </li>
1952
- * <li>
1953
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
1954
- * </p>
1955
- * </li>
1956
- * </ul>
1957
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
1958
- */
809
+
1959
810
  KeyId: string | undefined;
1960
811
  }
1961
812
  export declare namespace EnableKeyRotationRequest {
1962
- /**
1963
- * @internal
1964
- */
813
+
1965
814
  const filterSensitiveLog: (obj: EnableKeyRotationRequest) => any;
1966
815
  }
1967
816
  export interface EncryptRequest {
1968
- /**
1969
- * <p>Identifies the KMS key to use in the encryption operation.</p>
1970
- *
1971
- * <p>To specify a KMS key, use its key ID, key ARN, alias name, or alias ARN. When using an alias name, prefix it with <code>"alias/"</code>. To specify a KMS key in a different Amazon Web Services account, you must use the key ARN or alias ARN.</p>
1972
- * <p>For example:</p>
1973
- * <ul>
1974
- * <li>
1975
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
1976
- * </p>
1977
- * </li>
1978
- * <li>
1979
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
1980
- * </p>
1981
- * </li>
1982
- * <li>
1983
- * <p>Alias name: <code>alias/ExampleAlias</code>
1984
- * </p>
1985
- * </li>
1986
- * <li>
1987
- * <p>Alias ARN: <code>arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias</code>
1988
- * </p>
1989
- * </li>
1990
- * </ul>
1991
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>. To get the alias name and alias ARN, use <a>ListAliases</a>.</p>
1992
- */
817
+
1993
818
  KeyId: string | undefined;
1994
- /**
1995
- * <p>Data to be encrypted.</p>
1996
- */
819
+
1997
820
  Plaintext: Uint8Array | undefined;
1998
- /**
1999
- * <p>Specifies the encryption context that will be used to encrypt the data.
2000
- * An encryption context is valid only for <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations">cryptographic operations</a> with a symmetric KMS key. The standard asymmetric encryption algorithms that KMS uses do not support an encryption context. </p>
2001
- * <p>An <i>encryption context</i> is a collection of non-secret key-value pairs that represents additional authenticated data. When you use an encryption context to encrypt data, you must specify the same (an exact case-sensitive match) encryption context to decrypt the data. An encryption context is optional when encrypting with a symmetric KMS key, but it is highly recommended.</p>
2002
- * <p>For more information, see
2003
- * <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context">Encryption
2004
- * Context</a> in the <i>Key Management Service Developer Guide</i>.</p>
2005
- */
821
+
2006
822
  EncryptionContext?: {
2007
823
  [key: string]: string;
2008
824
  };
2009
- /**
2010
- * <p>A list of grant tokens.</p>
2011
- * <p>Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved <i>eventual consistency</i>. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#grant_token">Grant token</a> and <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grant-manage.html#using-grant-token">Using a grant token</a> in the
2012
- * <i>Key Management Service Developer Guide</i>.</p>
2013
- */
825
+
2014
826
  GrantTokens?: string[];
2015
- /**
2016
- * <p>Specifies the encryption algorithm that KMS will use to encrypt the plaintext message.
2017
- * The algorithm must be compatible with the KMS key that you specify.</p>
2018
- * <p>This parameter is required only for asymmetric KMS keys. The default value,
2019
- * <code>SYMMETRIC_DEFAULT</code>, is the algorithm used for symmetric KMS keys. If you are
2020
- * using an asymmetric KMS key, we recommend RSAES_OAEP_SHA_256.</p>
2021
- */
827
+
2022
828
  EncryptionAlgorithm?: EncryptionAlgorithmSpec | string;
2023
829
  }
2024
830
  export declare namespace EncryptRequest {
2025
- /**
2026
- * @internal
2027
- */
831
+
2028
832
  const filterSensitiveLog: (obj: EncryptRequest) => any;
2029
833
  }
2030
834
  export interface EncryptResponse {
2031
- /**
2032
- * <p>The encrypted plaintext. When you use the HTTP API or the Amazon Web Services CLI, the value is Base64-encoded. Otherwise, it is not Base64-encoded.</p>
2033
- */
835
+
2034
836
  CiphertextBlob?: Uint8Array;
2035
- /**
2036
- * <p>The Amazon Resource Name (<a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id-key-ARN">key ARN</a>) of the KMS key that was used to encrypt the plaintext.</p>
2037
- */
837
+
2038
838
  KeyId?: string;
2039
- /**
2040
- * <p>The encryption algorithm that was used to encrypt the plaintext.</p>
2041
- */
839
+
2042
840
  EncryptionAlgorithm?: EncryptionAlgorithmSpec | string;
2043
841
  }
2044
842
  export declare namespace EncryptResponse {
2045
- /**
2046
- * @internal
2047
- */
843
+
2048
844
  const filterSensitiveLog: (obj: EncryptResponse) => any;
2049
845
  }
2050
- /**
2051
- * <p>The request was rejected because the specified import token is expired. Use <a>GetParametersForImport</a> to get a new import token and public key, use the new
2052
- * public key to encrypt the key material, and then try the request again.</p>
2053
- */
846
+
2054
847
  export interface ExpiredImportTokenException extends __SmithyException, $MetadataBearer {
2055
848
  name: "ExpiredImportTokenException";
2056
849
  $fault: "client";
2057
850
  message?: string;
2058
851
  }
2059
852
  export declare namespace ExpiredImportTokenException {
2060
- /**
2061
- * @internal
2062
- */
853
+
2063
854
  const filterSensitiveLog: (obj: ExpiredImportTokenException) => any;
2064
855
  }
2065
856
  export interface GenerateDataKeyRequest {
2066
- /**
2067
- * <p>Identifies the symmetric KMS key that encrypts the data key.</p>
2068
- *
2069
- * <p>To specify a KMS key, use its key ID, key ARN, alias name, or alias ARN. When using an alias name, prefix it with <code>"alias/"</code>. To specify a KMS key in a different Amazon Web Services account, you must use the key ARN or alias ARN.</p>
2070
- * <p>For example:</p>
2071
- * <ul>
2072
- * <li>
2073
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
2074
- * </p>
2075
- * </li>
2076
- * <li>
2077
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
2078
- * </p>
2079
- * </li>
2080
- * <li>
2081
- * <p>Alias name: <code>alias/ExampleAlias</code>
2082
- * </p>
2083
- * </li>
2084
- * <li>
2085
- * <p>Alias ARN: <code>arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias</code>
2086
- * </p>
2087
- * </li>
2088
- * </ul>
2089
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>. To get the alias name and alias ARN, use <a>ListAliases</a>.</p>
2090
- */
857
+
2091
858
  KeyId: string | undefined;
2092
- /**
2093
- * <p>Specifies the encryption context that will be used when encrypting the data key.</p>
2094
- * <p>An <i>encryption context</i> is a collection of non-secret key-value pairs that represents additional authenticated data. When you use an encryption context to encrypt data, you must specify the same (an exact case-sensitive match) encryption context to decrypt the data. An encryption context is optional when encrypting with a symmetric KMS key, but it is highly recommended.</p>
2095
- * <p>For more information, see
2096
- * <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context">Encryption
2097
- * Context</a> in the <i>Key Management Service Developer Guide</i>.</p>
2098
- */
859
+
2099
860
  EncryptionContext?: {
2100
861
  [key: string]: string;
2101
862
  };
2102
- /**
2103
- * <p>Specifies the length of the data key in bytes. For example, use the value 64 to generate a
2104
- * 512-bit data key (64 bytes is 512 bits). For 128-bit (16-byte) and 256-bit (32-byte) data
2105
- * keys, use the <code>KeySpec</code> parameter.</p>
2106
- * <p>You must specify either the <code>KeySpec</code> or the <code>NumberOfBytes</code>
2107
- * parameter (but not both) in every <code>GenerateDataKey</code> request.</p>
2108
- */
863
+
2109
864
  NumberOfBytes?: number;
2110
- /**
2111
- * <p>Specifies the length of the data key. Use <code>AES_128</code> to generate a 128-bit
2112
- * symmetric key, or <code>AES_256</code> to generate a 256-bit symmetric key.</p>
2113
- * <p>You must specify either the <code>KeySpec</code> or the <code>NumberOfBytes</code>
2114
- * parameter (but not both) in every <code>GenerateDataKey</code> request.</p>
2115
- */
865
+
2116
866
  KeySpec?: DataKeySpec | string;
2117
- /**
2118
- * <p>A list of grant tokens.</p>
2119
- * <p>Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved <i>eventual consistency</i>. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#grant_token">Grant token</a> and <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grant-manage.html#using-grant-token">Using a grant token</a> in the
2120
- * <i>Key Management Service Developer Guide</i>.</p>
2121
- */
867
+
2122
868
  GrantTokens?: string[];
2123
869
  }
2124
870
  export declare namespace GenerateDataKeyRequest {
2125
- /**
2126
- * @internal
2127
- */
871
+
2128
872
  const filterSensitiveLog: (obj: GenerateDataKeyRequest) => any;
2129
873
  }
2130
874
  export interface GenerateDataKeyResponse {
2131
- /**
2132
- * <p>The encrypted copy of the data key. When you use the HTTP API or the Amazon Web Services CLI, the value is Base64-encoded. Otherwise, it is not Base64-encoded.</p>
2133
- */
875
+
2134
876
  CiphertextBlob?: Uint8Array;
2135
- /**
2136
- * <p>The plaintext data key. When you use the HTTP API or the Amazon Web Services CLI, the value is Base64-encoded. Otherwise, it is not Base64-encoded. Use this data key to encrypt your data outside of
2137
- * KMS. Then, remove it from memory as soon as possible.</p>
2138
- */
877
+
2139
878
  Plaintext?: Uint8Array;
2140
- /**
2141
- * <p>The Amazon Resource Name (<a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id-key-ARN">key ARN</a>) of the KMS key that encrypted the data key.</p>
2142
- */
879
+
2143
880
  KeyId?: string;
2144
881
  }
2145
882
  export declare namespace GenerateDataKeyResponse {
2146
- /**
2147
- * @internal
2148
- */
883
+
2149
884
  const filterSensitiveLog: (obj: GenerateDataKeyResponse) => any;
2150
885
  }
2151
886
  export interface GenerateDataKeyPairRequest {
2152
- /**
2153
- * <p>Specifies the encryption context that will be used when encrypting the private key in the
2154
- * data key pair.</p>
2155
- * <p>An <i>encryption context</i> is a collection of non-secret key-value pairs that represents additional authenticated data. When you use an encryption context to encrypt data, you must specify the same (an exact case-sensitive match) encryption context to decrypt the data. An encryption context is optional when encrypting with a symmetric KMS key, but it is highly recommended.</p>
2156
- * <p>For more information, see
2157
- * <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context">Encryption
2158
- * Context</a> in the <i>Key Management Service Developer Guide</i>.</p>
2159
- */
887
+
2160
888
  EncryptionContext?: {
2161
889
  [key: string]: string;
2162
890
  };
2163
- /**
2164
- * <p>Specifies the symmetric KMS key that encrypts the private key in the data key pair. You
2165
- * cannot specify an asymmetric KMS key or a KMS key in a custom key store. To get the type and
2166
- * origin of your KMS key, use the <a>DescribeKey</a> operation.</p>
2167
- *
2168
- * <p>To specify a KMS key, use its key ID, key ARN, alias name, or alias ARN. When using an alias name, prefix it with <code>"alias/"</code>. To specify a KMS key in a different Amazon Web Services account, you must use the key ARN or alias ARN.</p>
2169
- * <p>For example:</p>
2170
- * <ul>
2171
- * <li>
2172
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
2173
- * </p>
2174
- * </li>
2175
- * <li>
2176
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
2177
- * </p>
2178
- * </li>
2179
- * <li>
2180
- * <p>Alias name: <code>alias/ExampleAlias</code>
2181
- * </p>
2182
- * </li>
2183
- * <li>
2184
- * <p>Alias ARN: <code>arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias</code>
2185
- * </p>
2186
- * </li>
2187
- * </ul>
2188
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>. To get the alias name and alias ARN, use <a>ListAliases</a>.</p>
2189
- */
891
+
2190
892
  KeyId: string | undefined;
2191
- /**
2192
- * <p>Determines the type of data key pair that is generated. </p>
2193
- * <p>The KMS rule that restricts the use of asymmetric RSA KMS keys to encrypt and decrypt or to sign and verify (but not both), and the rule that permits you to use ECC KMS keys only to sign and verify, are not effective on data key pairs, which are used outside of KMS.</p>
2194
- */
893
+
2195
894
  KeyPairSpec: DataKeyPairSpec | string | undefined;
2196
- /**
2197
- * <p>A list of grant tokens.</p>
2198
- * <p>Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved <i>eventual consistency</i>. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#grant_token">Grant token</a> and <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grant-manage.html#using-grant-token">Using a grant token</a> in the
2199
- * <i>Key Management Service Developer Guide</i>.</p>
2200
- */
895
+
2201
896
  GrantTokens?: string[];
2202
897
  }
2203
898
  export declare namespace GenerateDataKeyPairRequest {
2204
- /**
2205
- * @internal
2206
- */
899
+
2207
900
  const filterSensitiveLog: (obj: GenerateDataKeyPairRequest) => any;
2208
901
  }
2209
902
  export interface GenerateDataKeyPairResponse {
2210
- /**
2211
- * <p>The encrypted copy of the private key. When you use the HTTP API or the Amazon Web Services CLI, the value is Base64-encoded. Otherwise, it is not Base64-encoded.</p>
2212
- */
903
+
2213
904
  PrivateKeyCiphertextBlob?: Uint8Array;
2214
- /**
2215
- * <p>The plaintext copy of the private key. When you use the HTTP API or the Amazon Web Services CLI, the value is Base64-encoded. Otherwise, it is not Base64-encoded.</p>
2216
- */
905
+
2217
906
  PrivateKeyPlaintext?: Uint8Array;
2218
- /**
2219
- * <p>The public key (in plaintext).</p>
2220
- */
907
+
2221
908
  PublicKey?: Uint8Array;
2222
- /**
2223
- * <p>The Amazon Resource Name (<a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id-key-ARN">key ARN</a>) of the KMS key that encrypted the private key.</p>
2224
- */
909
+
2225
910
  KeyId?: string;
2226
- /**
2227
- * <p>The type of data key pair that was generated.</p>
2228
- */
911
+
2229
912
  KeyPairSpec?: DataKeyPairSpec | string;
2230
913
  }
2231
914
  export declare namespace GenerateDataKeyPairResponse {
2232
- /**
2233
- * @internal
2234
- */
915
+
2235
916
  const filterSensitiveLog: (obj: GenerateDataKeyPairResponse) => any;
2236
917
  }
2237
918
  export interface GenerateDataKeyPairWithoutPlaintextRequest {
2238
- /**
2239
- * <p>Specifies the encryption context that will be used when encrypting the private key in the
2240
- * data key pair.</p>
2241
- * <p>An <i>encryption context</i> is a collection of non-secret key-value pairs that represents additional authenticated data. When you use an encryption context to encrypt data, you must specify the same (an exact case-sensitive match) encryption context to decrypt the data. An encryption context is optional when encrypting with a symmetric KMS key, but it is highly recommended.</p>
2242
- * <p>For more information, see
2243
- * <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context">Encryption
2244
- * Context</a> in the <i>Key Management Service Developer Guide</i>.</p>
2245
- */
919
+
2246
920
  EncryptionContext?: {
2247
921
  [key: string]: string;
2248
922
  };
2249
- /**
2250
- * <p>Specifies the KMS key that encrypts the private key in the data key pair. You must specify
2251
- * a symmetric KMS key. You cannot use an asymmetric KMS key or a KMS key in a custom key store.
2252
- * To get the type and origin of your KMS key, use the <a>DescribeKey</a> operation.
2253
- * </p>
2254
- * <p>To specify a KMS key, use its key ID, key ARN, alias name, or alias ARN. When using an alias name, prefix it with <code>"alias/"</code>. To specify a KMS key in a different Amazon Web Services account, you must use the key ARN or alias ARN.</p>
2255
- * <p>For example:</p>
2256
- * <ul>
2257
- * <li>
2258
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
2259
- * </p>
2260
- * </li>
2261
- * <li>
2262
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
2263
- * </p>
2264
- * </li>
2265
- * <li>
2266
- * <p>Alias name: <code>alias/ExampleAlias</code>
2267
- * </p>
2268
- * </li>
2269
- * <li>
2270
- * <p>Alias ARN: <code>arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias</code>
2271
- * </p>
2272
- * </li>
2273
- * </ul>
2274
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>. To get the alias name and alias ARN, use <a>ListAliases</a>.</p>
2275
- */
923
+
2276
924
  KeyId: string | undefined;
2277
- /**
2278
- * <p>Determines the type of data key pair that is generated.</p>
2279
- * <p>The KMS rule that restricts the use of asymmetric RSA KMS keys to encrypt and decrypt or to sign and verify (but not both), and the rule that permits you to use ECC KMS keys only to sign and verify, are not effective on data key pairs, which are used outside of KMS.</p>
2280
- */
925
+
2281
926
  KeyPairSpec: DataKeyPairSpec | string | undefined;
2282
- /**
2283
- * <p>A list of grant tokens.</p>
2284
- * <p>Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved <i>eventual consistency</i>. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#grant_token">Grant token</a> and <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grant-manage.html#using-grant-token">Using a grant token</a> in the
2285
- * <i>Key Management Service Developer Guide</i>.</p>
2286
- */
927
+
2287
928
  GrantTokens?: string[];
2288
929
  }
2289
930
  export declare namespace GenerateDataKeyPairWithoutPlaintextRequest {
2290
- /**
2291
- * @internal
2292
- */
931
+
2293
932
  const filterSensitiveLog: (obj: GenerateDataKeyPairWithoutPlaintextRequest) => any;
2294
933
  }
2295
934
  export interface GenerateDataKeyPairWithoutPlaintextResponse {
2296
- /**
2297
- * <p>The encrypted copy of the private key. When you use the HTTP API or the Amazon Web Services CLI, the value is Base64-encoded. Otherwise, it is not Base64-encoded.</p>
2298
- */
935
+
2299
936
  PrivateKeyCiphertextBlob?: Uint8Array;
2300
- /**
2301
- * <p>The public key (in plaintext).</p>
2302
- */
937
+
2303
938
  PublicKey?: Uint8Array;
2304
- /**
2305
- * <p>The Amazon Resource Name (<a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id-key-ARN">key ARN</a>) of the KMS key that encrypted the private key.</p>
2306
- */
939
+
2307
940
  KeyId?: string;
2308
- /**
2309
- * <p>The type of data key pair that was generated.</p>
2310
- */
941
+
2311
942
  KeyPairSpec?: DataKeyPairSpec | string;
2312
943
  }
2313
944
  export declare namespace GenerateDataKeyPairWithoutPlaintextResponse {
2314
- /**
2315
- * @internal
2316
- */
945
+
2317
946
  const filterSensitiveLog: (obj: GenerateDataKeyPairWithoutPlaintextResponse) => any;
2318
947
  }
2319
948
  export interface GenerateDataKeyWithoutPlaintextRequest {
2320
- /**
2321
- * <p>The identifier of the symmetric KMS key that encrypts the data key.</p>
2322
- *
2323
- * <p>To specify a KMS key, use its key ID, key ARN, alias name, or alias ARN. When using an alias name, prefix it with <code>"alias/"</code>. To specify a KMS key in a different Amazon Web Services account, you must use the key ARN or alias ARN.</p>
2324
- * <p>For example:</p>
2325
- * <ul>
2326
- * <li>
2327
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
2328
- * </p>
2329
- * </li>
2330
- * <li>
2331
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
2332
- * </p>
2333
- * </li>
2334
- * <li>
2335
- * <p>Alias name: <code>alias/ExampleAlias</code>
2336
- * </p>
2337
- * </li>
2338
- * <li>
2339
- * <p>Alias ARN: <code>arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias</code>
2340
- * </p>
2341
- * </li>
2342
- * </ul>
2343
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>. To get the alias name and alias ARN, use <a>ListAliases</a>.</p>
2344
- */
949
+
2345
950
  KeyId: string | undefined;
2346
- /**
2347
- * <p>Specifies the encryption context that will be used when encrypting the data key.</p>
2348
- * <p>An <i>encryption context</i> is a collection of non-secret key-value pairs that represents additional authenticated data. When you use an encryption context to encrypt data, you must specify the same (an exact case-sensitive match) encryption context to decrypt the data. An encryption context is optional when encrypting with a symmetric KMS key, but it is highly recommended.</p>
2349
- * <p>For more information, see
2350
- * <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context">Encryption
2351
- * Context</a> in the <i>Key Management Service Developer Guide</i>.</p>
2352
- */
951
+
2353
952
  EncryptionContext?: {
2354
953
  [key: string]: string;
2355
954
  };
2356
- /**
2357
- * <p>The length of the data key. Use <code>AES_128</code> to generate a 128-bit symmetric key,
2358
- * or <code>AES_256</code> to generate a 256-bit symmetric key.</p>
2359
- */
955
+
2360
956
  KeySpec?: DataKeySpec | string;
2361
- /**
2362
- * <p>The length of the data key in bytes. For example, use the value 64 to generate a 512-bit
2363
- * data key (64 bytes is 512 bits). For common key lengths (128-bit and 256-bit symmetric keys),
2364
- * we recommend that you use the <code>KeySpec</code> field instead of this one.</p>
2365
- */
957
+
2366
958
  NumberOfBytes?: number;
2367
- /**
2368
- * <p>A list of grant tokens.</p>
2369
- * <p>Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved <i>eventual consistency</i>. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#grant_token">Grant token</a> and <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grant-manage.html#using-grant-token">Using a grant token</a> in the
2370
- * <i>Key Management Service Developer Guide</i>.</p>
2371
- */
959
+
2372
960
  GrantTokens?: string[];
2373
961
  }
2374
962
  export declare namespace GenerateDataKeyWithoutPlaintextRequest {
2375
- /**
2376
- * @internal
2377
- */
963
+
2378
964
  const filterSensitiveLog: (obj: GenerateDataKeyWithoutPlaintextRequest) => any;
2379
965
  }
2380
966
  export interface GenerateDataKeyWithoutPlaintextResponse {
2381
- /**
2382
- * <p>The encrypted data key. When you use the HTTP API or the Amazon Web Services CLI, the value is Base64-encoded. Otherwise, it is not Base64-encoded.</p>
2383
- */
967
+
2384
968
  CiphertextBlob?: Uint8Array;
2385
- /**
2386
- * <p>The Amazon Resource Name (<a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id-key-ARN">key ARN</a>) of the KMS key that encrypted the data key.</p>
2387
- */
969
+
2388
970
  KeyId?: string;
2389
971
  }
2390
972
  export declare namespace GenerateDataKeyWithoutPlaintextResponse {
2391
- /**
2392
- * @internal
2393
- */
973
+
2394
974
  const filterSensitiveLog: (obj: GenerateDataKeyWithoutPlaintextResponse) => any;
2395
975
  }
2396
976
  export interface GenerateRandomRequest {
2397
- /**
2398
- * <p>The length of the byte string.</p>
2399
- */
977
+
2400
978
  NumberOfBytes?: number;
2401
- /**
2402
- * <p>Generates the random byte string in the CloudHSM cluster that is associated with the
2403
- * specified <a href="https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html">custom key store</a>. To find the ID of a custom key store, use the <a>DescribeCustomKeyStores</a> operation.</p>
2404
- */
979
+
2405
980
  CustomKeyStoreId?: string;
2406
981
  }
2407
982
  export declare namespace GenerateRandomRequest {
2408
- /**
2409
- * @internal
2410
- */
983
+
2411
984
  const filterSensitiveLog: (obj: GenerateRandomRequest) => any;
2412
985
  }
2413
986
  export interface GenerateRandomResponse {
2414
- /**
2415
- * <p>The random byte string. When you use the HTTP API or the Amazon Web Services CLI, the value is Base64-encoded. Otherwise, it is not Base64-encoded.</p>
2416
- */
987
+
2417
988
  Plaintext?: Uint8Array;
2418
989
  }
2419
990
  export declare namespace GenerateRandomResponse {
2420
- /**
2421
- * @internal
2422
- */
991
+
2423
992
  const filterSensitiveLog: (obj: GenerateRandomResponse) => any;
2424
993
  }
2425
994
  export interface GetKeyPolicyRequest {
2426
- /**
2427
- * <p>Gets the key policy for the specified KMS key.</p>
2428
- * <p>Specify the key ID or key ARN of the KMS key.</p>
2429
- * <p>For example:</p>
2430
- * <ul>
2431
- * <li>
2432
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
2433
- * </p>
2434
- * </li>
2435
- * <li>
2436
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
2437
- * </p>
2438
- * </li>
2439
- * </ul>
2440
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
2441
- */
995
+
2442
996
  KeyId: string | undefined;
2443
- /**
2444
- * <p>Specifies the name of the key policy. The only valid name is <code>default</code>. To get
2445
- * the names of key policies, use <a>ListKeyPolicies</a>.</p>
2446
- */
997
+
2447
998
  PolicyName: string | undefined;
2448
999
  }
2449
1000
  export declare namespace GetKeyPolicyRequest {
2450
- /**
2451
- * @internal
2452
- */
1001
+
2453
1002
  const filterSensitiveLog: (obj: GetKeyPolicyRequest) => any;
2454
1003
  }
2455
1004
  export interface GetKeyPolicyResponse {
2456
- /**
2457
- * <p>A key policy document in JSON format.</p>
2458
- */
1005
+
2459
1006
  Policy?: string;
2460
1007
  }
2461
1008
  export declare namespace GetKeyPolicyResponse {
2462
- /**
2463
- * @internal
2464
- */
1009
+
2465
1010
  const filterSensitiveLog: (obj: GetKeyPolicyResponse) => any;
2466
1011
  }
2467
1012
  export interface GetKeyRotationStatusRequest {
2468
- /**
2469
- * <p>Gets the rotation status for the specified KMS key.</p>
2470
- *
2471
- * <p>Specify the key ID or key ARN of the KMS key. To specify a KMS key in a
2472
- * different Amazon Web Services account, you must use the key ARN.</p>
2473
- * <p>For example:</p>
2474
- * <ul>
2475
- * <li>
2476
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
2477
- * </p>
2478
- * </li>
2479
- * <li>
2480
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
2481
- * </p>
2482
- * </li>
2483
- * </ul>
2484
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
2485
- */
1013
+
2486
1014
  KeyId: string | undefined;
2487
1015
  }
2488
1016
  export declare namespace GetKeyRotationStatusRequest {
2489
- /**
2490
- * @internal
2491
- */
1017
+
2492
1018
  const filterSensitiveLog: (obj: GetKeyRotationStatusRequest) => any;
2493
1019
  }
2494
1020
  export interface GetKeyRotationStatusResponse {
2495
- /**
2496
- * <p>A Boolean value that specifies whether key rotation is enabled.</p>
2497
- */
1021
+
2498
1022
  KeyRotationEnabled?: boolean;
2499
1023
  }
2500
1024
  export declare namespace GetKeyRotationStatusResponse {
2501
- /**
2502
- * @internal
2503
- */
1025
+
2504
1026
  const filterSensitiveLog: (obj: GetKeyRotationStatusResponse) => any;
2505
1027
  }
2506
1028
  export declare enum WrappingKeySpec {
2507
1029
  RSA_2048 = "RSA_2048"
2508
1030
  }
2509
1031
  export interface GetParametersForImportRequest {
2510
- /**
2511
- * <p>The identifier of the symmetric KMS key into which you will import key material. The
2512
- * <code>Origin</code> of the KMS key must be <code>EXTERNAL</code>.</p>
2513
- *
2514
- * <p>Specify the key ID or key ARN of the KMS key.</p>
2515
- * <p>For example:</p>
2516
- * <ul>
2517
- * <li>
2518
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
2519
- * </p>
2520
- * </li>
2521
- * <li>
2522
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
2523
- * </p>
2524
- * </li>
2525
- * </ul>
2526
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
2527
- */
1032
+
2528
1033
  KeyId: string | undefined;
2529
- /**
2530
- * <p>The algorithm you will use to encrypt the key material before importing it with <a>ImportKeyMaterial</a>. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-encrypt-key-material.html">Encrypt the Key Material</a>
2531
- * in the <i>Key Management Service Developer Guide</i>.</p>
2532
- */
1034
+
2533
1035
  WrappingAlgorithm: AlgorithmSpec | string | undefined;
2534
- /**
2535
- * <p>The type of wrapping key (public key) to return in the response. Only 2048-bit RSA public
2536
- * keys are supported.</p>
2537
- */
1036
+
2538
1037
  WrappingKeySpec: WrappingKeySpec | string | undefined;
2539
1038
  }
2540
1039
  export declare namespace GetParametersForImportRequest {
2541
- /**
2542
- * @internal
2543
- */
1040
+
2544
1041
  const filterSensitiveLog: (obj: GetParametersForImportRequest) => any;
2545
1042
  }
2546
1043
  export interface GetParametersForImportResponse {
2547
- /**
2548
- * <p>The Amazon Resource Name (<a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id-key-ARN">key ARN</a>) of the KMS key to use in a subsequent <a>ImportKeyMaterial</a> request. This is the same KMS key specified in the <code>GetParametersForImport</code>
2549
- * request.</p>
2550
- */
1044
+
2551
1045
  KeyId?: string;
2552
- /**
2553
- * <p>The import token to send in a subsequent <a>ImportKeyMaterial</a>
2554
- * request.</p>
2555
- */
1046
+
2556
1047
  ImportToken?: Uint8Array;
2557
- /**
2558
- * <p>The public key to use to encrypt the key material before importing it with <a>ImportKeyMaterial</a>.</p>
2559
- */
1048
+
2560
1049
  PublicKey?: Uint8Array;
2561
- /**
2562
- * <p>The time at which the import token and public key are no longer valid. After this time,
2563
- * you cannot use them to make an <a>ImportKeyMaterial</a> request and you must send
2564
- * another <code>GetParametersForImport</code> request to get new ones.</p>
2565
- */
1050
+
2566
1051
  ParametersValidTo?: Date;
2567
1052
  }
2568
1053
  export declare namespace GetParametersForImportResponse {
2569
- /**
2570
- * @internal
2571
- */
1054
+
2572
1055
  const filterSensitiveLog: (obj: GetParametersForImportResponse) => any;
2573
1056
  }
2574
1057
  export interface GetPublicKeyRequest {
2575
- /**
2576
- * <p>Identifies the asymmetric KMS key that includes the public key.</p>
2577
- *
2578
- * <p>To specify a KMS key, use its key ID, key ARN, alias name, or alias ARN. When using an alias name, prefix it with <code>"alias/"</code>. To specify a KMS key in a different Amazon Web Services account, you must use the key ARN or alias ARN.</p>
2579
- * <p>For example:</p>
2580
- * <ul>
2581
- * <li>
2582
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
2583
- * </p>
2584
- * </li>
2585
- * <li>
2586
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
2587
- * </p>
2588
- * </li>
2589
- * <li>
2590
- * <p>Alias name: <code>alias/ExampleAlias</code>
2591
- * </p>
2592
- * </li>
2593
- * <li>
2594
- * <p>Alias ARN: <code>arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias</code>
2595
- * </p>
2596
- * </li>
2597
- * </ul>
2598
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>. To get the alias name and alias ARN, use <a>ListAliases</a>.</p>
2599
- */
1058
+
2600
1059
  KeyId: string | undefined;
2601
- /**
2602
- * <p>A list of grant tokens.</p>
2603
- * <p>Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved <i>eventual consistency</i>. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#grant_token">Grant token</a> and <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grant-manage.html#using-grant-token">Using a grant token</a> in the
2604
- * <i>Key Management Service Developer Guide</i>.</p>
2605
- */
1060
+
2606
1061
  GrantTokens?: string[];
2607
1062
  }
2608
1063
  export declare namespace GetPublicKeyRequest {
2609
- /**
2610
- * @internal
2611
- */
1064
+
2612
1065
  const filterSensitiveLog: (obj: GetPublicKeyRequest) => any;
2613
1066
  }
2614
1067
  export interface GetPublicKeyResponse {
2615
- /**
2616
- * <p>The Amazon Resource Name (<a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id-key-ARN">key ARN</a>) of the asymmetric KMS key from which the public key was
2617
- * downloaded.</p>
2618
- */
1068
+
2619
1069
  KeyId?: string;
2620
- /**
2621
- * <p>The exported public key. </p>
2622
- * <p>The value is a DER-encoded X.509 public key, also known as
2623
- * <code>SubjectPublicKeyInfo</code> (SPKI), as defined in <a href="https://tools.ietf.org/html/rfc5280">RFC 5280</a>. When you use the HTTP API or the Amazon Web Services CLI, the value is Base64-encoded. Otherwise, it is not Base64-encoded.</p>
2624
- * <p></p>
2625
- */
1070
+
2626
1071
  PublicKey?: Uint8Array;
2627
- /**
2628
- * @deprecated
2629
- *
2630
- * <p>Instead, use the <code>KeySpec</code> field in the <code>GetPublicKey</code>
2631
- * response.</p>
2632
- * <p>The <code>KeySpec</code> and <code>CustomerMasterKeySpec</code> fields have the same
2633
- * value. We recommend that you use the <code>KeySpec</code> field in your code. However, to
2634
- * avoid breaking changes, KMS will support both fields.</p>
2635
- */
1072
+
2636
1073
  CustomerMasterKeySpec?: CustomerMasterKeySpec | string;
2637
- /**
2638
- * <p>The type of the of the public key that was downloaded.</p>
2639
- */
1074
+
2640
1075
  KeySpec?: KeySpec | string;
2641
- /**
2642
- * <p>The permitted use of the public key. Valid values are <code>ENCRYPT_DECRYPT</code> or
2643
- * <code>SIGN_VERIFY</code>. </p>
2644
- * <p>This information is critical. If a public key with <code>SIGN_VERIFY</code> key usage
2645
- * encrypts data outside of KMS, the ciphertext cannot be decrypted. </p>
2646
- */
1076
+
2647
1077
  KeyUsage?: KeyUsageType | string;
2648
- /**
2649
- * <p>The encryption algorithms that KMS supports for this key. </p>
2650
- * <p>This information is critical. If a public key encrypts data outside of KMS by using an
2651
- * unsupported encryption algorithm, the ciphertext cannot be decrypted. </p>
2652
- * <p>This field appears in the response only when the <code>KeyUsage</code> of the public key
2653
- * is <code>ENCRYPT_DECRYPT</code>.</p>
2654
- */
1078
+
2655
1079
  EncryptionAlgorithms?: (EncryptionAlgorithmSpec | string)[];
2656
- /**
2657
- * <p>The signing algorithms that KMS supports for this key.</p>
2658
- * <p>This field appears in the response only when the <code>KeyUsage</code> of the public key
2659
- * is <code>SIGN_VERIFY</code>.</p>
2660
- */
1080
+
2661
1081
  SigningAlgorithms?: (SigningAlgorithmSpec | string)[];
2662
1082
  }
2663
1083
  export declare namespace GetPublicKeyResponse {
2664
- /**
2665
- * @internal
2666
- */
1084
+
2667
1085
  const filterSensitiveLog: (obj: GetPublicKeyResponse) => any;
2668
1086
  }
2669
- /**
2670
- * <p>Contains information about a grant.</p>
2671
- */
1087
+
2672
1088
  export interface GrantListEntry {
2673
- /**
2674
- * <p>The unique identifier for the KMS key to which the grant applies.</p>
2675
- */
1089
+
2676
1090
  KeyId?: string;
2677
- /**
2678
- * <p>The unique identifier for the grant.</p>
2679
- */
1091
+
2680
1092
  GrantId?: string;
2681
- /**
2682
- * <p>The friendly name that identifies the grant. If a name was provided in the <a>CreateGrant</a> request, that name is returned. Otherwise this value is null.</p>
2683
- */
1093
+
2684
1094
  Name?: string;
2685
- /**
2686
- * <p>The date and time when the grant was created.</p>
2687
- */
1095
+
2688
1096
  CreationDate?: Date;
2689
- /**
2690
- * <p>The identity that gets the permissions in the grant.</p>
2691
- * <p>The <code>GranteePrincipal</code> field in the <code>ListGrants</code> response usually contains the
2692
- * user or role designated as the grantee principal in the grant. However, when the grantee
2693
- * principal in the grant is an Amazon Web Services service, the <code>GranteePrincipal</code> field contains
2694
- * the <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#principal-services">service
2695
- * principal</a>, which might represent several different grantee principals.</p>
2696
- */
1097
+
2697
1098
  GranteePrincipal?: string;
2698
- /**
2699
- * <p>The principal that can retire the grant.</p>
2700
- */
1099
+
2701
1100
  RetiringPrincipal?: string;
2702
- /**
2703
- * <p>The Amazon Web Services account under which the grant was issued.</p>
2704
- */
1101
+
2705
1102
  IssuingAccount?: string;
2706
- /**
2707
- * <p>The list of operations permitted by the grant.</p>
2708
- */
1103
+
2709
1104
  Operations?: (GrantOperation | string)[];
2710
- /**
2711
- * <p>A list of key-value pairs that must be present in the encryption context of certain
2712
- * subsequent operations that the grant allows.</p>
2713
- */
1105
+
2714
1106
  Constraints?: GrantConstraints;
2715
1107
  }
2716
1108
  export declare namespace GrantListEntry {
2717
- /**
2718
- * @internal
2719
- */
1109
+
2720
1110
  const filterSensitiveLog: (obj: GrantListEntry) => any;
2721
1111
  }
2722
1112
  export interface ImportKeyMaterialRequest {
2723
- /**
2724
- * <p>The identifier of the symmetric KMS key that receives the imported key material. The KMS
2725
- * key's <code>Origin</code> must be <code>EXTERNAL</code>. This must be the same KMS key
2726
- * specified in the <code>KeyID</code> parameter of the corresponding <a>GetParametersForImport</a> request.</p>
2727
- * <p>Specify the key ID or key ARN of the KMS key.</p>
2728
- * <p>For example:</p>
2729
- * <ul>
2730
- * <li>
2731
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
2732
- * </p>
2733
- * </li>
2734
- * <li>
2735
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
2736
- * </p>
2737
- * </li>
2738
- * </ul>
2739
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
2740
- */
1113
+
2741
1114
  KeyId: string | undefined;
2742
- /**
2743
- * <p>The import token that you received in the response to a previous <a>GetParametersForImport</a> request. It must be from the same response that contained
2744
- * the public key that you used to encrypt the key material.</p>
2745
- */
1115
+
2746
1116
  ImportToken: Uint8Array | undefined;
2747
- /**
2748
- * <p>The encrypted key material to import. The key material must be encrypted with the public
2749
- * wrapping key that <a>GetParametersForImport</a> returned, using the wrapping
2750
- * algorithm that you specified in the same <code>GetParametersForImport</code> request.</p>
2751
- */
1117
+
2752
1118
  EncryptedKeyMaterial: Uint8Array | undefined;
2753
- /**
2754
- * <p>The time at which the imported key material expires. When the key material expires, KMS
2755
- * deletes the key material and the KMS key becomes unusable. You must omit this parameter when
2756
- * the <code>ExpirationModel</code> parameter is set to
2757
- * <code>KEY_MATERIAL_DOES_NOT_EXPIRE</code>. Otherwise it is required.</p>
2758
- */
1119
+
2759
1120
  ValidTo?: Date;
2760
- /**
2761
- * <p>Specifies whether the key material expires. The default is
2762
- * <code>KEY_MATERIAL_EXPIRES</code>, in which case you must include the <code>ValidTo</code>
2763
- * parameter. When this parameter is set to <code>KEY_MATERIAL_DOES_NOT_EXPIRE</code>, you must
2764
- * omit the <code>ValidTo</code> parameter.</p>
2765
- */
1121
+
2766
1122
  ExpirationModel?: ExpirationModelType | string;
2767
1123
  }
2768
1124
  export declare namespace ImportKeyMaterialRequest {
2769
- /**
2770
- * @internal
2771
- */
1125
+
2772
1126
  const filterSensitiveLog: (obj: ImportKeyMaterialRequest) => any;
2773
1127
  }
2774
1128
  export interface ImportKeyMaterialResponse {
2775
1129
  }
2776
1130
  export declare namespace ImportKeyMaterialResponse {
2777
- /**
2778
- * @internal
2779
- */
1131
+
2780
1132
  const filterSensitiveLog: (obj: ImportKeyMaterialResponse) => any;
2781
1133
  }
2782
- /**
2783
- * <p>The request was rejected because the key material in the request is, expired, invalid, or
2784
- * is not the same key material that was previously imported into this KMS key.</p>
2785
- */
1134
+
2786
1135
  export interface IncorrectKeyMaterialException extends __SmithyException, $MetadataBearer {
2787
1136
  name: "IncorrectKeyMaterialException";
2788
1137
  $fault: "client";
2789
1138
  message?: string;
2790
1139
  }
2791
1140
  export declare namespace IncorrectKeyMaterialException {
2792
- /**
2793
- * @internal
2794
- */
1141
+
2795
1142
  const filterSensitiveLog: (obj: IncorrectKeyMaterialException) => any;
2796
1143
  }
2797
- /**
2798
- * <p>The request was rejected because the provided import token is invalid or is associated
2799
- * with a different KMS key.</p>
2800
- */
1144
+
2801
1145
  export interface InvalidImportTokenException extends __SmithyException, $MetadataBearer {
2802
1146
  name: "InvalidImportTokenException";
2803
1147
  $fault: "client";
2804
1148
  message?: string;
2805
1149
  }
2806
1150
  export declare namespace InvalidImportTokenException {
2807
- /**
2808
- * @internal
2809
- */
1151
+
2810
1152
  const filterSensitiveLog: (obj: InvalidImportTokenException) => any;
2811
1153
  }
2812
- /**
2813
- * <p>The request was rejected because the specified <code>GrantId</code> is not valid.</p>
2814
- */
1154
+
2815
1155
  export interface InvalidGrantIdException extends __SmithyException, $MetadataBearer {
2816
1156
  name: "InvalidGrantIdException";
2817
1157
  $fault: "client";
2818
1158
  message?: string;
2819
1159
  }
2820
1160
  export declare namespace InvalidGrantIdException {
2821
- /**
2822
- * @internal
2823
- */
1161
+
2824
1162
  const filterSensitiveLog: (obj: InvalidGrantIdException) => any;
2825
1163
  }
2826
- /**
2827
- * <p>Contains information about each entry in the key list.</p>
2828
- */
1164
+
2829
1165
  export interface KeyListEntry {
2830
- /**
2831
- * <p>Unique identifier of the key.</p>
2832
- */
1166
+
2833
1167
  KeyId?: string;
2834
- /**
2835
- * <p>ARN of the key.</p>
2836
- */
1168
+
2837
1169
  KeyArn?: string;
2838
1170
  }
2839
1171
  export declare namespace KeyListEntry {
2840
- /**
2841
- * @internal
2842
- */
1172
+
2843
1173
  const filterSensitiveLog: (obj: KeyListEntry) => any;
2844
1174
  }
2845
- /**
2846
- * <p>The request was rejected because the signature verification failed. Signature verification
2847
- * fails when it cannot confirm that signature was produced by signing the specified message with
2848
- * the specified KMS key and signing algorithm.</p>
2849
- */
1175
+
2850
1176
  export interface KMSInvalidSignatureException extends __SmithyException, $MetadataBearer {
2851
1177
  name: "KMSInvalidSignatureException";
2852
1178
  $fault: "client";
2853
1179
  message?: string;
2854
1180
  }
2855
1181
  export declare namespace KMSInvalidSignatureException {
2856
- /**
2857
- * @internal
2858
- */
1182
+
2859
1183
  const filterSensitiveLog: (obj: KMSInvalidSignatureException) => any;
2860
1184
  }
2861
1185
  export interface ListAliasesRequest {
2862
- /**
2863
- * <p>Lists only aliases that are associated with the specified KMS key. Enter a KMS key in your
2864
- * Amazon Web Services account. </p>
2865
- * <p>This parameter is optional. If you omit it, <code>ListAliases</code> returns all aliases
2866
- * in the account and Region.</p>
2867
- * <p>Specify the key ID or key ARN of the KMS key.</p>
2868
- * <p>For example:</p>
2869
- * <ul>
2870
- * <li>
2871
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
2872
- * </p>
2873
- * </li>
2874
- * <li>
2875
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
2876
- * </p>
2877
- * </li>
2878
- * </ul>
2879
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
2880
- */
1186
+
2881
1187
  KeyId?: string;
2882
- /**
2883
- * <p>Use this parameter to specify the maximum number of items to return. When this
2884
- * value is present, KMS does not return more than the specified number of items, but it might
2885
- * return fewer.</p>
2886
- * <p>This value is optional. If you include a value, it must be between 1
2887
- * and 100, inclusive. If you do not include a value, it defaults to 50.</p>
2888
- */
1188
+
2889
1189
  Limit?: number;
2890
- /**
2891
- * <p>Use this parameter in a subsequent request after you receive a response with
2892
- * truncated results. Set it to the value of <code>NextMarker</code> from the truncated response
2893
- * you just received.</p>
2894
- */
1190
+
2895
1191
  Marker?: string;
2896
1192
  }
2897
1193
  export declare namespace ListAliasesRequest {
2898
- /**
2899
- * @internal
2900
- */
1194
+
2901
1195
  const filterSensitiveLog: (obj: ListAliasesRequest) => any;
2902
1196
  }
2903
1197
  export interface ListAliasesResponse {
2904
- /**
2905
- * <p>A list of aliases.</p>
2906
- */
1198
+
2907
1199
  Aliases?: AliasListEntry[];
2908
- /**
2909
- * <p>When <code>Truncated</code> is true, this element is present and contains the
2910
- * value to use for the <code>Marker</code> parameter in a subsequent request.</p>
2911
- */
1200
+
2912
1201
  NextMarker?: string;
2913
- /**
2914
- * <p>A flag that indicates whether there are more items in the list. When this
2915
- * value is true, the list in this response is truncated. To get more items, pass the value of
2916
- * the <code>NextMarker</code> element in thisresponse to the <code>Marker</code> parameter in a
2917
- * subsequent request.</p>
2918
- */
1202
+
2919
1203
  Truncated?: boolean;
2920
1204
  }
2921
1205
  export declare namespace ListAliasesResponse {
2922
- /**
2923
- * @internal
2924
- */
1206
+
2925
1207
  const filterSensitiveLog: (obj: ListAliasesResponse) => any;
2926
1208
  }
2927
1209
  export interface ListGrantsRequest {
2928
- /**
2929
- * <p>Use this parameter to specify the maximum number of items to return. When this
2930
- * value is present, KMS does not return more than the specified number of items, but it might
2931
- * return fewer.</p>
2932
- * <p>This value is optional. If you include a value, it must be between 1
2933
- * and 100, inclusive. If you do not include a value, it defaults to 50.</p>
2934
- */
1210
+
2935
1211
  Limit?: number;
2936
- /**
2937
- * <p>Use this parameter in a subsequent request after you receive a response with
2938
- * truncated results. Set it to the value of <code>NextMarker</code> from the truncated response
2939
- * you just received.</p>
2940
- */
1212
+
2941
1213
  Marker?: string;
2942
- /**
2943
- * <p>Returns only grants for the specified KMS key. This parameter is required.</p>
2944
- *
2945
- * <p>Specify the key ID or key ARN of the KMS key. To specify a KMS key in a
2946
- * different Amazon Web Services account, you must use the key ARN.</p>
2947
- * <p>For example:</p>
2948
- * <ul>
2949
- * <li>
2950
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
2951
- * </p>
2952
- * </li>
2953
- * <li>
2954
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
2955
- * </p>
2956
- * </li>
2957
- * </ul>
2958
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
2959
- */
1214
+
2960
1215
  KeyId: string | undefined;
2961
- /**
2962
- * <p>Returns only the grant with the specified grant ID. The grant ID uniquely identifies the
2963
- * grant. </p>
2964
- */
1216
+
2965
1217
  GrantId?: string;
2966
- /**
2967
- * <p>Returns only grants where the specified principal is the grantee principal for the
2968
- * grant.</p>
2969
- */
1218
+
2970
1219
  GranteePrincipal?: string;
2971
1220
  }
2972
1221
  export declare namespace ListGrantsRequest {
2973
- /**
2974
- * @internal
2975
- */
1222
+
2976
1223
  const filterSensitiveLog: (obj: ListGrantsRequest) => any;
2977
1224
  }
2978
1225
  export interface ListGrantsResponse {
2979
- /**
2980
- * <p>A list of grants.</p>
2981
- */
1226
+
2982
1227
  Grants?: GrantListEntry[];
2983
- /**
2984
- * <p>When <code>Truncated</code> is true, this element is present and contains the
2985
- * value to use for the <code>Marker</code> parameter in a subsequent request.</p>
2986
- */
1228
+
2987
1229
  NextMarker?: string;
2988
- /**
2989
- * <p>A flag that indicates whether there are more items in the list. When this
2990
- * value is true, the list in this response is truncated. To get more items, pass the value of
2991
- * the <code>NextMarker</code> element in thisresponse to the <code>Marker</code> parameter in a
2992
- * subsequent request.</p>
2993
- */
1230
+
2994
1231
  Truncated?: boolean;
2995
1232
  }
2996
1233
  export declare namespace ListGrantsResponse {
2997
- /**
2998
- * @internal
2999
- */
1234
+
3000
1235
  const filterSensitiveLog: (obj: ListGrantsResponse) => any;
3001
1236
  }
3002
1237
  export interface ListKeyPoliciesRequest {
3003
- /**
3004
- * <p>Gets the names of key policies for the specified KMS key.</p>
3005
- * <p>Specify the key ID or key ARN of the KMS key.</p>
3006
- * <p>For example:</p>
3007
- * <ul>
3008
- * <li>
3009
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
3010
- * </p>
3011
- * </li>
3012
- * <li>
3013
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
3014
- * </p>
3015
- * </li>
3016
- * </ul>
3017
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
3018
- */
1238
+
3019
1239
  KeyId: string | undefined;
3020
- /**
3021
- * <p>Use this parameter to specify the maximum number of items to return. When this
3022
- * value is present, KMS does not return more than the specified number of items, but it might
3023
- * return fewer.</p>
3024
- * <p>This value is optional. If you include a value, it must be between
3025
- * 1 and 1000, inclusive. If you do not include a value, it defaults to 100.</p>
3026
- * <p>Only one policy can be attached to a key.</p>
3027
- */
1240
+
3028
1241
  Limit?: number;
3029
- /**
3030
- * <p>Use this parameter in a subsequent request after you receive a response with
3031
- * truncated results. Set it to the value of <code>NextMarker</code> from the truncated response
3032
- * you just received.</p>
3033
- */
1242
+
3034
1243
  Marker?: string;
3035
1244
  }
3036
1245
  export declare namespace ListKeyPoliciesRequest {
3037
- /**
3038
- * @internal
3039
- */
1246
+
3040
1247
  const filterSensitiveLog: (obj: ListKeyPoliciesRequest) => any;
3041
1248
  }
3042
1249
  export interface ListKeyPoliciesResponse {
3043
- /**
3044
- * <p>A list of key policy names. The only valid value is <code>default</code>.</p>
3045
- */
1250
+
3046
1251
  PolicyNames?: string[];
3047
- /**
3048
- * <p>When <code>Truncated</code> is true, this element is present and contains the
3049
- * value to use for the <code>Marker</code> parameter in a subsequent request.</p>
3050
- */
1252
+
3051
1253
  NextMarker?: string;
3052
- /**
3053
- * <p>A flag that indicates whether there are more items in the list. When this
3054
- * value is true, the list in this response is truncated. To get more items, pass the value of
3055
- * the <code>NextMarker</code> element in thisresponse to the <code>Marker</code> parameter in a
3056
- * subsequent request.</p>
3057
- */
1254
+
3058
1255
  Truncated?: boolean;
3059
1256
  }
3060
1257
  export declare namespace ListKeyPoliciesResponse {
3061
- /**
3062
- * @internal
3063
- */
1258
+
3064
1259
  const filterSensitiveLog: (obj: ListKeyPoliciesResponse) => any;
3065
1260
  }
3066
1261
  export interface ListKeysRequest {
3067
- /**
3068
- * <p>Use this parameter to specify the maximum number of items to return. When this
3069
- * value is present, KMS does not return more than the specified number of items, but it might
3070
- * return fewer.</p>
3071
- * <p>This value is optional. If you include a value, it must be between
3072
- * 1 and 1000, inclusive. If you do not include a value, it defaults to 100.</p>
3073
- */
1262
+
3074
1263
  Limit?: number;
3075
- /**
3076
- * <p>Use this parameter in a subsequent request after you receive a response with
3077
- * truncated results. Set it to the value of <code>NextMarker</code> from the truncated response
3078
- * you just received.</p>
3079
- */
1264
+
3080
1265
  Marker?: string;
3081
1266
  }
3082
1267
  export declare namespace ListKeysRequest {
3083
- /**
3084
- * @internal
3085
- */
1268
+
3086
1269
  const filterSensitiveLog: (obj: ListKeysRequest) => any;
3087
1270
  }
3088
1271
  export interface ListKeysResponse {
3089
- /**
3090
- * <p>A list of KMS keys.</p>
3091
- */
1272
+
3092
1273
  Keys?: KeyListEntry[];
3093
- /**
3094
- * <p>When <code>Truncated</code> is true, this element is present and contains the
3095
- * value to use for the <code>Marker</code> parameter in a subsequent request.</p>
3096
- */
1274
+
3097
1275
  NextMarker?: string;
3098
- /**
3099
- * <p>A flag that indicates whether there are more items in the list. When this
3100
- * value is true, the list in this response is truncated. To get more items, pass the value of
3101
- * the <code>NextMarker</code> element in thisresponse to the <code>Marker</code> parameter in a
3102
- * subsequent request.</p>
3103
- */
1276
+
3104
1277
  Truncated?: boolean;
3105
1278
  }
3106
1279
  export declare namespace ListKeysResponse {
3107
- /**
3108
- * @internal
3109
- */
1280
+
3110
1281
  const filterSensitiveLog: (obj: ListKeysResponse) => any;
3111
1282
  }
3112
1283
  export interface ListResourceTagsRequest {
3113
- /**
3114
- * <p>Gets tags on the specified KMS key.</p>
3115
- * <p>Specify the key ID or key ARN of the KMS key.</p>
3116
- * <p>For example:</p>
3117
- * <ul>
3118
- * <li>
3119
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
3120
- * </p>
3121
- * </li>
3122
- * <li>
3123
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
3124
- * </p>
3125
- * </li>
3126
- * </ul>
3127
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
3128
- */
1284
+
3129
1285
  KeyId: string | undefined;
3130
- /**
3131
- * <p>Use this parameter to specify the maximum number of items to return. When this
3132
- * value is present, KMS does not return more than the specified number of items, but it might
3133
- * return fewer.</p>
3134
- * <p>This value is optional. If you include a value, it must be between 1 and 50, inclusive. If
3135
- * you do not include a value, it defaults to 50.</p>
3136
- */
1286
+
3137
1287
  Limit?: number;
3138
- /**
3139
- * <p>Use this parameter in a subsequent request after you receive a response with
3140
- * truncated results. Set it to the value of <code>NextMarker</code> from the truncated response
3141
- * you just received.</p>
3142
- * <p>Do not attempt to construct this value. Use only the value of <code>NextMarker</code> from
3143
- * the truncated response you just received.</p>
3144
- */
1288
+
3145
1289
  Marker?: string;
3146
1290
  }
3147
1291
  export declare namespace ListResourceTagsRequest {
3148
- /**
3149
- * @internal
3150
- */
1292
+
3151
1293
  const filterSensitiveLog: (obj: ListResourceTagsRequest) => any;
3152
1294
  }
3153
1295
  export interface ListResourceTagsResponse {
3154
- /**
3155
- * <p>A list of tags. Each tag consists of a tag key and a tag value.</p>
3156
- * <note>
3157
- * <p>Tagging or untagging a KMS key can allow or deny permission to the KMS key. For details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/abac.html">Using ABAC in KMS</a> in the <i>Key Management Service Developer Guide</i>.</p>
3158
- * </note>
3159
- */
1296
+
3160
1297
  Tags?: Tag[];
3161
- /**
3162
- * <p>When <code>Truncated</code> is true, this element is present and contains the
3163
- * value to use for the <code>Marker</code> parameter in a subsequent request.</p>
3164
- * <p>Do not assume or infer any information from this value.</p>
3165
- */
1298
+
3166
1299
  NextMarker?: string;
3167
- /**
3168
- * <p>A flag that indicates whether there are more items in the list. When this
3169
- * value is true, the list in this response is truncated. To get more items, pass the value of
3170
- * the <code>NextMarker</code> element in thisresponse to the <code>Marker</code> parameter in a
3171
- * subsequent request.</p>
3172
- */
1300
+
3173
1301
  Truncated?: boolean;
3174
1302
  }
3175
1303
  export declare namespace ListResourceTagsResponse {
3176
- /**
3177
- * @internal
3178
- */
1304
+
3179
1305
  const filterSensitiveLog: (obj: ListResourceTagsResponse) => any;
3180
1306
  }
3181
1307
  export interface ListRetirableGrantsRequest {
3182
- /**
3183
- * <p>Use this parameter to specify the maximum number of items to return. When this
3184
- * value is present, KMS does not return more than the specified number of items, but it might
3185
- * return fewer.</p>
3186
- * <p>This value is optional. If you include a value, it must be between 1
3187
- * and 100, inclusive. If you do not include a value, it defaults to 50.</p>
3188
- */
1308
+
3189
1309
  Limit?: number;
3190
- /**
3191
- * <p>Use this parameter in a subsequent request after you receive a response with
3192
- * truncated results. Set it to the value of <code>NextMarker</code> from the truncated response
3193
- * you just received.</p>
3194
- */
1310
+
3195
1311
  Marker?: string;
3196
- /**
3197
- * <p>The retiring principal for which to list grants. Enter a principal in your
3198
- * Amazon Web Services account.</p>
3199
- * <p>To specify the retiring principal, use the <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Name (ARN)</a> of an
3200
- * Amazon Web Services principal. Valid Amazon Web Services principals include Amazon Web Services accounts (root), IAM users, federated
3201
- * users, and assumed role users. For examples of the ARN syntax for specifying a principal, see
3202
- * <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-iam">Amazon Web Services Identity and Access Management (IAM)</a> in the Example ARNs section of the
3203
- * <i>Amazon Web Services General Reference</i>.</p>
3204
- */
1312
+
3205
1313
  RetiringPrincipal: string | undefined;
3206
1314
  }
3207
1315
  export declare namespace ListRetirableGrantsRequest {
3208
- /**
3209
- * @internal
3210
- */
1316
+
3211
1317
  const filterSensitiveLog: (obj: ListRetirableGrantsRequest) => any;
3212
1318
  }
3213
1319
  export declare enum MessageType {
@@ -3215,886 +1321,262 @@ export declare enum MessageType {
3215
1321
  RAW = "RAW"
3216
1322
  }
3217
1323
  export interface PutKeyPolicyRequest {
3218
- /**
3219
- * <p>Sets the key policy on the specified KMS key.</p>
3220
- * <p>Specify the key ID or key ARN of the KMS key.</p>
3221
- * <p>For example:</p>
3222
- * <ul>
3223
- * <li>
3224
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
3225
- * </p>
3226
- * </li>
3227
- * <li>
3228
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
3229
- * </p>
3230
- * </li>
3231
- * </ul>
3232
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
3233
- */
1324
+
3234
1325
  KeyId: string | undefined;
3235
- /**
3236
- * <p>The name of the key policy. The only valid value is <code>default</code>.</p>
3237
- */
1326
+
3238
1327
  PolicyName: string | undefined;
3239
- /**
3240
- * <p>The key policy to attach to the KMS key.</p>
3241
- * <p>The key policy must meet the following criteria:</p>
3242
- * <ul>
3243
- * <li>
3244
- * <p>If you don't set <code>BypassPolicyLockoutSafetyCheck</code> to true, the key policy
3245
- * must allow the principal that is making the <code>PutKeyPolicy</code> request to make a
3246
- * subsequent <code>PutKeyPolicy</code> request on the KMS key. This reduces the risk that
3247
- * the KMS key becomes unmanageable. For more information, refer to the scenario in the
3248
- * <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-root-enable-iam">Default Key Policy</a> section of the <i>Key Management Service Developer Guide</i>.</p>
3249
- * </li>
3250
- * <li>
3251
- * <p>Each statement in the key policy must contain one or more principals. The principals
3252
- * in the key policy must exist and be visible to KMS. When you create a new Amazon Web Services
3253
- * principal (for example, an IAM user or role), you might need to enforce a delay before
3254
- * including the new principal in a key policy because the new principal might not be
3255
- * immediately visible to KMS. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_general.html#troubleshoot_general_eventual-consistency">Changes that I make are not always immediately visible</a> in the <i>Amazon Web Services
3256
- * Identity and Access Management User Guide</i>.</p>
3257
- * </li>
3258
- * </ul>
3259
- * <p>The key policy cannot exceed 32 kilobytes (32768 bytes). For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/resource-limits.html">Resource Quotas</a> in the
3260
- * <i>Key Management Service Developer Guide</i>.</p>
3261
- */
1328
+
3262
1329
  Policy: string | undefined;
3263
- /**
3264
- * <p>A flag to indicate whether to bypass the key policy lockout safety check.</p>
3265
- * <important>
3266
- * <p>Setting this value to true increases the risk that the KMS key becomes unmanageable. Do
3267
- * not set this value to true indiscriminately.</p>
3268
- * <p>For more information, refer to the scenario in the <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-root-enable-iam">Default Key Policy</a> section in the <i>Key Management Service Developer Guide</i>.</p>
3269
- * </important>
3270
- * <p>Use this parameter only when you intend to prevent the principal that is making the
3271
- * request from making a subsequent <code>PutKeyPolicy</code> request on the KMS key.</p>
3272
- * <p>The default value is false.</p>
3273
- */
1330
+
3274
1331
  BypassPolicyLockoutSafetyCheck?: boolean;
3275
1332
  }
3276
1333
  export declare namespace PutKeyPolicyRequest {
3277
- /**
3278
- * @internal
3279
- */
1334
+
3280
1335
  const filterSensitiveLog: (obj: PutKeyPolicyRequest) => any;
3281
1336
  }
3282
1337
  export interface ReEncryptRequest {
3283
- /**
3284
- * <p>Ciphertext of the data to reencrypt.</p>
3285
- */
1338
+
3286
1339
  CiphertextBlob: Uint8Array | undefined;
3287
- /**
3288
- * <p>Specifies the encryption context to use to decrypt the ciphertext. Enter the same
3289
- * encryption context that was used to encrypt the ciphertext.</p>
3290
- * <p>An <i>encryption context</i> is a collection of non-secret key-value pairs that represents additional authenticated data. When you use an encryption context to encrypt data, you must specify the same (an exact case-sensitive match) encryption context to decrypt the data. An encryption context is optional when encrypting with a symmetric KMS key, but it is highly recommended.</p>
3291
- * <p>For more information, see
3292
- * <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context">Encryption
3293
- * Context</a> in the <i>Key Management Service Developer Guide</i>.</p>
3294
- */
1340
+
3295
1341
  SourceEncryptionContext?: {
3296
1342
  [key: string]: string;
3297
1343
  };
3298
- /**
3299
- * <p>Specifies the KMS key that KMS will use to decrypt the ciphertext before it is
3300
- * re-encrypted. Enter a key ID of the KMS key that was used to encrypt the ciphertext.</p>
3301
- * <p>This parameter is required only when the ciphertext was encrypted under an asymmetric KMS
3302
- * key. If you used a symmetric KMS key, KMS can get the KMS key from metadata that it adds to
3303
- * the symmetric ciphertext blob. However, it is always recommended as a best practice. This
3304
- * practice ensures that you use the KMS key that you intend.</p>
3305
- *
3306
- * <p>To specify a KMS key, use its key ID, key ARN, alias name, or alias ARN. When using an alias name, prefix it with <code>"alias/"</code>. To specify a KMS key in a different Amazon Web Services account, you must use the key ARN or alias ARN.</p>
3307
- * <p>For example:</p>
3308
- * <ul>
3309
- * <li>
3310
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
3311
- * </p>
3312
- * </li>
3313
- * <li>
3314
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
3315
- * </p>
3316
- * </li>
3317
- * <li>
3318
- * <p>Alias name: <code>alias/ExampleAlias</code>
3319
- * </p>
3320
- * </li>
3321
- * <li>
3322
- * <p>Alias ARN: <code>arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias</code>
3323
- * </p>
3324
- * </li>
3325
- * </ul>
3326
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>. To get the alias name and alias ARN, use <a>ListAliases</a>.</p>
3327
- */
1344
+
3328
1345
  SourceKeyId?: string;
3329
- /**
3330
- * <p>A unique identifier for the KMS key that is used to reencrypt the data. Specify a
3331
- * symmetric or asymmetric KMS key with a <code>KeyUsage</code> value of
3332
- * <code>ENCRYPT_DECRYPT</code>. To find the <code>KeyUsage</code> value of a KMS key, use the
3333
- * <a>DescribeKey</a> operation.</p>
3334
- * <p>To specify a KMS key, use its key ID, key ARN, alias name, or alias ARN. When using an alias name, prefix it with <code>"alias/"</code>. To specify a KMS key in a different Amazon Web Services account, you must use the key ARN or alias ARN.</p>
3335
- * <p>For example:</p>
3336
- * <ul>
3337
- * <li>
3338
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
3339
- * </p>
3340
- * </li>
3341
- * <li>
3342
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
3343
- * </p>
3344
- * </li>
3345
- * <li>
3346
- * <p>Alias name: <code>alias/ExampleAlias</code>
3347
- * </p>
3348
- * </li>
3349
- * <li>
3350
- * <p>Alias ARN: <code>arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias</code>
3351
- * </p>
3352
- * </li>
3353
- * </ul>
3354
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>. To get the alias name and alias ARN, use <a>ListAliases</a>.</p>
3355
- */
1346
+
3356
1347
  DestinationKeyId: string | undefined;
3357
- /**
3358
- * <p>Specifies that encryption context to use when the reencrypting the data.</p>
3359
- * <p>A destination encryption context is valid only when the destination KMS key is a symmetric
3360
- * KMS key. The standard ciphertext format for asymmetric KMS keys does not include fields for
3361
- * metadata.</p>
3362
- * <p>An <i>encryption context</i> is a collection of non-secret key-value pairs that represents additional authenticated data. When you use an encryption context to encrypt data, you must specify the same (an exact case-sensitive match) encryption context to decrypt the data. An encryption context is optional when encrypting with a symmetric KMS key, but it is highly recommended.</p>
3363
- * <p>For more information, see
3364
- * <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context">Encryption
3365
- * Context</a> in the <i>Key Management Service Developer Guide</i>.</p>
3366
- */
1348
+
3367
1349
  DestinationEncryptionContext?: {
3368
1350
  [key: string]: string;
3369
1351
  };
3370
- /**
3371
- * <p>Specifies the encryption algorithm that KMS will use to decrypt the ciphertext before it
3372
- * is reencrypted. The default value, <code>SYMMETRIC_DEFAULT</code>, represents the algorithm
3373
- * used for symmetric KMS keys.</p>
3374
- * <p>Specify the same algorithm that was used to encrypt the ciphertext. If you specify a
3375
- * different algorithm, the decrypt attempt fails.</p>
3376
- * <p>This parameter is required only when the ciphertext was encrypted under an asymmetric KMS
3377
- * key.</p>
3378
- */
1352
+
3379
1353
  SourceEncryptionAlgorithm?: EncryptionAlgorithmSpec | string;
3380
- /**
3381
- * <p>Specifies the encryption algorithm that KMS will use to reecrypt the data after it has
3382
- * decrypted it. The default value, <code>SYMMETRIC_DEFAULT</code>, represents the encryption
3383
- * algorithm used for symmetric KMS keys.</p>
3384
- * <p>This parameter is required only when the destination KMS key is an asymmetric KMS
3385
- * key.</p>
3386
- */
1354
+
3387
1355
  DestinationEncryptionAlgorithm?: EncryptionAlgorithmSpec | string;
3388
- /**
3389
- * <p>A list of grant tokens.</p>
3390
- * <p>Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved <i>eventual consistency</i>. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#grant_token">Grant token</a> and <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grant-manage.html#using-grant-token">Using a grant token</a> in the
3391
- * <i>Key Management Service Developer Guide</i>.</p>
3392
- */
1356
+
3393
1357
  GrantTokens?: string[];
3394
1358
  }
3395
1359
  export declare namespace ReEncryptRequest {
3396
- /**
3397
- * @internal
3398
- */
1360
+
3399
1361
  const filterSensitiveLog: (obj: ReEncryptRequest) => any;
3400
1362
  }
3401
1363
  export interface ReEncryptResponse {
3402
- /**
3403
- * <p>The reencrypted data. When you use the HTTP API or the Amazon Web Services CLI, the value is Base64-encoded. Otherwise, it is not Base64-encoded.</p>
3404
- */
1364
+
3405
1365
  CiphertextBlob?: Uint8Array;
3406
- /**
3407
- * <p>Unique identifier of the KMS key used to originally encrypt the data.</p>
3408
- */
1366
+
3409
1367
  SourceKeyId?: string;
3410
- /**
3411
- * <p>The Amazon Resource Name (<a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id-key-ARN">key ARN</a>) of the KMS key that was used to reencrypt the data.</p>
3412
- */
1368
+
3413
1369
  KeyId?: string;
3414
- /**
3415
- * <p>The encryption algorithm that was used to decrypt the ciphertext before it was
3416
- * reencrypted.</p>
3417
- */
1370
+
3418
1371
  SourceEncryptionAlgorithm?: EncryptionAlgorithmSpec | string;
3419
- /**
3420
- * <p>The encryption algorithm that was used to reencrypt the data.</p>
3421
- */
1372
+
3422
1373
  DestinationEncryptionAlgorithm?: EncryptionAlgorithmSpec | string;
3423
1374
  }
3424
1375
  export declare namespace ReEncryptResponse {
3425
- /**
3426
- * @internal
3427
- */
1376
+
3428
1377
  const filterSensitiveLog: (obj: ReEncryptResponse) => any;
3429
1378
  }
3430
1379
  export interface ReplicateKeyRequest {
3431
- /**
3432
- * <p>Identifies the multi-Region primary key that is being replicated. To determine whether a
3433
- * KMS key is a multi-Region primary key, use the <a>DescribeKey</a> operation to
3434
- * check the value of the <code>MultiRegionKeyType</code> property.</p>
3435
- *
3436
- * <p>Specify the key ID or key ARN of a multi-Region primary key.</p>
3437
- * <p>For example:</p>
3438
- * <ul>
3439
- * <li>
3440
- * <p>Key ID: <code>mrk-1234abcd12ab34cd56ef1234567890ab</code>
3441
- * </p>
3442
- * </li>
3443
- * <li>
3444
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/mrk-1234abcd12ab34cd56ef1234567890ab</code>
3445
- * </p>
3446
- * </li>
3447
- * </ul>
3448
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
3449
- */
1380
+
3450
1381
  KeyId: string | undefined;
3451
- /**
3452
- * <p>The Region ID of the Amazon Web Services Region for this replica key. </p>
3453
- * <p>Enter the Region ID, such as <code>us-east-1</code> or <code>ap-southeast-2</code>. For a
3454
- * list of Amazon Web Services Regions in which KMS is supported, see <a href="https://docs.aws.amazon.com/general/latest/gr/kms.html#kms_region">KMS service endpoints</a> in the
3455
- * <i>Amazon Web Services General Reference</i>.</p>
3456
- * <p>The replica must be in a different Amazon Web Services Region than its primary key and other replicas of
3457
- * that primary key, but in the same Amazon Web Services partition. KMS must be available in the replica
3458
- * Region. If the Region is not enabled by default, the Amazon Web Services account must be enabled in the
3459
- * Region. </p>
3460
- * <p>For information about Amazon Web Services partitions, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Names (ARNs) in the
3461
- * <i>Amazon Web Services General Reference</i>.</a> For information about enabling and disabling Regions, see <a href="https://docs.aws.amazon.com/general/latest/gr/rande-manage.html#rande-manage-enable">Enabling a
3462
- * Region</a> and <a href="https://docs.aws.amazon.com/general/latest/gr/rande-manage.html#rande-manage-disable">Disabling a Region</a> in the
3463
- * <i>Amazon Web Services General Reference</i>.</p>
3464
- */
1382
+
3465
1383
  ReplicaRegion: string | undefined;
3466
- /**
3467
- * <p>The key policy to attach to the KMS key. This parameter is optional. If you do not provide
3468
- * a key policy, KMS attaches the <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default">default key policy</a> to the
3469
- * KMS key.</p>
3470
- * <p>The key policy is not a shared property of multi-Region keys. You can specify the same key
3471
- * policy or a different key policy for each key in a set of related multi-Region keys. KMS
3472
- * does not synchronize this property.</p>
3473
- * <p>If you provide a key policy, it must meet the following criteria:</p>
3474
- * <ul>
3475
- * <li>
3476
- * <p>If you don't set <code>BypassPolicyLockoutSafetyCheck</code> to true, the key policy
3477
- * must give the caller <code>kms:PutKeyPolicy</code> permission on the replica key. This
3478
- * reduces the risk that the KMS key becomes unmanageable. For more information, refer to the
3479
- * scenario in the <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-root-enable-iam">Default Key Policy</a> section of the <i>
3480
- * <i>Key Management Service Developer Guide</i>
3481
- * </i>.</p>
3482
- * </li>
3483
- * <li>
3484
- * <p>Each statement in the key policy must contain one or more principals. The principals
3485
- * in the key policy must exist and be visible to KMS. When you create a new Amazon Web Services
3486
- * principal (for example, an IAM user or role), you might need to enforce a delay before
3487
- * including the new principal in a key policy because the new principal might not be
3488
- * immediately visible to KMS. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_general.html#troubleshoot_general_eventual-consistency">Changes that I make are not always immediately visible</a> in the
3489
- * <i>
3490
- * <i>Identity and Access Management User Guide</i>
3491
- * </i>.</p>
3492
- * </li>
3493
- * <li>
3494
- * <p>The key policy size quota is 32 kilobytes (32768 bytes).</p>
3495
- * </li>
3496
- * </ul>
3497
- */
1384
+
3498
1385
  Policy?: string;
3499
- /**
3500
- * <p>A flag to indicate whether to bypass the key policy lockout safety check.</p>
3501
- * <important>
3502
- * <p>Setting this value to true increases the risk that the KMS key becomes unmanageable. Do
3503
- * not set this value to true indiscriminately.</p>
3504
- * <p>For more information, refer to the scenario in the <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-root-enable-iam">Default Key Policy</a> section in the <i>Key Management Service Developer Guide</i>.</p>
3505
- * </important>
3506
- * <p>Use this parameter only when you intend to prevent the principal that is making the
3507
- * request from making a subsequent <code>PutKeyPolicy</code> request on the KMS key.</p>
3508
- * <p>The default value is false.</p>
3509
- */
1386
+
3510
1387
  BypassPolicyLockoutSafetyCheck?: boolean;
3511
- /**
3512
- * <p>A description of the KMS key. The default value is an empty string (no
3513
- * description).</p>
3514
- * <p>The description is not a shared property of multi-Region keys. You can specify the same
3515
- * description or a different description for each key in a set of related multi-Region keys.
3516
- * KMS does not synchronize this property.</p>
3517
- */
1388
+
3518
1389
  Description?: string;
3519
- /**
3520
- * <p>Assigns one or more tags to the replica key. Use this parameter to tag the KMS key when it
3521
- * is created. To tag an existing KMS key, use the <a>TagResource</a>
3522
- * operation.</p>
3523
- * <note>
3524
- * <p>Tagging or untagging a KMS key can allow or deny permission to the KMS key. For details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/abac.html">Using ABAC in KMS</a> in the <i>Key Management Service Developer Guide</i>.</p>
3525
- * </note>
3526
- * <p>To use this parameter, you must have <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:TagResource</a> permission in an IAM policy.</p>
3527
- * <p>Tags are not a shared property of multi-Region keys. You can specify the same tags or
3528
- * different tags for each key in a set of related multi-Region keys. KMS does not synchronize
3529
- * this property.</p>
3530
- * <p>Each tag consists of a tag key and a tag value. Both the tag key and the tag value are
3531
- * required, but the tag value can be an empty (null) string. You cannot have more than one tag
3532
- * on a KMS key with the same tag key. If you specify an existing tag key with a different tag
3533
- * value, KMS replaces the current tag value with the specified one.</p>
3534
- * <p>When you add tags to an Amazon Web Services resource, Amazon Web Services generates a cost allocation
3535
- * report with usage and costs aggregated by tags. Tags can also be used to control access to a KMS key. For details,
3536
- * see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/tagging-keys.html">Tagging Keys</a>.</p>
3537
- */
1390
+
3538
1391
  Tags?: Tag[];
3539
1392
  }
3540
1393
  export declare namespace ReplicateKeyRequest {
3541
- /**
3542
- * @internal
3543
- */
1394
+
3544
1395
  const filterSensitiveLog: (obj: ReplicateKeyRequest) => any;
3545
1396
  }
3546
1397
  export interface ReplicateKeyResponse {
3547
- /**
3548
- * <p>Displays details about the new replica key, including its Amazon Resource Name (<a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id-key-ARN">key ARN</a>) and
3549
- * <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html">key state</a>. It also
3550
- * includes the ARN and Amazon Web Services Region of its primary key and other replica keys.</p>
3551
- */
1398
+
3552
1399
  ReplicaKeyMetadata?: KeyMetadata;
3553
- /**
3554
- * <p>The key policy of the new replica key. The value is a key policy document in JSON
3555
- * format.</p>
3556
- */
1400
+
3557
1401
  ReplicaPolicy?: string;
3558
- /**
3559
- * <p>The tags on the new replica key. The value is a list of tag key and tag value
3560
- * pairs.</p>
3561
- */
1402
+
3562
1403
  ReplicaTags?: Tag[];
3563
1404
  }
3564
1405
  export declare namespace ReplicateKeyResponse {
3565
- /**
3566
- * @internal
3567
- */
1406
+
3568
1407
  const filterSensitiveLog: (obj: ReplicateKeyResponse) => any;
3569
1408
  }
3570
1409
  export interface RetireGrantRequest {
3571
- /**
3572
- * <p>Identifies the grant to be retired. You can use a grant token to identify a new grant even
3573
- * before it has achieved eventual consistency.</p>
3574
- * <p>Only the <a>CreateGrant</a> operation returns a grant token. For details, see
3575
- * <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#grant_token">Grant token</a>
3576
- * and <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#terms-eventual-consistency">Eventual consistency</a> in the <i>Key Management Service Developer Guide</i>.</p>
3577
- */
1410
+
3578
1411
  GrantToken?: string;
3579
- /**
3580
- * <p>The key ARN KMS key associated with the grant. To find the key ARN, use the <a>ListKeys</a> operation.</p>
3581
- * <p>For example: <code>arn:aws:kms:us-east-2:444455556666:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
3582
- * </p>
3583
- */
1412
+
3584
1413
  KeyId?: string;
3585
- /**
3586
- * <p>Identifies the grant to retire. To get the grant ID, use <a>CreateGrant</a>,
3587
- * <a>ListGrants</a>, or <a>ListRetirableGrants</a>.</p>
3588
- * <ul>
3589
- * <li>
3590
- * <p>Grant ID Example -
3591
- * 0123456789012345678901234567890123456789012345678901234567890123</p>
3592
- * </li>
3593
- * </ul>
3594
- */
1414
+
3595
1415
  GrantId?: string;
3596
1416
  }
3597
1417
  export declare namespace RetireGrantRequest {
3598
- /**
3599
- * @internal
3600
- */
1418
+
3601
1419
  const filterSensitiveLog: (obj: RetireGrantRequest) => any;
3602
1420
  }
3603
1421
  export interface RevokeGrantRequest {
3604
- /**
3605
- * <p>A unique identifier for the KMS key associated with the grant. To get the key ID and key
3606
- * ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
3607
- *
3608
- * <p>Specify the key ID or key ARN of the KMS key. To specify a KMS key in a
3609
- * different Amazon Web Services account, you must use the key ARN.</p>
3610
- * <p>For example:</p>
3611
- * <ul>
3612
- * <li>
3613
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
3614
- * </p>
3615
- * </li>
3616
- * <li>
3617
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
3618
- * </p>
3619
- * </li>
3620
- * </ul>
3621
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
3622
- */
1422
+
3623
1423
  KeyId: string | undefined;
3624
- /**
3625
- * <p>Identifies the grant to revoke. To get the grant ID, use <a>CreateGrant</a>,
3626
- * <a>ListGrants</a>, or <a>ListRetirableGrants</a>.</p>
3627
- */
1424
+
3628
1425
  GrantId: string | undefined;
3629
1426
  }
3630
1427
  export declare namespace RevokeGrantRequest {
3631
- /**
3632
- * @internal
3633
- */
1428
+
3634
1429
  const filterSensitiveLog: (obj: RevokeGrantRequest) => any;
3635
1430
  }
3636
1431
  export interface ScheduleKeyDeletionRequest {
3637
- /**
3638
- * <p>The unique identifier of the KMS key to delete.</p>
3639
- * <p>Specify the key ID or key ARN of the KMS key.</p>
3640
- * <p>For example:</p>
3641
- * <ul>
3642
- * <li>
3643
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
3644
- * </p>
3645
- * </li>
3646
- * <li>
3647
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
3648
- * </p>
3649
- * </li>
3650
- * </ul>
3651
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
3652
- */
1432
+
3653
1433
  KeyId: string | undefined;
3654
- /**
3655
- * <p>The waiting period, specified in number of days. After the waiting period ends, KMS
3656
- * deletes the KMS key.</p>
3657
- * <p>If the KMS key is a multi-Region primary key with replicas, the waiting period begins when
3658
- * the last of its replica keys is deleted. Otherwise, the waiting period begins
3659
- * immediately.</p>
3660
- * <p>This value is optional. If you include a value, it must be between 7 and 30, inclusive. If
3661
- * you do not include a value, it defaults to 30.</p>
3662
- */
1434
+
3663
1435
  PendingWindowInDays?: number;
3664
1436
  }
3665
1437
  export declare namespace ScheduleKeyDeletionRequest {
3666
- /**
3667
- * @internal
3668
- */
1438
+
3669
1439
  const filterSensitiveLog: (obj: ScheduleKeyDeletionRequest) => any;
3670
1440
  }
3671
1441
  export interface ScheduleKeyDeletionResponse {
3672
- /**
3673
- * <p>The Amazon Resource Name (<a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id-key-ARN">key ARN</a>) of the KMS key whose deletion is scheduled.</p>
3674
- */
1442
+
3675
1443
  KeyId?: string;
3676
- /**
3677
- * <p>The date and time after which KMS deletes the KMS key.</p>
3678
- * <p>If the KMS key is a multi-Region primary key with replica keys, this field does not
3679
- * appear. The deletion date for the primary key isn't known until its last replica key is
3680
- * deleted.</p>
3681
- */
1444
+
3682
1445
  DeletionDate?: Date;
3683
- /**
3684
- * <p>The current status of the KMS key.</p>
3685
- * <p>For more information about how key state affects the use of a KMS key, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html">Key state: Effect on your KMS
3686
- * key</a> in the <i>Key Management Service Developer Guide</i>.</p>
3687
- */
1446
+
3688
1447
  KeyState?: KeyState | string;
3689
- /**
3690
- * <p>The waiting period before the KMS key is deleted. </p>
3691
- * <p>If the KMS key is a multi-Region primary key with replicas, the waiting period begins when
3692
- * the last of its replica keys is deleted. Otherwise, the waiting period begins
3693
- * immediately.</p>
3694
- */
1448
+
3695
1449
  PendingWindowInDays?: number;
3696
1450
  }
3697
1451
  export declare namespace ScheduleKeyDeletionResponse {
3698
- /**
3699
- * @internal
3700
- */
1452
+
3701
1453
  const filterSensitiveLog: (obj: ScheduleKeyDeletionResponse) => any;
3702
1454
  }
3703
1455
  export interface SignRequest {
3704
- /**
3705
- * <p>Identifies an asymmetric KMS key. KMS uses the private key in the asymmetric KMS key to
3706
- * sign the message. The <code>KeyUsage</code> type of the KMS key must be
3707
- * <code>SIGN_VERIFY</code>. To find the <code>KeyUsage</code> of a KMS key, use the <a>DescribeKey</a> operation.</p>
3708
- * <p>To specify a KMS key, use its key ID, key ARN, alias name, or alias ARN. When using an alias name, prefix it with <code>"alias/"</code>. To specify a KMS key in a different Amazon Web Services account, you must use the key ARN or alias ARN.</p>
3709
- * <p>For example:</p>
3710
- * <ul>
3711
- * <li>
3712
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
3713
- * </p>
3714
- * </li>
3715
- * <li>
3716
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
3717
- * </p>
3718
- * </li>
3719
- * <li>
3720
- * <p>Alias name: <code>alias/ExampleAlias</code>
3721
- * </p>
3722
- * </li>
3723
- * <li>
3724
- * <p>Alias ARN: <code>arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias</code>
3725
- * </p>
3726
- * </li>
3727
- * </ul>
3728
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>. To get the alias name and alias ARN, use <a>ListAliases</a>.</p>
3729
- */
1456
+
3730
1457
  KeyId: string | undefined;
3731
- /**
3732
- * <p>Specifies the message or message digest to sign. Messages can be 0-4096 bytes. To sign a
3733
- * larger message, provide the message digest.</p>
3734
- * <p>If you provide a message, KMS generates a hash digest of the message and then signs
3735
- * it.</p>
3736
- */
1458
+
3737
1459
  Message: Uint8Array | undefined;
3738
- /**
3739
- * <p>Tells KMS whether the value of the <code>Message</code> parameter is a message or
3740
- * message digest. The default value, RAW, indicates a message. To indicate a message digest,
3741
- * enter <code>DIGEST</code>.</p>
3742
- */
1460
+
3743
1461
  MessageType?: MessageType | string;
3744
- /**
3745
- * <p>A list of grant tokens.</p>
3746
- * <p>Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved <i>eventual consistency</i>. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#grant_token">Grant token</a> and <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grant-manage.html#using-grant-token">Using a grant token</a> in the
3747
- * <i>Key Management Service Developer Guide</i>.</p>
3748
- */
1462
+
3749
1463
  GrantTokens?: string[];
3750
- /**
3751
- * <p>Specifies the signing algorithm to use when signing the message. </p>
3752
- * <p>Choose an algorithm that is compatible with the type and size of the specified asymmetric
3753
- * KMS key.</p>
3754
- */
1464
+
3755
1465
  SigningAlgorithm: SigningAlgorithmSpec | string | undefined;
3756
1466
  }
3757
1467
  export declare namespace SignRequest {
3758
- /**
3759
- * @internal
3760
- */
1468
+
3761
1469
  const filterSensitiveLog: (obj: SignRequest) => any;
3762
1470
  }
3763
1471
  export interface SignResponse {
3764
- /**
3765
- * <p>The Amazon Resource Name (<a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id-key-ARN">key ARN</a>) of the asymmetric KMS key that was used to sign the message.</p>
3766
- */
1472
+
3767
1473
  KeyId?: string;
3768
- /**
3769
- * <p>The cryptographic signature that was generated for the message. </p>
3770
- * <ul>
3771
- * <li>
3772
- * <p>When used with the supported RSA signing algorithms, the encoding of this value is
3773
- * defined by <a href="https://tools.ietf.org/html/rfc8017">PKCS #1 in RFC
3774
- * 8017</a>.</p>
3775
- * </li>
3776
- * <li>
3777
- * <p>When used with the <code>ECDSA_SHA_256</code>, <code>ECDSA_SHA_384</code>, or
3778
- * <code>ECDSA_SHA_512</code> signing algorithms, this value is a DER-encoded object as
3779
- * defined by ANS X9.62–2005 and <a href="https://tools.ietf.org/html/rfc3279#section-2.2.3">RFC 3279 Section 2.2.3</a>.
3780
- * This is the most commonly used signature format and is appropriate for most uses.
3781
- * </p>
3782
- * </li>
3783
- * </ul>
3784
- * <p>When you use the HTTP API or the Amazon Web Services CLI, the value is Base64-encoded. Otherwise, it is not Base64-encoded.</p>
3785
- */
1474
+
3786
1475
  Signature?: Uint8Array;
3787
- /**
3788
- * <p>The signing algorithm that was used to sign the message.</p>
3789
- */
1476
+
3790
1477
  SigningAlgorithm?: SigningAlgorithmSpec | string;
3791
1478
  }
3792
1479
  export declare namespace SignResponse {
3793
- /**
3794
- * @internal
3795
- */
1480
+
3796
1481
  const filterSensitiveLog: (obj: SignResponse) => any;
3797
1482
  }
3798
1483
  export interface TagResourceRequest {
3799
- /**
3800
- * <p>Identifies a customer managed key in the account and Region.</p>
3801
- *
3802
- * <p>Specify the key ID or key ARN of the KMS key.</p>
3803
- * <p>For example:</p>
3804
- * <ul>
3805
- * <li>
3806
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
3807
- * </p>
3808
- * </li>
3809
- * <li>
3810
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
3811
- * </p>
3812
- * </li>
3813
- * </ul>
3814
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
3815
- */
1484
+
3816
1485
  KeyId: string | undefined;
3817
- /**
3818
- * <p>One or more tags. </p>
3819
- * <p>Each tag consists of a tag key and a tag value. The tag value can be an empty (null)
3820
- * string. </p>
3821
- * <p>You cannot have more than one tag on a KMS key with the same tag key. If you specify an
3822
- * existing tag key with a different tag value, KMS replaces the current tag value with the
3823
- * specified one.</p>
3824
- */
1486
+
3825
1487
  Tags: Tag[] | undefined;
3826
1488
  }
3827
1489
  export declare namespace TagResourceRequest {
3828
- /**
3829
- * @internal
3830
- */
1490
+
3831
1491
  const filterSensitiveLog: (obj: TagResourceRequest) => any;
3832
1492
  }
3833
1493
  export interface UntagResourceRequest {
3834
- /**
3835
- * <p>Identifies the KMS key from which you are removing tags.</p>
3836
- *
3837
- * <p>Specify the key ID or key ARN of the KMS key.</p>
3838
- * <p>For example:</p>
3839
- * <ul>
3840
- * <li>
3841
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
3842
- * </p>
3843
- * </li>
3844
- * <li>
3845
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
3846
- * </p>
3847
- * </li>
3848
- * </ul>
3849
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
3850
- */
1494
+
3851
1495
  KeyId: string | undefined;
3852
- /**
3853
- * <p>One or more tag keys. Specify only the tag keys, not the tag values.</p>
3854
- */
1496
+
3855
1497
  TagKeys: string[] | undefined;
3856
1498
  }
3857
1499
  export declare namespace UntagResourceRequest {
3858
- /**
3859
- * @internal
3860
- */
1500
+
3861
1501
  const filterSensitiveLog: (obj: UntagResourceRequest) => any;
3862
1502
  }
3863
1503
  export interface UpdateAliasRequest {
3864
- /**
3865
- * <p>Identifies the alias that is changing its KMS key. This value must begin with
3866
- * <code>alias/</code> followed by the alias name, such as <code>alias/ExampleAlias</code>. You
3867
- * cannot use UpdateAlias to change the alias name.</p>
3868
- */
1504
+
3869
1505
  AliasName: string | undefined;
3870
- /**
3871
- * <p>Identifies the <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk">customer managed key</a> to associate with the alias. You don't have permission to
3872
- * associate an alias with an <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk">Amazon Web Services managed key</a>.</p>
3873
- * <p>The KMS key must be in the same Amazon Web Services account and Region as the alias. Also, the new
3874
- * target KMS key must be the same type as the current target KMS key (both symmetric or both
3875
- * asymmetric) and they must have the same key usage. </p>
3876
- * <p>Specify the key ID or key ARN of the KMS key.</p>
3877
- * <p>For example:</p>
3878
- * <ul>
3879
- * <li>
3880
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
3881
- * </p>
3882
- * </li>
3883
- * <li>
3884
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
3885
- * </p>
3886
- * </li>
3887
- * </ul>
3888
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
3889
- * <p>To
3890
- * verify that the alias is mapped to the correct KMS key, use <a>ListAliases</a>.</p>
3891
- */
1506
+
3892
1507
  TargetKeyId: string | undefined;
3893
1508
  }
3894
1509
  export declare namespace UpdateAliasRequest {
3895
- /**
3896
- * @internal
3897
- */
1510
+
3898
1511
  const filterSensitiveLog: (obj: UpdateAliasRequest) => any;
3899
1512
  }
3900
1513
  export interface UpdateCustomKeyStoreRequest {
3901
- /**
3902
- * <p>Identifies the custom key store that you want to update. Enter the ID of the custom key
3903
- * store. To find the ID of a custom key store, use the <a>DescribeCustomKeyStores</a> operation.</p>
3904
- */
1514
+
3905
1515
  CustomKeyStoreId: string | undefined;
3906
- /**
3907
- * <p>Changes the friendly name of the custom key store to the value that you specify. The
3908
- * custom key store name must be unique in the Amazon Web Services account.</p>
3909
- */
1516
+
3910
1517
  NewCustomKeyStoreName?: string;
3911
- /**
3912
- * <p>Enter the current password of the <code>kmsuser</code> crypto user (CU) in the CloudHSM
3913
- * cluster that is associated with the custom key store.</p>
3914
- * <p>This parameter tells KMS the current password of the <code>kmsuser</code> crypto user
3915
- * (CU). It does not set or change the password of any users in the CloudHSM cluster.</p>
3916
- */
1518
+
3917
1519
  KeyStorePassword?: string;
3918
- /**
3919
- * <p>Associates the custom key store with a related CloudHSM cluster. </p>
3920
- * <p>Enter the cluster ID of the cluster that you used to create the custom key store or a
3921
- * cluster that shares a backup history and has the same cluster certificate as the original
3922
- * cluster. You cannot use this parameter to associate a custom key store with an unrelated
3923
- * cluster. In addition, the replacement cluster must <a href="https://docs.aws.amazon.com/kms/latest/developerguide/create-keystore.html#before-keystore">fulfill the requirements</a> for
3924
- * a cluster associated with a custom key store. To view the cluster certificate of a cluster,
3925
- * use the <a href="https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html">DescribeClusters</a> operation.</p>
3926
- */
1520
+
3927
1521
  CloudHsmClusterId?: string;
3928
1522
  }
3929
1523
  export declare namespace UpdateCustomKeyStoreRequest {
3930
- /**
3931
- * @internal
3932
- */
1524
+
3933
1525
  const filterSensitiveLog: (obj: UpdateCustomKeyStoreRequest) => any;
3934
1526
  }
3935
1527
  export interface UpdateCustomKeyStoreResponse {
3936
1528
  }
3937
1529
  export declare namespace UpdateCustomKeyStoreResponse {
3938
- /**
3939
- * @internal
3940
- */
1530
+
3941
1531
  const filterSensitiveLog: (obj: UpdateCustomKeyStoreResponse) => any;
3942
1532
  }
3943
1533
  export interface UpdateKeyDescriptionRequest {
3944
- /**
3945
- * <p>Updates the description of the specified KMS key.</p>
3946
- *
3947
- * <p>Specify the key ID or key ARN of the KMS key.</p>
3948
- * <p>For example:</p>
3949
- * <ul>
3950
- * <li>
3951
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
3952
- * </p>
3953
- * </li>
3954
- * <li>
3955
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
3956
- * </p>
3957
- * </li>
3958
- * </ul>
3959
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
3960
- */
1534
+
3961
1535
  KeyId: string | undefined;
3962
- /**
3963
- * <p>New description for the KMS key.</p>
3964
- */
1536
+
3965
1537
  Description: string | undefined;
3966
1538
  }
3967
1539
  export declare namespace UpdateKeyDescriptionRequest {
3968
- /**
3969
- * @internal
3970
- */
1540
+
3971
1541
  const filterSensitiveLog: (obj: UpdateKeyDescriptionRequest) => any;
3972
1542
  }
3973
1543
  export interface UpdatePrimaryRegionRequest {
3974
- /**
3975
- * <p>Identifies the current primary key. When the operation completes, this KMS key will be a
3976
- * replica key.</p>
3977
- * <p>Specify the key ID or key ARN of a multi-Region primary key.</p>
3978
- * <p>For example:</p>
3979
- * <ul>
3980
- * <li>
3981
- * <p>Key ID: <code>mrk-1234abcd12ab34cd56ef1234567890ab</code>
3982
- * </p>
3983
- * </li>
3984
- * <li>
3985
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/mrk-1234abcd12ab34cd56ef1234567890ab</code>
3986
- * </p>
3987
- * </li>
3988
- * </ul>
3989
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>.</p>
3990
- */
1544
+
3991
1545
  KeyId: string | undefined;
3992
- /**
3993
- * <p>The Amazon Web Services Region of the new primary key. Enter the Region ID, such as
3994
- * <code>us-east-1</code> or <code>ap-southeast-2</code>. There must be an existing replica key
3995
- * in this Region. </p>
3996
- * <p>When the operation completes, the multi-Region key in this Region will be the primary
3997
- * key.</p>
3998
- */
1546
+
3999
1547
  PrimaryRegion: string | undefined;
4000
1548
  }
4001
1549
  export declare namespace UpdatePrimaryRegionRequest {
4002
- /**
4003
- * @internal
4004
- */
1550
+
4005
1551
  const filterSensitiveLog: (obj: UpdatePrimaryRegionRequest) => any;
4006
1552
  }
4007
1553
  export interface VerifyRequest {
4008
- /**
4009
- * <p>Identifies the asymmetric KMS key that will be used to verify the signature. This must be
4010
- * the same KMS key that was used to generate the signature. If you specify a different KMS key,
4011
- * the signature verification fails.</p>
4012
- * <p>To specify a KMS key, use its key ID, key ARN, alias name, or alias ARN. When using an alias name, prefix it with <code>"alias/"</code>. To specify a KMS key in a different Amazon Web Services account, you must use the key ARN or alias ARN.</p>
4013
- * <p>For example:</p>
4014
- * <ul>
4015
- * <li>
4016
- * <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>
4017
- * </p>
4018
- * </li>
4019
- * <li>
4020
- * <p>Key ARN: <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
4021
- * </p>
4022
- * </li>
4023
- * <li>
4024
- * <p>Alias name: <code>alias/ExampleAlias</code>
4025
- * </p>
4026
- * </li>
4027
- * <li>
4028
- * <p>Alias ARN: <code>arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias</code>
4029
- * </p>
4030
- * </li>
4031
- * </ul>
4032
- * <p>To get the key ID and key ARN for a KMS key, use <a>ListKeys</a> or <a>DescribeKey</a>. To get the alias name and alias ARN, use <a>ListAliases</a>.</p>
4033
- */
1554
+
4034
1555
  KeyId: string | undefined;
4035
- /**
4036
- * <p>Specifies the message that was signed. You can submit a raw message of up to 4096 bytes,
4037
- * or a hash digest of the message. If you submit a digest, use the <code>MessageType</code>
4038
- * parameter with a value of <code>DIGEST</code>.</p>
4039
- * <p>If the message specified here is different from the message that was signed, the signature
4040
- * verification fails. A message and its hash digest are considered to be the same
4041
- * message.</p>
4042
- */
1556
+
4043
1557
  Message: Uint8Array | undefined;
4044
- /**
4045
- * <p>Tells KMS whether the value of the <code>Message</code> parameter is a message or
4046
- * message digest. The default value, RAW, indicates a message. To indicate a message digest,
4047
- * enter <code>DIGEST</code>.</p>
4048
- * <important>
4049
- * <p>Use the <code>DIGEST</code> value only when the value of the <code>Message</code>
4050
- * parameter is a message digest. If you use the <code>DIGEST</code> value with a raw message,
4051
- * the security of the verification operation can be compromised.</p>
4052
- * </important>
4053
- */
1558
+
4054
1559
  MessageType?: MessageType | string;
4055
- /**
4056
- * <p>The signature that the <code>Sign</code> operation generated.</p>
4057
- */
1560
+
4058
1561
  Signature: Uint8Array | undefined;
4059
- /**
4060
- * <p>The signing algorithm that was used to sign the message. If you submit a different
4061
- * algorithm, the signature verification fails.</p>
4062
- */
1562
+
4063
1563
  SigningAlgorithm: SigningAlgorithmSpec | string | undefined;
4064
- /**
4065
- * <p>A list of grant tokens.</p>
4066
- * <p>Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved <i>eventual consistency</i>. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#grant_token">Grant token</a> and <a href="https://docs.aws.amazon.com/kms/latest/developerguide/grant-manage.html#using-grant-token">Using a grant token</a> in the
4067
- * <i>Key Management Service Developer Guide</i>.</p>
4068
- */
1564
+
4069
1565
  GrantTokens?: string[];
4070
1566
  }
4071
1567
  export declare namespace VerifyRequest {
4072
- /**
4073
- * @internal
4074
- */
1568
+
4075
1569
  const filterSensitiveLog: (obj: VerifyRequest) => any;
4076
1570
  }
4077
1571
  export interface VerifyResponse {
4078
- /**
4079
- * <p>The Amazon Resource Name (<a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id-key-ARN">key ARN</a>) of the asymmetric KMS key that was used to verify the signature.</p>
4080
- */
1572
+
4081
1573
  KeyId?: string;
4082
- /**
4083
- * <p>A Boolean value that indicates whether the signature was verified. A value of
4084
- * <code>True</code> indicates that the <code>Signature</code> was produced by signing the
4085
- * <code>Message</code> with the specified <code>KeyID</code> and
4086
- * <code>SigningAlgorithm.</code> If the signature is not verified, the <code>Verify</code>
4087
- * operation fails with a <code>KMSInvalidSignatureException</code> exception. </p>
4088
- */
1574
+
4089
1575
  SignatureValid?: boolean;
4090
- /**
4091
- * <p>The signing algorithm that was used to verify the signature.</p>
4092
- */
1576
+
4093
1577
  SigningAlgorithm?: SigningAlgorithmSpec | string;
4094
1578
  }
4095
1579
  export declare namespace VerifyResponse {
4096
- /**
4097
- * @internal
4098
- */
1580
+
4099
1581
  const filterSensitiveLog: (obj: VerifyResponse) => any;
4100
1582
  }