@aws-sdk/client-secrets-manager 3.40.0 → 3.45.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 (30) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/README.md +1 -1
  3. package/dist-cjs/endpoints.js +9 -0
  4. package/dist-es/endpoints.js +9 -0
  5. package/dist-types/SecretsManager.d.ts +142 -727
  6. package/dist-types/SecretsManagerClient.d.ts +1 -1
  7. package/dist-types/commands/CancelRotateSecretCommand.d.ts +8 -50
  8. package/dist-types/commands/CreateSecretCommand.d.ts +20 -88
  9. package/dist-types/commands/DeleteResourcePolicyCommand.d.ts +3 -25
  10. package/dist-types/commands/DeleteSecretCommand.d.ts +10 -43
  11. package/dist-types/commands/DescribeSecretCommand.d.ts +3 -29
  12. package/dist-types/commands/GetRandomPasswordCommand.d.ts +2 -12
  13. package/dist-types/commands/GetResourcePolicyCommand.d.ts +5 -28
  14. package/dist-types/commands/GetSecretValueCommand.d.ts +5 -26
  15. package/dist-types/commands/ListSecretVersionIdsCommand.d.ts +7 -26
  16. package/dist-types/commands/ListSecretsCommand.d.ts +8 -27
  17. package/dist-types/commands/PutResourcePolicyCommand.d.ts +5 -32
  18. package/dist-types/commands/PutSecretValueCommand.d.ts +16 -84
  19. package/dist-types/commands/RemoveRegionsFromReplicationCommand.d.ts +2 -2
  20. package/dist-types/commands/ReplicateSecretToRegionsCommand.d.ts +2 -3
  21. package/dist-types/commands/RestoreSecretCommand.d.ts +2 -19
  22. package/dist-types/commands/RotateSecretCommand.d.ts +18 -61
  23. package/dist-types/commands/StopReplicationToReplicaCommand.d.ts +3 -2
  24. package/dist-types/commands/TagResourceCommand.d.ts +9 -30
  25. package/dist-types/commands/UntagResourceCommand.d.ts +2 -22
  26. package/dist-types/commands/UpdateSecretCommand.d.ts +20 -84
  27. package/dist-types/commands/UpdateSecretVersionStageCommand.d.ts +7 -29
  28. package/dist-types/commands/ValidateResourcePolicyCommand.d.ts +6 -26
  29. package/dist-types/models/models_0.d.ts +400 -479
  30. package/package.json +6 -6
@@ -83,321 +83,97 @@ import { SecretsManagerClient } from "./SecretsManagerClient";
83
83
  * account and delivers log files to an Amazon S3 bucket. By using information that's collected
84
84
  * by Amazon Web Services CloudTrail, you can determine the requests successfully made to Secrets Manager, who made the
85
85
  * request, when it was made, and so on. For more about Amazon Web Services Secrets Manager and support for Amazon Web Services
86
- * CloudTrail, see <a href="http://docs.aws.amazon.com/secretsmanager/latest/userguide/monitoring.html#monitoring_cloudtrail">Logging
86
+ * CloudTrail, see <a href="https://docs.aws.amazon.com/secretsmanager/latest/userguide/monitoring.html#monitoring_cloudtrail">Logging
87
87
  * Amazon Web Services Secrets Manager Events with Amazon Web Services CloudTrail</a> in the <i>Amazon Web Services Secrets Manager User Guide</i>.
88
88
  * To learn more about CloudTrail, including enabling it and find your log files, see the <a href="https://docs.aws.amazon.com/awscloudtrail/latest/userguide/what_is_cloud_trail_top_level.html">Amazon Web Services CloudTrail User Guide</a>.</p>
89
89
  */
90
90
  export declare class SecretsManager extends SecretsManagerClient {
91
91
  /**
92
- * <p>Disables automatic scheduled rotation and cancels the rotation of a secret if currently in
93
- * progress.</p>
94
- * <p>To re-enable scheduled rotation, call <a>RotateSecret</a> with
95
- * <code>AutomaticallyRotateAfterDays</code> set to a value greater than 0. This immediately
96
- * rotates your secret and then enables the automatic schedule.</p>
92
+ * <p>Turns off automatic rotation, and if a rotation is currently in
93
+ * progress, cancels the rotation.</p>
94
+ * <p>To turn on automatic rotation again, call <a>RotateSecret</a>.</p>
97
95
  * <note>
98
- * <p>If you cancel a rotation while in progress, it can leave the <code>VersionStage</code>
96
+ * <p>If you cancel a rotation in progress, it can leave the <code>VersionStage</code>
99
97
  * labels in an unexpected state. Depending on the step of the rotation in progress, you might
100
98
  * need to remove the staging label <code>AWSPENDING</code> from the partially created version, specified
101
- * by the <code>VersionId</code> response value. You should also evaluate the partially rotated
102
- * new version to see if it should be deleted, which you can do by removing all staging labels
103
- * from the new version <code>VersionStage</code> field.</p>
99
+ * by the <code>VersionId</code> response value. We recommend you also evaluate the partially rotated
100
+ * new version to see if it should be deleted. You can delete a version by removing all staging labels
101
+ * from it.</p>
104
102
  * </note>
105
- * <p>To successfully start a rotation, the staging label <code>AWSPENDING</code> must be in one of the
106
- * following states:</p>
107
- * <ul>
108
- * <li>
109
- * <p>Not attached to any version at all</p>
110
- * </li>
111
- * <li>
112
- * <p>Attached to the same version as the staging label <code>AWSCURRENT</code>
113
- * </p>
114
- * </li>
115
- * </ul>
116
- * <p>If the staging label <code>AWSPENDING</code> attached to a different version than the version with
117
- * <code>AWSCURRENT</code> then the attempt to rotate fails.</p>
118
- *
119
- * <p>
120
- * <b>Minimum permissions</b>
121
- * </p>
122
- * <p>To run this command, you must have the following permissions:</p>
123
- * <ul>
124
- * <li>
125
- * <p>secretsmanager:CancelRotateSecret</p>
126
- * </li>
127
- * </ul>
128
- * <p>
129
- * <b>Related operations</b>
130
- * </p>
131
- * <ul>
132
- * <li>
133
- * <p>To configure rotation for a secret or to manually trigger a rotation, use <a>RotateSecret</a>.</p>
134
- * </li>
135
- * <li>
136
- * <p>To get the rotation configuration details for a secret, use <a>DescribeSecret</a>.</p>
137
- * </li>
138
- * <li>
139
- * <p>To list all of the currently available secrets, use <a>ListSecrets</a>.</p>
140
- * </li>
141
- * <li>
142
- * <p>To list all of the versions currently associated with a secret, use <a>ListSecretVersionIds</a>.</p>
143
- * </li>
144
- * </ul>
145
103
  */
146
104
  cancelRotateSecret(args: CancelRotateSecretCommandInput, options?: __HttpHandlerOptions): Promise<CancelRotateSecretCommandOutput>;
147
105
  cancelRotateSecret(args: CancelRotateSecretCommandInput, cb: (err: any, data?: CancelRotateSecretCommandOutput) => void): void;
148
106
  cancelRotateSecret(args: CancelRotateSecretCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: CancelRotateSecretCommandOutput) => void): void;
149
107
  /**
150
- * <p>Creates a new secret. A secret in Secrets Manager consists of both the protected secret data and the
108
+ * <p>Creates a new secret. A <i>secret</i> is a set of credentials, such as a
109
+ * user name and password, that you store in an encrypted form in Secrets Manager. The secret also
110
+ * includes the connection information to access a database or other service, which Secrets Manager
111
+ * doesn't encrypt. A secret in Secrets Manager consists of both the protected secret data and the
151
112
  * important information needed to manage the secret.</p>
152
- * <p>Secrets Manager stores the encrypted secret data in one of a collection of "versions"
153
- * associated with the secret. Each version contains a copy of the encrypted secret data. Each
154
- * version is associated with one or more "staging labels" that identify where the version is in
155
- * the rotation cycle. The <code>SecretVersionsToStages</code> field of the secret contains the
156
- * mapping of staging labels to the active versions of the secret. Versions without a staging
157
- * label are considered deprecated and not included in the list.</p>
158
- * <p>You provide the secret data to be encrypted by putting text in either the
159
- * <code>SecretString</code> parameter or binary data in the <code>SecretBinary</code>
160
- * parameter, but not both. If you include <code>SecretString</code> or <code>SecretBinary</code>
161
- * then Secrets Manager also creates an initial secret version and automatically attaches the staging
162
- * label <code>AWSCURRENT</code> to the new version.</p>
163
- * <note>
164
- * <ul>
165
- * <li>
166
- * <p>If you call an operation to encrypt or decrypt the <code>SecretString</code>
167
- * or <code>SecretBinary</code> for a secret in the same account as the calling user and that
168
- * secret doesn't specify a Amazon Web Services KMS encryption key, Secrets Manager uses the account's default
169
- * Amazon Web Services managed customer master key (CMK) with the alias <code>aws/secretsmanager</code>. If this key
170
- * doesn't already exist in your account then Secrets Manager creates it for you automatically. All
171
- * users and roles in the same Amazon Web Services account automatically have access to use the default CMK.
172
- * Note that if an Secrets Manager API call results in Amazon Web Services creating the account's
173
- * Amazon Web Services-managed CMK, it can result in a one-time significant delay in returning the
174
- * result.</p>
175
- * </li>
176
- * <li>
177
- * <p>If the secret resides in a different Amazon Web Services account from the credentials calling an API that
178
- * requires encryption or decryption of the secret value then you must create and use a custom
179
- * Amazon Web Services KMS CMK because you can't access the default CMK for the account using credentials
180
- * from a different Amazon Web Services account. Store the ARN of the CMK in the secret when you create the
181
- * secret or when you update it by including it in the <code>KMSKeyId</code>. If you call an
182
- * API that must encrypt or decrypt <code>SecretString</code> or <code>SecretBinary</code>
183
- * using credentials from a different account then the Amazon Web Services KMS key policy must grant cross-account
184
- * access to that other account's user or role for both the kms:GenerateDataKey and
185
- * kms:Decrypt operations.</p>
186
- * </li>
187
- * </ul>
188
- * </note>
189
- * <p> </p>
190
- * <p>
191
- * <b>Minimum permissions</b>
192
- * </p>
193
- * <p>To run this command, you must have the following permissions:</p>
194
- * <ul>
195
- * <li>
196
- * <p>secretsmanager:CreateSecret</p>
197
- * </li>
198
- * <li>
199
- * <p>kms:GenerateDataKey - needed only if you use a customer-managed Amazon Web Services KMS key to encrypt
200
- * the secret. You do not need this permission to use the account default Amazon Web Services managed CMK
201
- * for Secrets Manager.</p>
202
- * </li>
203
- * <li>
204
- * <p>kms:Decrypt - needed only if you use a customer-managed Amazon Web Services KMS key to encrypt the
205
- * secret. You do not need this permission to use the account default Amazon Web Services managed CMK for
206
- * Secrets Manager.</p>
207
- * </li>
208
- * <li>
209
- * <p>secretsmanager:TagResource - needed only if you include the <code>Tags</code>
210
- * parameter. </p>
211
- * </li>
212
- * </ul>
213
- * <p>
214
- * <b>Related operations</b>
215
- * </p>
216
- * <ul>
217
- * <li>
218
- * <p>To delete a secret, use <a>DeleteSecret</a>.</p>
219
- * </li>
220
- * <li>
221
- * <p>To modify an existing secret, use <a>UpdateSecret</a>.</p>
222
- * </li>
223
- * <li>
224
- * <p>To create a new version of a secret, use <a>PutSecretValue</a>.</p>
225
- * </li>
226
- * <li>
227
- * <p>To retrieve the encrypted secure string and secure binary values, use <a>GetSecretValue</a>.</p>
228
- * </li>
229
- * <li>
230
- * <p>To retrieve all other details for a secret, use <a>DescribeSecret</a>. This
231
- * does not include the encrypted secure string and secure binary values.</p>
232
- * </li>
233
- * <li>
234
- * <p>To retrieve the list of secret versions associated with the current secret, use <a>DescribeSecret</a> and examine the <code>SecretVersionsToStages</code> response
235
- * value.</p>
236
- * </li>
237
- * </ul>
113
+ * <p>For information about creating a secret in the console, see <a href="https://docs.aws.amazon.com/secretsmanager/latest/userguide/manage_create-basic-secret.html">Create a secret</a>.</p>
114
+ * <p>To create a secret, you can provide the secret value to be encrypted in either the
115
+ * <code>SecretString</code> parameter or the <code>SecretBinary</code> parameter, but not both.
116
+ * If you include <code>SecretString</code> or <code>SecretBinary</code>
117
+ * then Secrets Manager creates an initial secret version and automatically attaches the staging
118
+ * label <code>AWSCURRENT</code> to it.</p>
119
+ * <p>If you don't specify an KMS encryption key, Secrets Manager uses the Amazon Web Services managed key
120
+ * <code>aws/secretsmanager</code>. If this key
121
+ * doesn't already exist in your account, then Secrets Manager creates it for you automatically. All
122
+ * users and roles in the Amazon Web Services account automatically have access to use <code>aws/secretsmanager</code>.
123
+ * Creating <code>aws/secretsmanager</code> can result in a one-time significant delay in returning the
124
+ * result.</p>
125
+ * <p>If the secret is in a different Amazon Web Services account from the credentials calling the API, then
126
+ * you can't use <code>aws/secretsmanager</code> to encrypt the secret, and you must create
127
+ * and use a customer managed KMS key. </p>
238
128
  */
239
129
  createSecret(args: CreateSecretCommandInput, options?: __HttpHandlerOptions): Promise<CreateSecretCommandOutput>;
240
130
  createSecret(args: CreateSecretCommandInput, cb: (err: any, data?: CreateSecretCommandOutput) => void): void;
241
131
  createSecret(args: CreateSecretCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: CreateSecretCommandOutput) => void): void;
242
132
  /**
243
- * <p>Deletes the resource-based permission policy attached to the secret.</p>
244
- * <p>
245
- * <b>Minimum permissions</b>
246
- * </p>
247
- * <p>To run this command, you must have the following permissions:</p>
248
- * <ul>
249
- * <li>
250
- * <p>secretsmanager:DeleteResourcePolicy</p>
251
- * </li>
252
- * </ul>
253
- * <p>
254
- * <b>Related operations</b>
255
- * </p>
256
- * <ul>
257
- * <li>
258
- * <p>To attach a resource policy to a secret, use <a>PutResourcePolicy</a>.</p>
259
- * </li>
260
- * <li>
261
- * <p>To retrieve the current resource-based policy attached to a secret, use <a>GetResourcePolicy</a>.</p>
262
- * </li>
263
- * <li>
264
- * <p>To list all of the currently available secrets, use <a>ListSecrets</a>.</p>
265
- * </li>
266
- * </ul>
133
+ * <p>Deletes the resource-based permission policy attached to the secret. To attach a policy to
134
+ * a secret, use <a>PutResourcePolicy</a>.</p>
267
135
  */
268
136
  deleteResourcePolicy(args: DeleteResourcePolicyCommandInput, options?: __HttpHandlerOptions): Promise<DeleteResourcePolicyCommandOutput>;
269
137
  deleteResourcePolicy(args: DeleteResourcePolicyCommandInput, cb: (err: any, data?: DeleteResourcePolicyCommandOutput) => void): void;
270
138
  deleteResourcePolicy(args: DeleteResourcePolicyCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: DeleteResourcePolicyCommandOutput) => void): void;
271
139
  /**
272
- * <p>Deletes an entire secret and all of the versions. You can optionally include a recovery
273
- * window during which you can restore the secret. If you don't specify a recovery window value,
274
- * the operation defaults to 30 days. Secrets Manager attaches a <code>DeletionDate</code> stamp to
140
+ * <p>Deletes a secret and all of its versions. You can specify a recovery
141
+ * window during which you can restore the secret. The minimum recovery window is 7 days.
142
+ * The default recovery window is 30 days. Secrets Manager attaches a <code>DeletionDate</code> stamp to
275
143
  * the secret that specifies the end of the recovery window. At the end of the recovery window,
276
144
  * Secrets Manager deletes the secret permanently.</p>
145
+ * <p>For information about deleting a secret in the console, see <a href="https://docs.aws.amazon.com/secretsmanager/latest/userguide/manage_delete-secret.html">https://docs.aws.amazon.com/secretsmanager/latest/userguide/manage_delete-secret.html</a>. </p>
146
+ * <p>Secrets Manager performs the permanent secret deletion at the end of the waiting period as a
147
+ * background task with low priority. There is no guarantee of a specific time after the
148
+ * recovery window for the permanent delete to occur.</p>
277
149
  * <p>At any time before recovery window ends, you can use <a>RestoreSecret</a> to
278
150
  * remove the <code>DeletionDate</code> and cancel the deletion of the secret.</p>
279
- * <p>You cannot access the encrypted secret information in any secret scheduled for deletion.
280
- * If you need to access that information, you must cancel the deletion with <a>RestoreSecret</a> and then retrieve the information.</p>
281
- * <note>
282
- * <ul>
283
- * <li>
284
- * <p>There is no explicit operation to delete a version of a secret. Instead, remove all
285
- * staging labels from the <code>VersionStage</code> field of a version. That marks the
286
- * version as deprecated and allows Secrets Manager to delete it as needed. Versions without any
287
- * staging labels do not show up in <a>ListSecretVersionIds</a> unless you
288
- * specify <code>IncludeDeprecated</code>.</p>
289
- * </li>
290
- * <li>
291
- * <p>The permanent secret deletion at the end of the waiting period is performed as a
292
- * background task with low priority. There is no guarantee of a specific time after the
293
- * recovery window for the actual delete operation to occur.</p>
294
- * </li>
295
- * </ul>
296
- * </note>
297
- * <p>
298
- * <b>Minimum permissions</b>
299
- * </p>
300
- * <p>To run this command, you must have the following permissions:</p>
301
- * <ul>
302
- * <li>
303
- * <p>secretsmanager:DeleteSecret</p>
304
- * </li>
305
- * </ul>
306
- * <p>
307
- * <b>Related operations</b>
308
- * </p>
309
- * <ul>
310
- * <li>
311
- * <p>To create a secret, use <a>CreateSecret</a>.</p>
312
- * </li>
313
- * <li>
314
- * <p>To cancel deletion of a version of a secret before the recovery window has expired,
315
- * use <a>RestoreSecret</a>.</p>
316
- * </li>
317
- * </ul>
151
+ * <p>In a secret scheduled for deletion, you cannot access the encrypted secret value.
152
+ * To access that information, first cancel the deletion with <a>RestoreSecret</a> and then retrieve the information.</p>
318
153
  */
319
154
  deleteSecret(args: DeleteSecretCommandInput, options?: __HttpHandlerOptions): Promise<DeleteSecretCommandOutput>;
320
155
  deleteSecret(args: DeleteSecretCommandInput, cb: (err: any, data?: DeleteSecretCommandOutput) => void): void;
321
156
  deleteSecret(args: DeleteSecretCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: DeleteSecretCommandOutput) => void): void;
322
157
  /**
323
- * <p>Retrieves the details of a secret. It does not include the encrypted fields. Secrets
324
- * Manager only returns fields populated with a value in the response. </p>
325
- * <p>
326
- * <b>Minimum permissions</b>
327
- * </p>
328
- * <p>To run this command, you must have the following permissions:</p>
329
- * <ul>
330
- * <li>
331
- * <p>secretsmanager:DescribeSecret</p>
332
- * </li>
333
- * </ul>
334
- * <p>
335
- * <b>Related operations</b>
336
- * </p>
337
- * <ul>
338
- * <li>
339
- * <p>To create a secret, use <a>CreateSecret</a>.</p>
340
- * </li>
341
- * <li>
342
- * <p>To modify a secret, use <a>UpdateSecret</a>.</p>
343
- * </li>
344
- * <li>
345
- * <p>To retrieve the encrypted secret information in a version of the secret, use <a>GetSecretValue</a>.</p>
346
- * </li>
347
- * <li>
348
- * <p>To list all of the secrets in the Amazon Web Services account, use <a>ListSecrets</a>.</p>
349
- * </li>
350
- * </ul>
158
+ * <p>Retrieves the details of a secret. It does not include the encrypted secret value. Secrets Manager
159
+ * only returns fields that have a value in the response. </p>
351
160
  */
352
161
  describeSecret(args: DescribeSecretCommandInput, options?: __HttpHandlerOptions): Promise<DescribeSecretCommandOutput>;
353
162
  describeSecret(args: DescribeSecretCommandInput, cb: (err: any, data?: DescribeSecretCommandOutput) => void): void;
354
163
  describeSecret(args: DescribeSecretCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: DescribeSecretCommandOutput) => void): void;
355
164
  /**
356
- * <p>Generates a random password of the specified complexity. This operation is intended for
357
- * use in the Lambda rotation function. Per best practice, we recommend that you specify the
165
+ * <p>Generates a random password. We recommend that you specify the
358
166
  * maximum length and include every character type that the system you are generating a password
359
167
  * for can support.</p>
360
- * <p>
361
- * <b>Minimum permissions</b>
362
- * </p>
363
- * <p>To run this command, you must have the following permissions:</p>
364
- * <ul>
365
- * <li>
366
- * <p>secretsmanager:GetRandomPassword</p>
367
- * </li>
368
- * </ul>
369
168
  */
370
169
  getRandomPassword(args: GetRandomPasswordCommandInput, options?: __HttpHandlerOptions): Promise<GetRandomPasswordCommandOutput>;
371
170
  getRandomPassword(args: GetRandomPasswordCommandInput, cb: (err: any, data?: GetRandomPasswordCommandOutput) => void): void;
372
171
  getRandomPassword(args: GetRandomPasswordCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: GetRandomPasswordCommandOutput) => void): void;
373
172
  /**
374
- * <p>Retrieves the JSON text of the resource-based policy document attached to the specified
375
- * secret. The JSON request string input and response output displays formatted code
376
- * with white space and line breaks for better readability. Submit your input as a single line
377
- * JSON string.</p>
378
- * <p>
379
- * <b>Minimum permissions</b>
380
- * </p>
381
- * <p>To run this command, you must have the following permissions:</p>
382
- * <ul>
383
- * <li>
384
- * <p>secretsmanager:GetResourcePolicy</p>
385
- * </li>
386
- * </ul>
387
- * <p>
388
- * <b>Related operations</b>
389
- * </p>
390
- * <ul>
391
- * <li>
392
- * <p>To attach a resource policy to a secret, use <a>PutResourcePolicy</a>.</p>
393
- * </li>
394
- * <li>
395
- * <p>To delete the resource-based policy attached to a secret, use <a>DeleteResourcePolicy</a>.</p>
396
- * </li>
397
- * <li>
398
- * <p>To list all of the currently available secrets, use <a>ListSecrets</a>.</p>
399
- * </li>
400
- * </ul>
173
+ * <p>Retrieves the JSON text of the resource-based policy document attached to the
174
+ * secret. For more information about permissions policies attached to a secret, see
175
+ * <a href="https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access_resource-policies.html">Permissions
176
+ * policies attached to a secret</a>.</p>
401
177
  */
402
178
  getResourcePolicy(args: GetResourcePolicyCommandInput, options?: __HttpHandlerOptions): Promise<GetResourcePolicyCommandOutput>;
403
179
  getResourcePolicy(args: GetResourcePolicyCommandInput, cb: (err: any, data?: GetResourcePolicyCommandOutput) => void): void;
@@ -406,360 +182,144 @@ export declare class SecretsManager extends SecretsManagerClient {
406
182
  * <p>Retrieves the contents of the encrypted fields <code>SecretString</code> or
407
183
  * <code>SecretBinary</code> from the specified version of a secret, whichever contains
408
184
  * content.</p>
409
- * <p>
410
- * <b>Minimum permissions</b>
411
- * </p>
412
- * <p>To run this command, you must have the following permissions:</p>
413
- * <ul>
414
- * <li>
415
- * <p>secretsmanager:GetSecretValue</p>
416
- * </li>
417
- * <li>
418
- * <p>kms:Decrypt - required only if you use a customer-managed Amazon Web Services KMS key to encrypt the
419
- * secret. You do not need this permission to use the account's default Amazon Web Services managed CMK for
420
- * Secrets Manager.</p>
421
- * </li>
422
- * </ul>
423
- * <p>
424
- * <b>Related operations</b>
425
- * </p>
426
- * <ul>
427
- * <li>
428
- * <p>To create a new version of the secret with different encrypted information, use <a>PutSecretValue</a>.</p>
429
- * </li>
430
- * <li>
431
- * <p>To retrieve the non-encrypted details for the secret, use <a>DescribeSecret</a>.</p>
432
- * </li>
433
- * </ul>
185
+ * <p>For information about retrieving the secret value in the console, see <a href="https://docs.aws.amazon.com/secretsmanager/latest/userguide/retrieving-secrets.html">Retrieve secrets</a>. </p>
186
+ * <p>To run this command, you must have <code>secretsmanager:GetSecretValue</code> permissions.
187
+ * If the secret is encrypted using a customer-managed key instead of the Amazon Web Services managed key
188
+ * <code>aws/secretsmanager</code>, then you also need <code>kms:Decrypt</code> permissions for that key.</p>
434
189
  */
435
190
  getSecretValue(args: GetSecretValueCommandInput, options?: __HttpHandlerOptions): Promise<GetSecretValueCommandOutput>;
436
191
  getSecretValue(args: GetSecretValueCommandInput, cb: (err: any, data?: GetSecretValueCommandOutput) => void): void;
437
192
  getSecretValue(args: GetSecretValueCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: GetSecretValueCommandOutput) => void): void;
438
193
  /**
439
- * <p>Lists all of the secrets that are stored by Secrets Manager in the Amazon Web Services account. To list the
440
- * versions currently stored for a specific secret, use <a>ListSecretVersionIds</a>.
441
- * The encrypted fields <code>SecretString</code> and <code>SecretBinary</code> are not included
442
- * in the output. To get that information, call the <a>GetSecretValue</a>
443
- * operation.</p>
444
- * <note>
445
- * <p>Always check the <code>NextToken</code> response parameter
446
- * when calling any of the <code>List*</code> operations. These operations can occasionally return
447
- * an empty or shorter than expected list of results even when there more results become available.
448
- * When this happens, the <code>NextToken</code> response parameter contains a value to pass to the
449
- * next call to the same API to request the next part of the list.</p>
450
- * </note>
194
+ * <p>Lists the secrets that are stored by Secrets Manager in the Amazon Web Services account. </p>
195
+ * <p>To list the versions of a secret, use <a>ListSecretVersionIds</a>.</p>
196
+ * <p>To get the secret value from <code>SecretString</code> or <code>SecretBinary</code>,
197
+ * call <a>GetSecretValue</a>.</p>
198
+ * <p>For information about finding secrets in the console, see <a href="https://docs.aws.amazon.com/secretsmanager/latest/userguide/manage_search-secret.html">Enhanced search capabilities
199
+ * for secrets in Secrets Manager</a>.</p>
451
200
  * <p>
452
201
  * <b>Minimum
453
202
  * permissions</b>
454
203
  * </p>
455
- * <p>To run this command, you must have the following permissions:</p>
456
- * <ul>
457
- * <li>
458
- * <p>secretsmanager:ListSecrets</p>
459
- * </li>
460
- * </ul>
461
- * <p>
462
- * <b>Related operations</b>
463
- * </p>
464
- * <ul>
465
- * <li>
466
- * <p>To list the versions attached to a secret, use <a>ListSecretVersionIds</a>.</p>
467
- * </li>
468
- * </ul>
204
+ * <p>To run this command, you must have <code>secretsmanager:ListSecrets</code> permissions.</p>
469
205
  */
470
206
  listSecrets(args: ListSecretsCommandInput, options?: __HttpHandlerOptions): Promise<ListSecretsCommandOutput>;
471
207
  listSecrets(args: ListSecretsCommandInput, cb: (err: any, data?: ListSecretsCommandOutput) => void): void;
472
208
  listSecrets(args: ListSecretsCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: ListSecretsCommandOutput) => void): void;
473
209
  /**
474
- * <p>Lists all of the versions attached to the specified secret. The output does not include
475
- * the <code>SecretString</code> or <code>SecretBinary</code> fields. By default, the list
476
- * includes only versions that have at least one staging label in <code>VersionStage</code>
477
- * attached.</p>
478
- * <note>
479
- * <p>Always check the <code>NextToken</code> response parameter
480
- * when calling any of the <code>List*</code> operations. These operations can occasionally return
481
- * an empty or shorter than expected list of results even when there more results become available.
482
- * When this happens, the <code>NextToken</code> response parameter contains a value to pass to the
483
- * next call to the same API to request the next part of the list.</p>
484
- * </note>
210
+ * <p>Lists the versions for a secret. </p>
211
+ * <p>To list the secrets in the account, use <a>ListSecrets</a>.</p>
212
+ * <p>To get the secret value from <code>SecretString</code> or <code>SecretBinary</code>,
213
+ * call <a>GetSecretValue</a>.</p>
214
+ *
485
215
  * <p>
486
216
  * <b>Minimum
487
217
  * permissions</b>
488
218
  * </p>
489
- * <p>To run this command, you must have the following permissions:</p>
490
- * <ul>
491
- * <li>
492
- * <p>secretsmanager:ListSecretVersionIds</p>
493
- * </li>
494
- * </ul>
495
- * <p>
496
- * <b>Related operations</b>
497
- * </p>
498
- * <ul>
499
- * <li>
500
- * <p>To list the secrets in an account, use <a>ListSecrets</a>.</p>
501
- * </li>
502
- * </ul>
219
+ * <p>To run this command, you must have <code>secretsmanager:ListSecretVersionIds</code> permissions.</p>
503
220
  */
504
221
  listSecretVersionIds(args: ListSecretVersionIdsCommandInput, options?: __HttpHandlerOptions): Promise<ListSecretVersionIdsCommandOutput>;
505
222
  listSecretVersionIds(args: ListSecretVersionIdsCommandInput, cb: (err: any, data?: ListSecretVersionIdsCommandOutput) => void): void;
506
223
  listSecretVersionIds(args: ListSecretVersionIdsCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: ListSecretVersionIdsCommandOutput) => void): void;
507
224
  /**
508
- * <p>Attaches the contents of the specified resource-based permission policy to a secret. A
509
- * resource-based policy is optional. Alternatively, you can use IAM identity-based policies
510
- * that specify the secret's Amazon Resource Name (ARN) in the policy statement's
511
- * <code>Resources</code> element. You can also use a combination of both identity-based and
512
- * resource-based policies. The affected users and roles receive the permissions that are
513
- * permitted by all of the relevant policies. For more information, see <a href="http://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access_resource-based-policies.html">Using Resource-Based
514
- * Policies for Amazon Web Services Secrets Manager</a>. For the complete description of the Amazon Web Services policy syntax and
515
- * grammar, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html">IAM JSON
516
- * Policy Reference</a> in the <i>IAM User Guide</i>.</p>
517
- * <p>
518
- * <b>Minimum permissions</b>
225
+ * <p>Attaches a resource-based permission policy to a secret. A resource-based policy is
226
+ * optional. For more information, see <a href="https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access.html">Authentication and access control for Secrets Manager</a>
519
227
  * </p>
520
- * <p>To run this command, you must have the following permissions:</p>
521
- * <ul>
522
- * <li>
523
- * <p>secretsmanager:PutResourcePolicy</p>
524
- * </li>
525
- * </ul>
526
- * <p>
527
- * <b>Related operations</b>
528
- * </p>
529
- * <ul>
530
- * <li>
531
- * <p>To retrieve the resource policy attached to a secret, use <a>GetResourcePolicy</a>.</p>
532
- * </li>
533
- * <li>
534
- * <p>To delete the resource-based policy attached to a secret, use <a>DeleteResourcePolicy</a>.</p>
535
- * </li>
536
- * <li>
537
- * <p>To list all of the currently available secrets, use <a>ListSecrets</a>.</p>
538
- * </li>
539
- * </ul>
228
+ * <p>For information about attaching a policy in the console, see <a href="https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access_resource-based-policies.html">Attach a
229
+ * permissions policy to a secret</a>.</p>
540
230
  */
541
231
  putResourcePolicy(args: PutResourcePolicyCommandInput, options?: __HttpHandlerOptions): Promise<PutResourcePolicyCommandOutput>;
542
232
  putResourcePolicy(args: PutResourcePolicyCommandInput, cb: (err: any, data?: PutResourcePolicyCommandOutput) => void): void;
543
233
  putResourcePolicy(args: PutResourcePolicyCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: PutResourcePolicyCommandOutput) => void): void;
544
234
  /**
545
- * <p>Stores a new encrypted secret value in the specified secret. To do this, the operation
546
- * creates a new version and attaches it to the secret. The version can contain a new
547
- * <code>SecretString</code> value or a new <code>SecretBinary</code> value. You can also
548
- * specify the staging labels that are initially attached to the new version.</p>
235
+ * <p>Creates a new version with a new encrypted secret value and attaches it to the secret. The
236
+ * version can contain a new <code>SecretString</code> value or a new <code>SecretBinary</code> value. </p>
549
237
  * <p>We recommend you avoid calling <code>PutSecretValue</code> at a sustained rate of more than
550
238
  * once every 10 minutes. When you update the secret value, Secrets Manager creates a new version
551
239
  * of the secret. Secrets Manager removes outdated versions when there are more than 100, but it does not
552
240
  * remove versions created less than 24 hours ago. If you call <code>PutSecretValue</code> more
553
241
  * than once every 10 minutes, you create more versions than Secrets Manager removes, and you will reach
554
242
  * the quota for secret versions.</p>
555
- * <ul>
556
- * <li>
557
- * <p>If this operation creates the first version for the secret then Secrets Manager
558
- * automatically attaches the staging label <code>AWSCURRENT</code> to the new version.</p>
559
- * </li>
560
- * <li>
561
- * <p>If you do not specify a value for VersionStages then Secrets Manager automatically
562
- * moves the staging label <code>AWSCURRENT</code> to this new version.</p>
563
- * </li>
564
- * <li>
565
- * <p>If this operation moves the staging label <code>AWSCURRENT</code> from another version to this
566
- * version, then Secrets Manager also automatically moves the staging label <code>AWSPREVIOUS</code> to
567
- * the version that <code>AWSCURRENT</code> was removed from.</p>
568
- * </li>
569
- * <li>
570
- * <p>This operation is idempotent. If a version with a <code>VersionId</code> with the same
571
- * value as the <code>ClientRequestToken</code> parameter already exists and you specify the
572
- * same secret data, the operation succeeds but does nothing. However, if the secret data is
573
- * different, then the operation fails because you cannot modify an existing version; you can
574
- * only create new ones.</p>
575
- * </li>
576
- * </ul>
577
- * <note>
578
- * <ul>
579
- * <li>
580
- * <p>If you call an operation to encrypt or decrypt the <code>SecretString</code>
581
- * or <code>SecretBinary</code> for a secret in the same account as the calling user and that
582
- * secret doesn't specify a Amazon Web Services KMS encryption key, Secrets Manager uses the account's default
583
- * Amazon Web Services managed customer master key (CMK) with the alias <code>aws/secretsmanager</code>. If this key
584
- * doesn't already exist in your account then Secrets Manager creates it for you automatically. All
585
- * users and roles in the same Amazon Web Services account automatically have access to use the default CMK.
586
- * Note that if an Secrets Manager API call results in Amazon Web Services creating the account's
587
- * Amazon Web Services-managed CMK, it can result in a one-time significant delay in returning the
588
- * result.</p>
589
- * </li>
590
- * <li>
591
- * <p>If the secret resides in a different Amazon Web Services account from the credentials calling an API that
592
- * requires encryption or decryption of the secret value then you must create and use a custom
593
- * Amazon Web Services KMS CMK because you can't access the default CMK for the account using credentials
594
- * from a different Amazon Web Services account. Store the ARN of the CMK in the secret when you create the
595
- * secret or when you update it by including it in the <code>KMSKeyId</code>. If you call an
596
- * API that must encrypt or decrypt <code>SecretString</code> or <code>SecretBinary</code>
597
- * using credentials from a different account then the Amazon Web Services KMS key policy must grant cross-account
598
- * access to that other account's user or role for both the kms:GenerateDataKey and
599
- * kms:Decrypt operations.</p>
600
- * </li>
601
- * </ul>
602
- * </note>
603
- * <p>
604
- * <b>Minimum permissions</b>
605
- * </p>
606
- * <p>To run this command, you must have the following permissions:</p>
607
- * <ul>
608
- * <li>
609
- * <p>secretsmanager:PutSecretValue</p>
610
- * </li>
611
- * <li>
612
- * <p>kms:GenerateDataKey - needed only if you use a customer-managed Amazon Web Services KMS key to encrypt
613
- * the secret. You do not need this permission to use the account's default Amazon Web Services managed CMK
614
- * for Secrets Manager.</p>
615
- * </li>
616
- * </ul>
617
- * <p>
618
- * <b>Related operations</b>
619
- * </p>
620
- * <ul>
621
- * <li>
622
- * <p>To retrieve the encrypted value you store in the version of a secret, use <a>GetSecretValue</a>.</p>
623
- * </li>
624
- * <li>
625
- * <p>To create a secret, use <a>CreateSecret</a>.</p>
626
- * </li>
627
- * <li>
628
- * <p>To get the details for a secret, use <a>DescribeSecret</a>.</p>
629
- * </li>
630
- * <li>
631
- * <p>To list the versions attached to a secret, use <a>ListSecretVersionIds</a>.</p>
632
- * </li>
633
- * </ul>
243
+ * <p>You can specify the staging labels to attach to the new version in <code>VersionStages</code>.
244
+ * If you don't include <code>VersionStages</code>, then Secrets Manager automatically
245
+ * moves the staging label <code>AWSCURRENT</code> to this version. If this operation creates
246
+ * the first version for the secret, then Secrets Manager
247
+ * automatically attaches the staging label <code>AWSCURRENT</code> to it .</p>
248
+ * <p>If this operation moves the staging label <code>AWSCURRENT</code> from another version to this
249
+ * version, then Secrets Manager also automatically moves the staging label <code>AWSPREVIOUS</code> to
250
+ * the version that <code>AWSCURRENT</code> was removed from.</p>
251
+ * <p>This operation is idempotent. If a version with a <code>VersionId</code> with the same
252
+ * value as the <code>ClientRequestToken</code> parameter already exists, and you specify the
253
+ * same secret data, the operation succeeds but does nothing. However, if the secret data is
254
+ * different, then the operation fails because you can't modify an existing version; you can
255
+ * only create new ones.</p>
634
256
  */
635
257
  putSecretValue(args: PutSecretValueCommandInput, options?: __HttpHandlerOptions): Promise<PutSecretValueCommandOutput>;
636
258
  putSecretValue(args: PutSecretValueCommandInput, cb: (err: any, data?: PutSecretValueCommandOutput) => void): void;
637
259
  putSecretValue(args: PutSecretValueCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: PutSecretValueCommandOutput) => void): void;
638
260
  /**
639
- * <p>Remove regions from replication.</p>
261
+ * <p>For a secret that is replicated to other Regions, deletes the secret replicas from the Regions you specify.</p>
640
262
  */
641
263
  removeRegionsFromReplication(args: RemoveRegionsFromReplicationCommandInput, options?: __HttpHandlerOptions): Promise<RemoveRegionsFromReplicationCommandOutput>;
642
264
  removeRegionsFromReplication(args: RemoveRegionsFromReplicationCommandInput, cb: (err: any, data?: RemoveRegionsFromReplicationCommandOutput) => void): void;
643
265
  removeRegionsFromReplication(args: RemoveRegionsFromReplicationCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: RemoveRegionsFromReplicationCommandOutput) => void): void;
644
266
  /**
645
- * <p>Converts an existing secret to a multi-Region secret and begins replication the secret to a
646
- * list of new regions. </p>
267
+ * <p>Replicates the secret to a new Regions. See <a href="https://docs.aws.amazon.com/secretsmanager/latest/userguide/create-manage-multi-region-secrets.html">Multi-Region secrets</a>.</p>
647
268
  */
648
269
  replicateSecretToRegions(args: ReplicateSecretToRegionsCommandInput, options?: __HttpHandlerOptions): Promise<ReplicateSecretToRegionsCommandOutput>;
649
270
  replicateSecretToRegions(args: ReplicateSecretToRegionsCommandInput, cb: (err: any, data?: ReplicateSecretToRegionsCommandOutput) => void): void;
650
271
  replicateSecretToRegions(args: ReplicateSecretToRegionsCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: ReplicateSecretToRegionsCommandOutput) => void): void;
651
272
  /**
652
273
  * <p>Cancels the scheduled deletion of a secret by removing the <code>DeletedDate</code> time
653
- * stamp. This makes the secret accessible to query once again.</p>
654
- * <p>
655
- * <b>Minimum permissions</b>
656
- * </p>
657
- * <p>To run this command, you must have the following permissions:</p>
658
- * <ul>
659
- * <li>
660
- * <p>secretsmanager:RestoreSecret</p>
661
- * </li>
662
- * </ul>
663
- * <p>
664
- * <b>Related operations</b>
665
- * </p>
666
- * <ul>
667
- * <li>
668
- * <p>To delete a secret, use <a>DeleteSecret</a>.</p>
669
- * </li>
670
- * </ul>
274
+ * stamp. You can access a secret again after it has been restored.</p>
671
275
  */
672
276
  restoreSecret(args: RestoreSecretCommandInput, options?: __HttpHandlerOptions): Promise<RestoreSecretCommandOutput>;
673
277
  restoreSecret(args: RestoreSecretCommandInput, cb: (err: any, data?: RestoreSecretCommandOutput) => void): void;
674
278
  restoreSecret(args: RestoreSecretCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: RestoreSecretCommandOutput) => void): void;
675
279
  /**
676
- * <p>Configures and starts the asynchronous process of rotating this secret. If you include the
677
- * configuration parameters, the operation sets those values for the secret and then immediately
678
- * starts a rotation. If you do not include the configuration parameters, the operation starts a
679
- * rotation with the values already stored in the secret. After the rotation completes, the
680
- * protected service and its clients all use the new version of the secret. </p>
681
- * <p>This required configuration information includes the ARN of an Amazon Web Services Lambda function and
682
- * optionally, the time between scheduled rotations. The Lambda rotation function creates a new
683
- * version of the secret and creates or updates the credentials on the protected service to
684
- * match. After testing the new credentials, the function marks the new secret with the staging
685
- * label <code>AWSCURRENT</code> so that your clients all immediately begin to use the new version. For more
686
- * information about rotating secrets and how to configure a Lambda function to rotate the
687
- * secrets for your protected service, see <a href="https://docs.aws.amazon.com/secretsmanager/latest/userguide/rotating-secrets.html">Rotating Secrets in Amazon Web Services Secrets Manager</a> in the
688
- * <i>Amazon Web Services Secrets Manager User Guide</i>.</p>
689
- * <p>Secrets Manager schedules the next rotation when the previous
690
- * one completes. Secrets Manager schedules the date by adding the rotation interval (number of days) to the
691
- * actual date of the last rotation. The service chooses the hour within that 24-hour date window
692
- * randomly. The minute is also chosen somewhat randomly, but weighted towards the top of the hour
693
- * and influenced by a variety of factors that help distribute load.</p>
694
- * <p>The
695
- * rotation function must end with the versions of the secret in one of two states:</p>
696
- * <ul>
697
- * <li>
698
- * <p>The <code>AWSPENDING</code> and <code>AWSCURRENT</code> staging labels are attached to the same version of
699
- * the secret, or</p>
700
- * </li>
701
- * <li>
702
- * <p>The <code>AWSPENDING</code> staging label is not attached to any version of the secret.</p>
703
- * </li>
704
- * </ul>
280
+ * <p>Configures and starts the asynchronous process of rotating the secret.</p>
281
+ * <p>If you include the
282
+ * configuration parameters, the operation sets the values for the secret and then immediately
283
+ * starts a rotation. If you don't include the configuration parameters, the operation starts a
284
+ * rotation with the values already stored in the secret. For more information about rotation,
285
+ * see <a href="https://docs.aws.amazon.com/secretsmanager/latest/userguide/rotating-secrets.html">Rotate secrets</a>.</p>
286
+ * <p>To configure rotation, you include the ARN of an Amazon Web Services Lambda function and the schedule
287
+ * for the rotation. The Lambda rotation function creates a new
288
+ * version of the secret and creates or updates the credentials on the database or service to
289
+ * match. After testing the new credentials, the function marks the new secret version with the staging
290
+ * label <code>AWSCURRENT</code>. Then anyone who retrieves the secret gets the new version. For more
291
+ * information, see <a href="https://docs.aws.amazon.com/secretsmanager/latest/userguide/rotate-secrets_how.html">How rotation works</a>.</p>
292
+ * <p>When rotation is successful, the <code>AWSPENDING</code> staging label might be attached to the same
293
+ * version as the <code>AWSCURRENT</code> version, or it might not be attached to any version.</p>
705
294
  * <p>If the <code>AWSPENDING</code> staging label is present but not attached to the same version as
706
- * <code>AWSCURRENT</code> then any later invocation of <code>RotateSecret</code> assumes that a previous
295
+ * <code>AWSCURRENT</code>, then any later invocation of <code>RotateSecret</code> assumes that a previous
707
296
  * rotation request is still in progress and returns an error.</p>
708
- * <p>
709
- * <b>Minimum permissions</b>
710
- * </p>
711
- * <p>To run this command, you must have the following permissions:</p>
712
- * <ul>
713
- * <li>
714
- * <p>secretsmanager:RotateSecret</p>
715
- * </li>
716
- * <li>
717
- * <p>lambda:InvokeFunction (on the function specified in the secret's metadata)</p>
718
- * </li>
719
- * </ul>
720
- * <p>
721
- * <b>Related operations</b>
722
- * </p>
723
- * <ul>
724
- * <li>
725
- * <p>To list the secrets in your account, use <a>ListSecrets</a>.</p>
726
- * </li>
727
- * <li>
728
- * <p>To get the details for a version of a secret, use <a>DescribeSecret</a>.</p>
729
- * </li>
730
- * <li>
731
- * <p>To create a new version of a secret, use <a>CreateSecret</a>.</p>
732
- * </li>
733
- * <li>
734
- * <p>To attach staging labels to or remove staging labels from a version of a secret, use
735
- * <a>UpdateSecretVersionStage</a>.</p>
736
- * </li>
737
- * </ul>
297
+ * <p>To run this command, you must have <code>secretsmanager:RotateSecret</code> permissions and
298
+ * <code>lambda:InvokeFunction</code> permissions on the function specified in the secret's metadata.</p>
738
299
  */
739
300
  rotateSecret(args: RotateSecretCommandInput, options?: __HttpHandlerOptions): Promise<RotateSecretCommandOutput>;
740
301
  rotateSecret(args: RotateSecretCommandInput, cb: (err: any, data?: RotateSecretCommandOutput) => void): void;
741
302
  rotateSecret(args: RotateSecretCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: RotateSecretCommandOutput) => void): void;
742
303
  /**
743
- * <p>Removes the secret from replication and promotes the secret to a regional secret in the replica Region.</p>
304
+ * <p>Removes the link between the replica secret and the primary secret and promotes the replica to a primary secret in the replica Region.</p>
305
+ * <p>You must call this operation from the Region in which you want to promote the replica to a primary secret.</p>
744
306
  */
745
307
  stopReplicationToReplica(args: StopReplicationToReplicaCommandInput, options?: __HttpHandlerOptions): Promise<StopReplicationToReplicaCommandOutput>;
746
308
  stopReplicationToReplica(args: StopReplicationToReplicaCommandInput, cb: (err: any, data?: StopReplicationToReplicaCommandOutput) => void): void;
747
309
  stopReplicationToReplica(args: StopReplicationToReplicaCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: StopReplicationToReplicaCommandOutput) => void): void;
748
310
  /**
749
- * <p>Attaches one or more tags, each consisting of a key name and a value, to the specified
750
- * secret. Tags are part of the secret's overall metadata, and are not associated with any
751
- * specific version of the secret. This operation only appends tags to the existing list of tags.
752
- * To remove tags, you must use <a>UntagResource</a>.</p>
753
- * <p>The following basic restrictions apply to tags:</p>
311
+ * <p>Attaches tags to a secret. Tags consist of a key name and a value. Tags are part of the
312
+ * secret's metadata. They are not associated with specific versions of the secret. This operation appends tags to the existing list of tags.</p>
313
+ * <p>The following restrictions apply to tags:</p>
754
314
  * <ul>
755
315
  * <li>
756
- * <p>Maximum number of tags per secret50</p>
316
+ * <p>Maximum number of tags per secret: 50</p>
757
317
  * </li>
758
318
  * <li>
759
- * <p>Maximum key length127 Unicode characters in UTF-8</p>
319
+ * <p>Maximum key length: 127 Unicode characters in UTF-8</p>
760
320
  * </li>
761
321
  * <li>
762
- * <p>Maximum value length255 Unicode characters in UTF-8</p>
322
+ * <p>Maximum value length: 255 Unicode characters in UTF-8</p>
763
323
  * </li>
764
324
  * <li>
765
325
  * <p>Tag keys and values are case sensitive.</p>
@@ -771,43 +331,24 @@ export declare class SecretsManager extends SecretsManagerClient {
771
331
  * </li>
772
332
  * <li>
773
333
  * <p>If you use your tagging schema across multiple services and resources,
774
- * remember other services might have restrictions on allowed characters. Generally
334
+ * other services might have restrictions on allowed characters. Generally
775
335
  * allowed characters: letters, spaces, and numbers representable in UTF-8, plus the
776
336
  * following special characters: + - = . _ : / @.</p>
777
337
  * </li>
778
338
  * </ul>
339
+ *
779
340
  * <important>
780
341
  * <p>If you use tags as part of your security strategy, then adding or removing a tag can
781
342
  * change permissions. If successfully completing this operation would result in you losing
782
343
  * your permissions for this secret, then the operation is blocked and returns an Access Denied
783
344
  * error.</p>
784
345
  * </important>
785
- * <p>
786
- * <b>Minimum permissions</b>
787
- * </p>
788
- * <p>To run this command, you must have the following permissions:</p>
789
- * <ul>
790
- * <li>
791
- * <p>secretsmanager:TagResource</p>
792
- * </li>
793
- * </ul>
794
- * <p>
795
- * <b>Related operations</b>
796
- * </p>
797
- * <ul>
798
- * <li>
799
- * <p>To remove one or more tags from the collection attached to a secret, use <a>UntagResource</a>.</p>
800
- * </li>
801
- * <li>
802
- * <p>To view the list of tags attached to a secret, use <a>DescribeSecret</a>.</p>
803
- * </li>
804
- * </ul>
805
346
  */
806
347
  tagResource(args: TagResourceCommandInput, options?: __HttpHandlerOptions): Promise<TagResourceCommandOutput>;
807
348
  tagResource(args: TagResourceCommandInput, cb: (err: any, data?: TagResourceCommandOutput) => void): void;
808
349
  tagResource(args: TagResourceCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: TagResourceCommandOutput) => void): void;
809
350
  /**
810
- * <p>Removes one or more tags from the specified secret.</p>
351
+ * <p>Removes specific tags from a secret.</p>
811
352
  * <p>This operation is idempotent. If a requested tag is not attached to the secret, no error
812
353
  * is returned and the secret metadata is unchanged.</p>
813
354
  * <important>
@@ -816,35 +357,13 @@ export declare class SecretsManager extends SecretsManagerClient {
816
357
  * permissions for this secret, then the operation is blocked and returns an Access Denied
817
358
  * error.</p>
818
359
  * </important>
819
- * <p>
820
- * <b>Minimum permissions</b>
821
- * </p>
822
- * <p>To run this command, you must have the following permissions:</p>
823
- * <ul>
824
- * <li>
825
- * <p>secretsmanager:UntagResource</p>
826
- * </li>
827
- * </ul>
828
- * <p>
829
- * <b>Related operations</b>
830
- * </p>
831
- * <ul>
832
- * <li>
833
- * <p>To add one or more tags to the collection attached to a secret, use <a>TagResource</a>.</p>
834
- * </li>
835
- * <li>
836
- * <p>To view the list of tags attached to a secret, use <a>DescribeSecret</a>.</p>
837
- * </li>
838
- * </ul>
839
360
  */
840
361
  untagResource(args: UntagResourceCommandInput, options?: __HttpHandlerOptions): Promise<UntagResourceCommandOutput>;
841
362
  untagResource(args: UntagResourceCommandInput, cb: (err: any, data?: UntagResourceCommandOutput) => void): void;
842
363
  untagResource(args: UntagResourceCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: UntagResourceCommandOutput) => void): void;
843
364
  /**
844
- * <p>Modifies many of the details of the specified secret. </p>
845
- * <p>To change the secret value, you can also use <a>PutSecretValue</a>.</p>
846
- * <p>To change the rotation configuration of a secret, use <a>RotateSecret</a>
847
- * instead.</p>
365
+ * <p>Modifies the details of a secret, including metadata and the secret value. To change the secret value, you can also use <a>PutSecretValue</a>.</p>
366
+ * <p>To change the rotation configuration of a secret, use <a>RotateSecret</a> instead.</p>
848
367
  *
849
368
  * <p>We recommend you avoid calling <code>UpdateSecret</code> at a sustained rate of more than
850
369
  * once every 10 minutes. When you call <code>UpdateSecret</code> to update the secret value, Secrets Manager creates a new version
@@ -852,98 +371,35 @@ export declare class SecretsManager extends SecretsManagerClient {
852
371
  * remove versions created less than 24 hours ago. If you update the secret value more
853
372
  * than once every 10 minutes, you create more versions than Secrets Manager removes, and you will reach
854
373
  * the quota for secret versions.</p>
855
- * <note>
856
- * <p>The Secrets Manager console uses only the <code>SecretString</code> parameter and therefore limits
857
- * you to encrypting and storing only a text string. To encrypt and store binary data as part
858
- * of the version of a secret, you must use either the Amazon Web Services CLI or one of the Amazon Web Services
859
- * SDKs.</p>
860
- * </note>
861
- * <ul>
862
- * <li>
863
- * <p>If a version with a <code>VersionId</code> with the same value as the
864
- * <code>ClientRequestToken</code> parameter already exists, the operation results in an
865
- * error. You cannot modify an existing version, you can only create a new version.</p>
866
- * </li>
867
- * <li>
868
- * <p>If you include <code>SecretString</code> or <code>SecretBinary</code> to create a new
869
- * secret version, Secrets Manager automatically attaches the staging label <code>AWSCURRENT</code> to the new
870
- * version. </p>
871
- * </li>
872
- * </ul>
873
- * <note>
874
- * <ul>
875
- * <li>
876
- * <p>If you call an operation to encrypt or decrypt the <code>SecretString</code>
877
- * or <code>SecretBinary</code> for a secret in the same account as the calling user and that
878
- * secret doesn't specify a Amazon Web Services KMS encryption key, Secrets Manager uses the account's default
879
- * Amazon Web Services managed customer master key (CMK) with the alias <code>aws/secretsmanager</code>. If this key
880
- * doesn't already exist in your account then Secrets Manager creates it for you automatically. All
881
- * users and roles in the same Amazon Web Services account automatically have access to use the default CMK.
882
- * Note that if an Secrets Manager API call results in Amazon Web Services creating the account's
883
- * Amazon Web Services-managed CMK, it can result in a one-time significant delay in returning the
884
- * result.</p>
885
- * </li>
886
- * <li>
887
- * <p>If the secret resides in a different Amazon Web Services account from the credentials calling an API that
888
- * requires encryption or decryption of the secret value then you must create and use a custom
889
- * Amazon Web Services KMS CMK because you can't access the default CMK for the account using credentials
890
- * from a different Amazon Web Services account. Store the ARN of the CMK in the secret when you create the
891
- * secret or when you update it by including it in the <code>KMSKeyId</code>. If you call an
892
- * API that must encrypt or decrypt <code>SecretString</code> or <code>SecretBinary</code>
893
- * using credentials from a different account then the Amazon Web Services KMS key policy must grant cross-account
894
- * access to that other account's user or role for both the kms:GenerateDataKey and
895
- * kms:Decrypt operations.</p>
896
- * </li>
897
- * </ul>
898
- * </note>
899
- * <p>
900
- * <b>Minimum permissions</b>
901
- * </p>
902
- * <p>To run this command, you must have the following permissions:</p>
903
- * <ul>
904
- * <li>
905
- * <p>secretsmanager:UpdateSecret</p>
906
- * </li>
907
- * <li>
908
- * <p>kms:GenerateDataKey - needed only if you use a custom Amazon Web Services KMS key to encrypt the secret.
909
- * You do not need this permission to use the account's Amazon Web Services managed CMK for
910
- * Secrets Manager.</p>
911
- * </li>
912
- * <li>
913
- * <p>kms:Decrypt - needed only if you use a custom Amazon Web Services KMS key to encrypt the secret. You do
914
- * not need this permission to use the account's Amazon Web Services managed CMK for Secrets Manager.</p>
915
- * </li>
916
- * </ul>
917
- * <p>
918
- * <b>Related operations</b>
919
- * </p>
920
- * <ul>
921
- * <li>
922
- * <p>To create a new secret, use <a>CreateSecret</a>.</p>
923
- * </li>
924
- * <li>
925
- * <p>To add only a new version to an existing secret, use <a>PutSecretValue</a>.</p>
926
- * </li>
927
- * <li>
928
- * <p>To get the details for a secret, use <a>DescribeSecret</a>.</p>
929
- * </li>
930
- * <li>
931
- * <p>To list the versions contained in a secret, use <a>ListSecretVersionIds</a>.</p>
932
- * </li>
933
- * </ul>
374
+ * <p>If you include <code>SecretString</code> or <code>SecretBinary</code> to create a new
375
+ * secret version, Secrets Manager automatically attaches the staging label <code>AWSCURRENT</code> to the new
376
+ * version. </p>
377
+ * <p>If you call this operation with a <code>VersionId</code> that matches an existing version's
378
+ * <code>ClientRequestToken</code>, the operation results in an error. You can't modify an existing
379
+ * version, you can only create a new version. To remove a version, remove all staging labels from it. See
380
+ * <a>UpdateSecretVersionStage</a>.</p>
381
+ * <p>If you don't specify an KMS encryption key, Secrets Manager uses the Amazon Web Services managed key
382
+ * <code>aws/secretsmanager</code>. If this key doesn't already exist in your account, then Secrets Manager
383
+ * creates it for you automatically. All users and roles in the Amazon Web Services account automatically have access
384
+ * to use <code>aws/secretsmanager</code>. Creating <code>aws/secretsmanager</code> can result in a one-time
385
+ * significant delay in returning the result. </p>
386
+ * <p>If the secret is in a different Amazon Web Services account from the credentials calling the API, then you can't
387
+ * use <code>aws/secretsmanager</code> to encrypt the secret, and you must create and use a customer managed key. </p>
388
+ *
389
+ * <p>To run this command, you must have <code>secretsmanager:UpdateSecret</code> permissions. If you use a
390
+ * customer managed key, you must also have <code>kms:GenerateDataKey</code> and <code>kms:Decrypt</code> permissions .</p>
934
391
  */
935
392
  updateSecret(args: UpdateSecretCommandInput, options?: __HttpHandlerOptions): Promise<UpdateSecretCommandOutput>;
936
393
  updateSecret(args: UpdateSecretCommandInput, cb: (err: any, data?: UpdateSecretCommandOutput) => void): void;
937
394
  updateSecret(args: UpdateSecretCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: UpdateSecretCommandOutput) => void): void;
938
395
  /**
939
- * <p>Modifies the staging labels attached to a version of a secret. Staging labels are used to
940
- * track a version as it progresses through the secret rotation process. You can attach a staging
941
- * label to only one version of a secret at a time. If a staging label to be added is already
942
- * attached to another version, then it is moved--removed from the other version first and
943
- * then attached to this one. For more information about staging labels, see <a href="https://docs.aws.amazon.com/secretsmanager/latest/userguide/terms-concepts.html#term_staging-label">Staging
944
- * Labels</a> in the <i>Amazon Web Services Secrets Manager User Guide</i>. </p>
396
+ * <p>Modifies the staging labels attached to a version of a secret. Secrets Manager uses staging labels to
397
+ * track a version as it progresses through the secret rotation process. Each staging label can be
398
+ * attached to only one version at a time. To add a staging label to a version when it is already
399
+ * attached to another version, Secrets Manager first removes it from the other version first and
400
+ * then attaches it to this one. For more information about versions and staging labels, see <a href="https://docs.aws.amazon.com/secretsmanager/latest/userguide/getting-started.html#term_version">Concepts: Version</a>. </p>
945
401
  * <p>The staging labels that you specify in the <code>VersionStage</code> parameter are added
946
- * to the existing list of staging labels--they don't replace it.</p>
402
+ * to the existing list of staging labels for the version. </p>
947
403
  * <p>You can move the <code>AWSCURRENT</code> staging label to this version by including it in this
948
404
  * call.</p>
949
405
  * <note>
@@ -952,41 +408,18 @@ export declare class SecretsManager extends SecretsManagerClient {
952
408
  * </note>
953
409
  * <p>If this action results in the last label being removed from a version, then the version is
954
410
  * considered to be 'deprecated' and can be deleted by Secrets Manager.</p>
955
- * <p>
956
- * <b>Minimum permissions</b>
957
- * </p>
958
- * <p>To run this command, you must have the following permissions:</p>
959
- * <ul>
960
- * <li>
961
- * <p>secretsmanager:UpdateSecretVersionStage</p>
962
- * </li>
963
- * </ul>
964
- * <p>
965
- * <b>Related operations</b>
966
- * </p>
967
- * <ul>
968
- * <li>
969
- * <p>To get the list of staging labels that are currently associated with a version of a
970
- * secret, use <code>
971
- * <a>DescribeSecret</a>
972
- * </code> and examine the
973
- * <code>SecretVersionsToStages</code> response value. </p>
974
- * </li>
975
- * </ul>
976
411
  */
977
412
  updateSecretVersionStage(args: UpdateSecretVersionStageCommandInput, options?: __HttpHandlerOptions): Promise<UpdateSecretVersionStageCommandOutput>;
978
413
  updateSecretVersionStage(args: UpdateSecretVersionStageCommandInput, cb: (err: any, data?: UpdateSecretVersionStageCommandOutput) => void): void;
979
414
  updateSecretVersionStage(args: UpdateSecretVersionStageCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: UpdateSecretVersionStageCommandOutput) => void): void;
980
415
  /**
981
- * <p>Validates that the resource policy does not grant a wide range of IAM principals access to
982
- * your secret. The JSON request string input and response output displays formatted code
983
- * with white space and line breaks for better readability. Submit your input as a single line
984
- * JSON string. A resource-based policy is optional for secrets.</p>
985
- * <p>The API performs three checks when validating the secret:</p>
416
+ * <p>Validates that a resource policy does not grant a wide range of principals access to
417
+ * your secret. A resource-based policy is optional for secrets.</p>
418
+ * <p>The API performs three checks when validating the policy:</p>
986
419
  * <ul>
987
420
  * <li>
988
- * <p>Sends a call to <a href="https://aws.amazon.com/blogs/security/protect-sensitive-data-in-the-cloud-with-automated-reasoning-zelkova/">Zelkova</a>, an automated reasoning engine, to ensure your Resource Policy does not
989
- * allow broad access to your secret.</p>
421
+ * <p>Sends a call to <a href="https://aws.amazon.com/blogs/security/protect-sensitive-data-in-the-cloud-with-automated-reasoning-zelkova/">Zelkova</a>, an automated reasoning engine, to ensure your resource policy does not
422
+ * allow broad access to your secret, for example policies that use a wildcard for the principal.</p>
990
423
  * </li>
991
424
  * <li>
992
425
  * <p>Checks for correct syntax in a policy.</p>
@@ -995,24 +428,6 @@ export declare class SecretsManager extends SecretsManagerClient {
995
428
  * <p>Verifies the policy does not lock out a caller.</p>
996
429
  * </li>
997
430
  * </ul>
998
- *
999
- *
1000
- * <p>
1001
- * <b>Minimum Permissions</b>
1002
- * </p>
1003
- * <p>You must have the permissions required to access the following APIs:</p>
1004
- * <ul>
1005
- * <li>
1006
- * <p>
1007
- * <code>secretsmanager:PutResourcePolicy</code>
1008
- * </p>
1009
- * </li>
1010
- * <li>
1011
- * <p>
1012
- * <code>secretsmanager:ValidateResourcePolicy</code>
1013
- * </p>
1014
- * </li>
1015
- * </ul>
1016
431
  */
1017
432
  validateResourcePolicy(args: ValidateResourcePolicyCommandInput, options?: __HttpHandlerOptions): Promise<ValidateResourcePolicyCommandOutput>;
1018
433
  validateResourcePolicy(args: ValidateResourcePolicyCommandInput, cb: (err: any, data?: ValidateResourcePolicyCommandOutput) => void): void;