@aws-sdk/client-kms 3.278.0 → 3.281.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 (59) hide show
  1. package/README.md +409 -6
  2. package/dist-cjs/endpoint/ruleset.js +3 -3
  3. package/dist-es/endpoint/ruleset.js +3 -3
  4. package/dist-types/KMS.d.ts +17 -78
  5. package/dist-types/KMSClient.d.ts +6 -6
  6. package/dist-types/commands/CancelKeyDeletionCommand.d.ts +6 -0
  7. package/dist-types/commands/ConnectCustomKeyStoreCommand.d.ts +6 -1
  8. package/dist-types/commands/CreateAliasCommand.d.ts +6 -1
  9. package/dist-types/commands/CreateCustomKeyStoreCommand.d.ts +6 -0
  10. package/dist-types/commands/CreateGrantCommand.d.ts +6 -0
  11. package/dist-types/commands/CreateKeyCommand.d.ts +6 -4
  12. package/dist-types/commands/DecryptCommand.d.ts +11 -5
  13. package/dist-types/commands/DeleteAliasCommand.d.ts +6 -0
  14. package/dist-types/commands/DeleteCustomKeyStoreCommand.d.ts +6 -1
  15. package/dist-types/commands/DeleteImportedKeyMaterialCommand.d.ts +6 -1
  16. package/dist-types/commands/DescribeCustomKeyStoresCommand.d.ts +6 -0
  17. package/dist-types/commands/DescribeKeyCommand.d.ts +6 -1
  18. package/dist-types/commands/DisableKeyCommand.d.ts +6 -1
  19. package/dist-types/commands/DisableKeyRotationCommand.d.ts +6 -1
  20. package/dist-types/commands/DisconnectCustomKeyStoreCommand.d.ts +6 -1
  21. package/dist-types/commands/EnableKeyCommand.d.ts +6 -1
  22. package/dist-types/commands/EnableKeyRotationCommand.d.ts +6 -1
  23. package/dist-types/commands/EncryptCommand.d.ts +6 -3
  24. package/dist-types/commands/GenerateDataKeyCommand.d.ts +8 -8
  25. package/dist-types/commands/GenerateDataKeyPairCommand.d.ts +6 -6
  26. package/dist-types/commands/GenerateDataKeyPairWithoutPlaintextCommand.d.ts +6 -2
  27. package/dist-types/commands/GenerateDataKeyWithoutPlaintextCommand.d.ts +6 -6
  28. package/dist-types/commands/GenerateMacCommand.d.ts +6 -0
  29. package/dist-types/commands/GenerateRandomCommand.d.ts +6 -1
  30. package/dist-types/commands/GetKeyPolicyCommand.d.ts +6 -1
  31. package/dist-types/commands/GetKeyRotationStatusCommand.d.ts +6 -1
  32. package/dist-types/commands/GetParametersForImportCommand.d.ts +6 -1
  33. package/dist-types/commands/GetPublicKeyCommand.d.ts +6 -2
  34. package/dist-types/commands/ImportKeyMaterialCommand.d.ts +6 -1
  35. package/dist-types/commands/ListAliasesCommand.d.ts +6 -2
  36. package/dist-types/commands/ListGrantsCommand.d.ts +6 -1
  37. package/dist-types/commands/ListKeyPoliciesCommand.d.ts +6 -1
  38. package/dist-types/commands/ListKeysCommand.d.ts +6 -1
  39. package/dist-types/commands/ListResourceTagsCommand.d.ts +6 -1
  40. package/dist-types/commands/ListRetirableGrantsCommand.d.ts +6 -1
  41. package/dist-types/commands/PutKeyPolicyCommand.d.ts +6 -1
  42. package/dist-types/commands/ReEncryptCommand.d.ts +6 -3
  43. package/dist-types/commands/ReplicateKeyCommand.d.ts +6 -0
  44. package/dist-types/commands/RetireGrantCommand.d.ts +6 -0
  45. package/dist-types/commands/RevokeGrantCommand.d.ts +6 -0
  46. package/dist-types/commands/ScheduleKeyDeletionCommand.d.ts +6 -2
  47. package/dist-types/commands/SignCommand.d.ts +6 -1
  48. package/dist-types/commands/TagResourceCommand.d.ts +6 -1
  49. package/dist-types/commands/UntagResourceCommand.d.ts +6 -2
  50. package/dist-types/commands/UpdateAliasCommand.d.ts +6 -0
  51. package/dist-types/commands/UpdateCustomKeyStoreCommand.d.ts +6 -0
  52. package/dist-types/commands/UpdateKeyDescriptionCommand.d.ts +6 -1
  53. package/dist-types/commands/UpdatePrimaryRegionCommand.d.ts +6 -0
  54. package/dist-types/commands/VerifyCommand.d.ts +10 -2
  55. package/dist-types/commands/VerifyMacCommand.d.ts +6 -1
  56. package/dist-types/endpoint/EndpointParameters.d.ts +1 -1
  57. package/dist-types/models/models_0.d.ts +123 -125
  58. package/dist-types/ts3.4/endpoint/EndpointParameters.d.ts +1 -1
  59. package/package.json +6 -6
@@ -3,8 +3,14 @@ import { Command as $Command } from "@aws-sdk/smithy-client";
3
3
  import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
4
  import { KMSClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../KMSClient";
5
5
  import { CreateKeyRequest, CreateKeyResponse } from "../models/models_0";
6
+ /**
7
+ * The input for {@link CreateKeyCommand}.
8
+ */
6
9
  export interface CreateKeyCommandInput extends CreateKeyRequest {
7
10
  }
11
+ /**
12
+ * The output of {@link CreateKeyCommand}.
13
+ */
8
14
  export interface CreateKeyCommandOutput extends CreateKeyResponse, __MetadataBearer {
9
15
  }
10
16
  /**
@@ -22,10 +28,7 @@ export interface CreateKeyCommandOutput extends CreateKeyResponse, __MetadataBea
22
28
  * <note>
23
29
  * <p>KMS has replaced the term <i>customer master key (CMK)</i> with <i>KMS key</i> and <i>KMS key</i>. The concept has not changed. To prevent breaking changes, KMS is keeping some variations of this term.</p>
24
30
  * </note>
25
- *
26
- *
27
31
  * <p>To create different types of KMS keys, use the following guidance:</p>
28
- *
29
32
  * <dl>
30
33
  * <dt>Symmetric encryption KMS key</dt>
31
34
  * <dd>
@@ -153,7 +156,6 @@ export interface CreateKeyCommandOutput extends CreateKeyResponse, __MetadataBea
153
156
  * <p>
154
157
  * <b>Cross-account use</b>: No. You cannot use this operation to
155
158
  * create a KMS key in a different Amazon Web Services account.</p>
156
- *
157
159
  * <p>
158
160
  * <b>Required permissions</b>: <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:CreateKey</a> (IAM policy). To use the
159
161
  * <code>Tags</code> parameter, <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:TagResource</a> (IAM policy). For examples and information about related
@@ -3,8 +3,14 @@ import { Command as $Command } from "@aws-sdk/smithy-client";
3
3
  import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
4
  import { KMSClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../KMSClient";
5
5
  import { DecryptRequest, DecryptResponse } from "../models/models_0";
6
+ /**
7
+ * The input for {@link DecryptCommand}.
8
+ */
6
9
  export interface DecryptCommandInput extends DecryptRequest {
7
10
  }
11
+ /**
12
+ * The output of {@link DecryptCommand}.
13
+ */
8
14
  export interface DecryptCommandOutput extends DecryptResponse, __MetadataBearer {
9
15
  }
10
16
  /**
@@ -55,8 +61,8 @@ export interface DecryptCommandOutput extends DecryptResponse, __MetadataBearer
55
61
  * the <code>Decrypt</code> operation fails. This practice ensures that you use the KMS key that
56
62
  * you intend.</p>
57
63
  * <p>Whenever possible, use key policies to give users permission to call the
58
- * <code>Decrypt</code> operation on a particular KMS key, instead of using IAM policies.
59
- * Otherwise, you might create an IAM user policy that gives the user <code>Decrypt</code>
64
+ * <code>Decrypt</code> operation on a particular KMS key, instead of using &IAM; policies.
65
+ * Otherwise, you might create an &IAM; policy that gives the user <code>Decrypt</code>
60
66
  * permission on all KMS keys. This user could decrypt ciphertext that was encrypted by KMS keys
61
67
  * in other accounts if the key policy for the cross-account KMS key permits it. If you must use
62
68
  * an IAM policy for <code>Decrypt</code> permissions, limit the user to particular KMS keys or
@@ -66,9 +72,9 @@ export interface DecryptCommandOutput extends DecryptResponse, __MetadataBearer
66
72
  * <p>The KMS key that you use for this operation must be in a compatible key state. For
67
73
  * details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html">Key states of KMS keys</a> in the <i>Key Management Service Developer Guide</i>.</p>
68
74
  * <p>
69
- * <b>Cross-account use</b>: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify
70
- * the key ARN or alias ARN in the value of the <code>KeyId</code> parameter. </p>
71
- *
75
+ * <b>Cross-account use</b>: Yes. If you use the <code>KeyId</code>
76
+ * parameter to identify a KMS key in a different Amazon Web Services account, specify the key ARN or the alias
77
+ * ARN of the KMS key.</p>
72
78
  * <p>
73
79
  * <b>Required permissions</b>: <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:Decrypt</a> (key policy)</p>
74
80
  * <p>
@@ -3,8 +3,14 @@ import { Command as $Command } from "@aws-sdk/smithy-client";
3
3
  import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
4
  import { KMSClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../KMSClient";
5
5
  import { DeleteAliasRequest } from "../models/models_0";
6
+ /**
7
+ * The input for {@link DeleteAliasCommand}.
8
+ */
6
9
  export interface DeleteAliasCommandInput extends DeleteAliasRequest {
7
10
  }
11
+ /**
12
+ * The output of {@link DeleteAliasCommand}.
13
+ */
8
14
  export interface DeleteAliasCommandOutput extends __MetadataBearer {
9
15
  }
10
16
  /**
@@ -3,8 +3,14 @@ import { Command as $Command } from "@aws-sdk/smithy-client";
3
3
  import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
4
  import { KMSClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../KMSClient";
5
5
  import { DeleteCustomKeyStoreRequest, DeleteCustomKeyStoreResponse } from "../models/models_0";
6
+ /**
7
+ * The input for {@link DeleteCustomKeyStoreCommand}.
8
+ */
6
9
  export interface DeleteCustomKeyStoreCommandInput extends DeleteCustomKeyStoreRequest {
7
10
  }
11
+ /**
12
+ * The output of {@link DeleteCustomKeyStoreCommand}.
13
+ */
8
14
  export interface DeleteCustomKeyStoreCommandOutput extends DeleteCustomKeyStoreResponse, __MetadataBearer {
9
15
  }
10
16
  /**
@@ -35,7 +41,6 @@ export interface DeleteCustomKeyStoreCommandOutput extends DeleteCustomKeyStoreR
35
41
  * properties.</p>
36
42
  * <p>
37
43
  * <b>Cross-account use</b>: No. You cannot perform this operation on a custom key store in a different Amazon Web Services account.</p>
38
- *
39
44
  * <p>
40
45
  * <b>Required permissions</b>: <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:DeleteCustomKeyStore</a> (IAM policy)</p>
41
46
  * <p>
@@ -3,8 +3,14 @@ import { Command as $Command } from "@aws-sdk/smithy-client";
3
3
  import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
4
  import { KMSClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../KMSClient";
5
5
  import { DeleteImportedKeyMaterialRequest } from "../models/models_0";
6
+ /**
7
+ * The input for {@link DeleteImportedKeyMaterialCommand}.
8
+ */
6
9
  export interface DeleteImportedKeyMaterialCommandInput extends DeleteImportedKeyMaterialRequest {
7
10
  }
11
+ /**
12
+ * The output of {@link DeleteImportedKeyMaterialCommand}.
13
+ */
8
14
  export interface DeleteImportedKeyMaterialCommandOutput extends __MetadataBearer {
9
15
  }
10
16
  /**
@@ -20,7 +26,6 @@ export interface DeleteImportedKeyMaterialCommandOutput extends __MetadataBearer
20
26
  * details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html">Key states of KMS keys</a> in the <i>Key Management Service Developer Guide</i>.</p>
21
27
  * <p>
22
28
  * <b>Cross-account use</b>: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.</p>
23
- *
24
29
  * <p>
25
30
  * <b>Required permissions</b>: <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:DeleteImportedKeyMaterial</a> (key policy)</p>
26
31
  * <p>
@@ -3,8 +3,14 @@ import { Command as $Command } from "@aws-sdk/smithy-client";
3
3
  import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
4
  import { KMSClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../KMSClient";
5
5
  import { DescribeCustomKeyStoresRequest, DescribeCustomKeyStoresResponse } from "../models/models_0";
6
+ /**
7
+ * The input for {@link DescribeCustomKeyStoresCommand}.
8
+ */
6
9
  export interface DescribeCustomKeyStoresCommandInput extends DescribeCustomKeyStoresRequest {
7
10
  }
11
+ /**
12
+ * The output of {@link DescribeCustomKeyStoresCommand}.
13
+ */
8
14
  export interface DescribeCustomKeyStoresCommandOutput extends DescribeCustomKeyStoresResponse, __MetadataBearer {
9
15
  }
10
16
  /**
@@ -3,8 +3,14 @@ import { Command as $Command } from "@aws-sdk/smithy-client";
3
3
  import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
4
  import { KMSClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../KMSClient";
5
5
  import { DescribeKeyRequest, DescribeKeyResponse } from "../models/models_0";
6
+ /**
7
+ * The input for {@link DescribeKeyCommand}.
8
+ */
6
9
  export interface DescribeKeyCommandInput extends DescribeKeyRequest {
7
10
  }
11
+ /**
12
+ * The output of {@link DescribeKeyCommand}.
13
+ */
8
14
  export interface DescribeKeyCommandOutput extends DescribeKeyResponse, __MetadataBearer {
9
15
  }
10
16
  /**
@@ -49,7 +55,6 @@ export interface DescribeKeyCommandOutput extends DescribeKeyResponse, __Metadat
49
55
  * <p>
50
56
  * <b>Cross-account use</b>: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify
51
57
  * the key ARN or alias ARN in the value of the <code>KeyId</code> parameter.</p>
52
- *
53
58
  * <p>
54
59
  * <b>Required permissions</b>: <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:DescribeKey</a> (key policy)</p>
55
60
  * <p>
@@ -3,8 +3,14 @@ import { Command as $Command } from "@aws-sdk/smithy-client";
3
3
  import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
4
  import { KMSClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../KMSClient";
5
5
  import { DisableKeyRequest } from "../models/models_0";
6
+ /**
7
+ * The input for {@link DisableKeyCommand}.
8
+ */
6
9
  export interface DisableKeyCommandInput extends DisableKeyRequest {
7
10
  }
11
+ /**
12
+ * The output of {@link DisableKeyCommand}.
13
+ */
8
14
  export interface DisableKeyCommandOutput extends __MetadataBearer {
9
15
  }
10
16
  /**
@@ -18,7 +24,6 @@ export interface DisableKeyCommandOutput extends __MetadataBearer {
18
24
  * details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html">Key states of KMS keys</a> in the <i>Key Management Service Developer Guide</i>.</p>
19
25
  * <p>
20
26
  * <b>Cross-account use</b>: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.</p>
21
- *
22
27
  * <p>
23
28
  * <b>Required permissions</b>: <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:DisableKey</a> (key policy)</p>
24
29
  * <p>
@@ -3,8 +3,14 @@ import { Command as $Command } from "@aws-sdk/smithy-client";
3
3
  import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
4
  import { KMSClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../KMSClient";
5
5
  import { DisableKeyRotationRequest } from "../models/models_0";
6
+ /**
7
+ * The input for {@link DisableKeyRotationCommand}.
8
+ */
6
9
  export interface DisableKeyRotationCommandInput extends DisableKeyRotationRequest {
7
10
  }
11
+ /**
12
+ * The output of {@link DisableKeyRotationCommand}.
13
+ */
8
14
  export interface DisableKeyRotationCommandOutput extends __MetadataBearer {
9
15
  }
10
16
  /**
@@ -24,7 +30,6 @@ export interface DisableKeyRotationCommandOutput extends __MetadataBearer {
24
30
  * details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html">Key states of KMS keys</a> in the <i>Key Management Service Developer Guide</i>.</p>
25
31
  * <p>
26
32
  * <b>Cross-account use</b>: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.</p>
27
- *
28
33
  * <p>
29
34
  * <b>Required permissions</b>: <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:DisableKeyRotation</a> (key policy)</p>
30
35
  * <p>
@@ -3,8 +3,14 @@ import { Command as $Command } from "@aws-sdk/smithy-client";
3
3
  import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
4
  import { KMSClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../KMSClient";
5
5
  import { DisconnectCustomKeyStoreRequest, DisconnectCustomKeyStoreResponse } from "../models/models_0";
6
+ /**
7
+ * The input for {@link DisconnectCustomKeyStoreCommand}.
8
+ */
6
9
  export interface DisconnectCustomKeyStoreCommandInput extends DisconnectCustomKeyStoreRequest {
7
10
  }
11
+ /**
12
+ * The output of {@link DisconnectCustomKeyStoreCommand}.
13
+ */
8
14
  export interface DisconnectCustomKeyStoreCommandOutput extends DisconnectCustomKeyStoreResponse, __MetadataBearer {
9
15
  }
10
16
  /**
@@ -28,7 +34,6 @@ export interface DisconnectCustomKeyStoreCommandOutput extends DisconnectCustomK
28
34
  * properties.</p>
29
35
  * <p>
30
36
  * <b>Cross-account use</b>: No. You cannot perform this operation on a custom key store in a different Amazon Web Services account.</p>
31
- *
32
37
  * <p>
33
38
  * <b>Required permissions</b>: <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:DisconnectCustomKeyStore</a> (IAM policy)</p>
34
39
  * <p>
@@ -3,8 +3,14 @@ import { Command as $Command } from "@aws-sdk/smithy-client";
3
3
  import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
4
  import { KMSClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../KMSClient";
5
5
  import { EnableKeyRequest } from "../models/models_0";
6
+ /**
7
+ * The input for {@link EnableKeyCommand}.
8
+ */
6
9
  export interface EnableKeyCommandInput extends EnableKeyRequest {
7
10
  }
11
+ /**
12
+ * The output of {@link EnableKeyCommand}.
13
+ */
8
14
  export interface EnableKeyCommandOutput extends __MetadataBearer {
9
15
  }
10
16
  /**
@@ -14,7 +20,6 @@ export interface EnableKeyCommandOutput extends __MetadataBearer {
14
20
  * details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html">Key states of KMS keys</a> in the <i>Key Management Service Developer Guide</i>.</p>
15
21
  * <p>
16
22
  * <b>Cross-account use</b>: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.</p>
17
- *
18
23
  * <p>
19
24
  * <b>Required permissions</b>: <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:EnableKey</a> (key policy)</p>
20
25
  * <p>
@@ -3,8 +3,14 @@ import { Command as $Command } from "@aws-sdk/smithy-client";
3
3
  import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
4
  import { KMSClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../KMSClient";
5
5
  import { EnableKeyRotationRequest } from "../models/models_0";
6
+ /**
7
+ * The input for {@link EnableKeyRotationCommand}.
8
+ */
6
9
  export interface EnableKeyRotationCommandInput extends EnableKeyRotationRequest {
7
10
  }
11
+ /**
12
+ * The output of {@link EnableKeyRotationCommand}.
13
+ */
8
14
  export interface EnableKeyRotationCommandOutput extends __MetadataBearer {
9
15
  }
10
16
  /**
@@ -32,7 +38,6 @@ export interface EnableKeyRotationCommandOutput extends __MetadataBearer {
32
38
  * details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html">Key states of KMS keys</a> in the <i>Key Management Service Developer Guide</i>.</p>
33
39
  * <p>
34
40
  * <b>Cross-account use</b>: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.</p>
35
- *
36
41
  * <p>
37
42
  * <b>Required permissions</b>: <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:EnableKeyRotation</a> (key policy)</p>
38
43
  * <p>
@@ -3,8 +3,14 @@ import { Command as $Command } from "@aws-sdk/smithy-client";
3
3
  import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
4
  import { KMSClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../KMSClient";
5
5
  import { EncryptRequest, EncryptResponse } from "../models/models_0";
6
+ /**
7
+ * The input for {@link EncryptCommand}.
8
+ */
6
9
  export interface EncryptCommandInput extends EncryptRequest {
7
10
  }
11
+ /**
12
+ * The output of {@link EncryptCommand}.
13
+ */
8
14
  export interface EncryptCommandOutput extends EncryptResponse, __MetadataBearer {
9
15
  }
10
16
  /**
@@ -28,8 +34,6 @@ export interface EncryptCommandOutput extends EncryptResponse, __MetadataBearer
28
34
  * <p>When you use an asymmetric KMS key to encrypt or reencrypt data, be sure to record the KMS key and encryption algorithm that you choose. You will be required to provide the same KMS key and encryption algorithm when you decrypt the data. If the KMS key and algorithm do not match the values used to encrypt the data, the decrypt operation fails.</p>
29
35
  * <p>You are not required to supply the key ID and encryption algorithm when you decrypt with symmetric encryption KMS keys because KMS stores this information in the ciphertext blob. KMS cannot store metadata in ciphertext generated with asymmetric keys. The standard format for asymmetric key ciphertext does not include configurable fields.</p>
30
36
  * </important>
31
- *
32
- *
33
37
  * <p>The maximum size of the data that you can encrypt varies with the type of KMS key and the
34
38
  * encryption algorithm that you choose.</p>
35
39
  * <ul>
@@ -98,7 +102,6 @@ export interface EncryptCommandOutput extends EncryptResponse, __MetadataBearer
98
102
  * <b>Cross-account use</b>: Yes.
99
103
  * To perform this operation with a KMS key in a different Amazon Web Services account, specify
100
104
  * the key ARN or alias ARN in the value of the <code>KeyId</code> parameter.</p>
101
- *
102
105
  * <p>
103
106
  * <b>Required permissions</b>: <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:Encrypt</a> (key policy)</p>
104
107
  * <p>
@@ -3,8 +3,14 @@ import { Command as $Command } from "@aws-sdk/smithy-client";
3
3
  import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
4
  import { KMSClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../KMSClient";
5
5
  import { GenerateDataKeyRequest, GenerateDataKeyResponse } from "../models/models_0";
6
+ /**
7
+ * The input for {@link GenerateDataKeyCommand}.
8
+ */
6
9
  export interface GenerateDataKeyCommandInput extends GenerateDataKeyRequest {
7
10
  }
11
+ /**
12
+ * The output of {@link GenerateDataKeyCommand}.
13
+ */
8
14
  export interface GenerateDataKeyCommandOutput extends GenerateDataKeyResponse, __MetadataBearer {
9
15
  }
10
16
  /**
@@ -13,23 +19,18 @@ export interface GenerateDataKeyCommandOutput extends GenerateDataKeyResponse, _
13
19
  * key that you specify. The bytes in the plaintext key are random; they are not related
14
20
  * to the caller or the KMS key. You can use the plaintext key to encrypt your data outside of KMS
15
21
  * and store the encrypted data key with the encrypted data.</p>
16
- *
17
22
  * <p>To generate a data key, specify the symmetric encryption KMS key that will be used to
18
23
  * encrypt the data key. You cannot use an asymmetric KMS key to encrypt data keys. To get the
19
24
  * type of your KMS key, use the <a>DescribeKey</a> operation.</p>
20
- *
21
25
  * <p>You must also specify the length of the data key. Use either the <code>KeySpec</code> or
22
26
  * <code>NumberOfBytes</code> parameters (but not both). For 128-bit and 256-bit data keys, use
23
27
  * the <code>KeySpec</code> parameter.</p>
24
- *
25
- * <p>To generate an SM4 data key (China Regions only), specify a <code>KeySpec</code> value of
26
- * <code>AES_128</code> or <code>NumberOfBytes</code> value of <code>128</code>. The symmetric
28
+ * <p>To generate a 128-bit SM4 data key (China Regions only), specify a <code>KeySpec</code> value of
29
+ * <code>AES_128</code> or a <code>NumberOfBytes</code> value of <code>16</code>. The symmetric
27
30
  * encryption key used in China Regions to encrypt your data key is an SM4 encryption key.</p>
28
- *
29
31
  * <p>To get only an encrypted copy of the data key, use <a>GenerateDataKeyWithoutPlaintext</a>. To generate an asymmetric data key pair, use
30
32
  * the <a>GenerateDataKeyPair</a> or <a>GenerateDataKeyPairWithoutPlaintext</a> operation. To get a cryptographically secure
31
33
  * random byte string, use <a>GenerateRandom</a>.</p>
32
- *
33
34
  * <p>You can use an optional encryption context to add additional security to the encryption
34
35
  * operation. If you specify an <code>EncryptionContext</code>, you must specify the same
35
36
  * encryption context (a case-sensitive exact match) when decrypting the encrypted data key.
@@ -75,7 +76,6 @@ export interface GenerateDataKeyCommandOutput extends GenerateDataKeyResponse, _
75
76
  * <p>
76
77
  * <b>Cross-account use</b>: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify
77
78
  * the key ARN or alias ARN in the value of the <code>KeyId</code> parameter.</p>
78
- *
79
79
  * <p>
80
80
  * <b>Required permissions</b>: <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:GenerateDataKey</a> (key policy)</p>
81
81
  * <p>
@@ -3,8 +3,14 @@ import { Command as $Command } from "@aws-sdk/smithy-client";
3
3
  import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
4
  import { KMSClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../KMSClient";
5
5
  import { GenerateDataKeyPairRequest, GenerateDataKeyPairResponse } from "../models/models_0";
6
+ /**
7
+ * The input for {@link GenerateDataKeyPairCommand}.
8
+ */
6
9
  export interface GenerateDataKeyPairCommandInput extends GenerateDataKeyPairRequest {
7
10
  }
11
+ /**
12
+ * The output of {@link GenerateDataKeyPairCommand}.
13
+ */
8
14
  export interface GenerateDataKeyPairCommandOutput extends GenerateDataKeyPairResponse, __MetadataBearer {
9
15
  }
10
16
  /**
@@ -14,11 +20,9 @@ export interface GenerateDataKeyPairCommandOutput extends GenerateDataKeyPairRes
14
20
  * perform asymmetric cryptography and implement digital signatures outside of KMS. The bytes
15
21
  * in the keys are random; they not related to the caller or to the KMS key that is used to
16
22
  * encrypt the private key. </p>
17
- *
18
23
  * <p>You can use the public key that <code>GenerateDataKeyPair</code> returns to encrypt data
19
24
  * or verify a signature outside of KMS. Then, store the encrypted private key with the data.
20
25
  * When you are ready to decrypt data or sign a message, you can use the <a>Decrypt</a> operation to decrypt the encrypted private key.</p>
21
- *
22
26
  * <p>To generate a data key pair, you must specify a symmetric encryption KMS key to encrypt
23
27
  * the private key in a data key pair. You cannot use an asymmetric KMS key or a KMS key in a
24
28
  * custom key store. To get the type and origin of your KMS key, use the <a>DescribeKey</a> operation. </p>
@@ -26,7 +30,6 @@ export interface GenerateDataKeyPairCommandOutput extends GenerateDataKeyPairRes
26
30
  * key pair. In China Regions, you can also choose an SM2 data key pair. KMS recommends that you use
27
31
  * ECC key pairs for signing, and use RSA and SM2 key pairs for either encryption or signing, but not both.
28
32
  * However, KMS cannot enforce any restrictions on the use of data key pairs outside of KMS.</p>
29
- *
30
33
  * <p>If you are using the data key pair to encrypt data, or for any operation where you don't
31
34
  * immediately need a private key, consider using the <a>GenerateDataKeyPairWithoutPlaintext</a> operation.
32
35
  * <code>GenerateDataKeyPairWithoutPlaintext</code> returns a plaintext public key and an
@@ -34,14 +37,12 @@ export interface GenerateDataKeyPairCommandOutput extends GenerateDataKeyPairRes
34
37
  * ciphertext or sign a message. Later, when you need to decrypt the data or sign a message, use
35
38
  * the <a>Decrypt</a> operation to decrypt the encrypted private key in the data key
36
39
  * pair.</p>
37
- *
38
40
  * <p>
39
41
  * <code>GenerateDataKeyPair</code> returns a unique data key pair for each request. The
40
42
  * bytes in the keys are random; they are not related to the caller or the KMS key that is used
41
43
  * to encrypt the private key. The public key is a DER-encoded X.509 SubjectPublicKeyInfo, as
42
44
  * specified in <a href="https://tools.ietf.org/html/rfc5280">RFC 5280</a>. The private
43
45
  * key is a DER-encoded PKCS8 PrivateKeyInfo, as specified in <a href="https://tools.ietf.org/html/rfc5958">RFC 5958</a>.</p>
44
- *
45
46
  * <p>You can use an optional encryption context to add additional security to the encryption
46
47
  * operation. If you specify an <code>EncryptionContext</code>, you must specify the same
47
48
  * encryption context (a case-sensitive exact match) when decrypting the encrypted data key.
@@ -52,7 +53,6 @@ export interface GenerateDataKeyPairCommandOutput extends GenerateDataKeyPairRes
52
53
  * <p>
53
54
  * <b>Cross-account use</b>: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify
54
55
  * the key ARN or alias ARN in the value of the <code>KeyId</code> parameter.</p>
55
- *
56
56
  * <p>
57
57
  * <b>Required permissions</b>: <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:GenerateDataKeyPair</a> (key policy)</p>
58
58
  * <p>
@@ -3,8 +3,14 @@ import { Command as $Command } from "@aws-sdk/smithy-client";
3
3
  import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
4
  import { KMSClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../KMSClient";
5
5
  import { GenerateDataKeyPairWithoutPlaintextRequest, GenerateDataKeyPairWithoutPlaintextResponse } from "../models/models_0";
6
+ /**
7
+ * The input for {@link GenerateDataKeyPairWithoutPlaintextCommand}.
8
+ */
6
9
  export interface GenerateDataKeyPairWithoutPlaintextCommandInput extends GenerateDataKeyPairWithoutPlaintextRequest {
7
10
  }
11
+ /**
12
+ * The output of {@link GenerateDataKeyPairWithoutPlaintextCommand}.
13
+ */
8
14
  export interface GenerateDataKeyPairWithoutPlaintextCommandOutput extends GenerateDataKeyPairWithoutPlaintextResponse, __MetadataBearer {
9
15
  }
10
16
  /**
@@ -28,7 +34,6 @@ export interface GenerateDataKeyPairWithoutPlaintextCommandOutput extends Genera
28
34
  * request. The bytes in the key are not related to the caller or KMS key that is used to encrypt
29
35
  * the private key. The public key is a DER-encoded X.509 SubjectPublicKeyInfo, as specified in
30
36
  * <a href="https://tools.ietf.org/html/rfc5280">RFC 5280</a>.</p>
31
- *
32
37
  * <p>You can use an optional encryption context to add additional security to the encryption
33
38
  * operation. If you specify an <code>EncryptionContext</code>, you must specify the same
34
39
  * encryption context (a case-sensitive exact match) when decrypting the encrypted data key.
@@ -39,7 +44,6 @@ export interface GenerateDataKeyPairWithoutPlaintextCommandOutput extends Genera
39
44
  * <p>
40
45
  * <b>Cross-account use</b>: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify
41
46
  * the key ARN or alias ARN in the value of the <code>KeyId</code> parameter.</p>
42
- *
43
47
  * <p>
44
48
  * <b>Required permissions</b>: <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:GenerateDataKeyPairWithoutPlaintext</a> (key
45
49
  * policy)</p>
@@ -3,8 +3,14 @@ import { Command as $Command } from "@aws-sdk/smithy-client";
3
3
  import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
4
  import { KMSClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../KMSClient";
5
5
  import { GenerateDataKeyWithoutPlaintextRequest, GenerateDataKeyWithoutPlaintextResponse } from "../models/models_0";
6
+ /**
7
+ * The input for {@link GenerateDataKeyWithoutPlaintextCommand}.
8
+ */
6
9
  export interface GenerateDataKeyWithoutPlaintextCommandInput extends GenerateDataKeyWithoutPlaintextRequest {
7
10
  }
11
+ /**
12
+ * The output of {@link GenerateDataKeyWithoutPlaintextCommand}.
13
+ */
8
14
  export interface GenerateDataKeyWithoutPlaintextCommandOutput extends GenerateDataKeyWithoutPlaintextResponse, __MetadataBearer {
9
15
  }
10
16
  /**
@@ -26,22 +32,17 @@ export interface GenerateDataKeyWithoutPlaintextCommandOutput extends GenerateDa
26
32
  * plaintext data key.</p>
27
33
  * <p>To request an asymmetric data key pair, use the <a>GenerateDataKeyPair</a> or
28
34
  * <a>GenerateDataKeyPairWithoutPlaintext</a> operations.</p>
29
- *
30
35
  * <p>To generate a data key, you must specify the symmetric encryption KMS key that is used to
31
36
  * encrypt the data key. You cannot use an asymmetric KMS key or a key in a custom key store to generate a data key. To get the
32
37
  * type of your KMS key, use the <a>DescribeKey</a> operation.</p>
33
- *
34
38
  * <p>You must also specify the length of the data key. Use either the <code>KeySpec</code> or
35
39
  * <code>NumberOfBytes</code> parameters (but not both). For 128-bit and 256-bit data keys, use
36
40
  * the <code>KeySpec</code> parameter.</p>
37
- *
38
41
  * <p>To generate an SM4 data key (China Regions only), specify a <code>KeySpec</code> value of
39
42
  * <code>AES_128</code> or <code>NumberOfBytes</code> value of <code>128</code>. The symmetric
40
43
  * encryption key used in China Regions to encrypt your data key is an SM4 encryption key.</p>
41
- *
42
44
  * <p>If the operation succeeds, you will find the encrypted copy of the data key in the
43
45
  * <code>CiphertextBlob</code> field.</p>
44
- *
45
46
  * <p>You can use an optional encryption context to add additional security to the encryption
46
47
  * operation. If you specify an <code>EncryptionContext</code>, you must specify the same
47
48
  * encryption context (a case-sensitive exact match) when decrypting the encrypted data key.
@@ -52,7 +53,6 @@ export interface GenerateDataKeyWithoutPlaintextCommandOutput extends GenerateDa
52
53
  * <p>
53
54
  * <b>Cross-account use</b>: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify
54
55
  * the key ARN or alias ARN in the value of the <code>KeyId</code> parameter.</p>
55
- *
56
56
  * <p>
57
57
  * <b>Required permissions</b>: <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:GenerateDataKeyWithoutPlaintext</a> (key
58
58
  * policy)</p>
@@ -3,8 +3,14 @@ import { Command as $Command } from "@aws-sdk/smithy-client";
3
3
  import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
4
  import { KMSClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../KMSClient";
5
5
  import { GenerateMacRequest, GenerateMacResponse } from "../models/models_0";
6
+ /**
7
+ * The input for {@link GenerateMacCommand}.
8
+ */
6
9
  export interface GenerateMacCommandInput extends GenerateMacRequest {
7
10
  }
11
+ /**
12
+ * The output of {@link GenerateMacCommand}.
13
+ */
8
14
  export interface GenerateMacCommandOutput extends GenerateMacResponse, __MetadataBearer {
9
15
  }
10
16
  /**
@@ -3,8 +3,14 @@ import { Command as $Command } from "@aws-sdk/smithy-client";
3
3
  import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
4
  import { KMSClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../KMSClient";
5
5
  import { GenerateRandomRequest, GenerateRandomResponse } from "../models/models_0";
6
+ /**
7
+ * The input for {@link GenerateRandomCommand}.
8
+ */
6
9
  export interface GenerateRandomCommandInput extends GenerateRandomRequest {
7
10
  }
11
+ /**
12
+ * The output of {@link GenerateRandomCommand}.
13
+ */
8
14
  export interface GenerateRandomCommandOutput extends GenerateRandomResponse, __MetadataBearer {
9
15
  }
10
16
  /**
@@ -17,7 +23,6 @@ export interface GenerateRandomCommandOutput extends GenerateRandomResponse, __M
17
23
  * <p>Applications in Amazon Web Services Nitro Enclaves can call this operation by using the <a href="https://github.com/aws/aws-nitro-enclaves-sdk-c">Amazon Web Services Nitro Enclaves Development Kit</a>. For information about the supporting parameters, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/services-nitro-enclaves.html">How Amazon Web Services Nitro Enclaves use KMS</a> in the <i>Key Management Service Developer Guide</i>.</p>
18
24
  * <p>For more information about entropy and random number generation, see
19
25
  * <a href="https://docs.aws.amazon.com/kms/latest/cryptographic-details/">Key Management Service Cryptographic Details</a>.</p>
20
- *
21
26
  * <p>
22
27
  * <b>Cross-account use</b>: Not applicable.
23
28
  * <code>GenerateRandom</code> does not use any account-specific resources, such as KMS
@@ -3,15 +3,20 @@ import { Command as $Command } from "@aws-sdk/smithy-client";
3
3
  import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
4
  import { KMSClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../KMSClient";
5
5
  import { GetKeyPolicyRequest, GetKeyPolicyResponse } from "../models/models_0";
6
+ /**
7
+ * The input for {@link GetKeyPolicyCommand}.
8
+ */
6
9
  export interface GetKeyPolicyCommandInput extends GetKeyPolicyRequest {
7
10
  }
11
+ /**
12
+ * The output of {@link GetKeyPolicyCommand}.
13
+ */
8
14
  export interface GetKeyPolicyCommandOutput extends GetKeyPolicyResponse, __MetadataBearer {
9
15
  }
10
16
  /**
11
17
  * <p>Gets a key policy attached to the specified KMS key.</p>
12
18
  * <p>
13
19
  * <b>Cross-account use</b>: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.</p>
14
- *
15
20
  * <p>
16
21
  * <b>Required permissions</b>: <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:GetKeyPolicy</a> (key policy)</p>
17
22
  * <p>
@@ -3,8 +3,14 @@ import { Command as $Command } from "@aws-sdk/smithy-client";
3
3
  import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
4
  import { KMSClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../KMSClient";
5
5
  import { GetKeyRotationStatusRequest, GetKeyRotationStatusResponse } from "../models/models_0";
6
+ /**
7
+ * The input for {@link GetKeyRotationStatusCommand}.
8
+ */
6
9
  export interface GetKeyRotationStatusCommandInput extends GetKeyRotationStatusRequest {
7
10
  }
11
+ /**
12
+ * The output of {@link GetKeyRotationStatusCommand}.
13
+ */
8
14
  export interface GetKeyRotationStatusCommandOutput extends GetKeyRotationStatusResponse, __MetadataBearer {
9
15
  }
10
16
  /**
@@ -44,7 +50,6 @@ export interface GetKeyRotationStatusCommandOutput extends GetKeyRotationStatusR
44
50
  * <p>
45
51
  * <b>Cross-account use</b>: Yes. To perform this operation on a KMS key in a different Amazon Web Services account, specify the key
46
52
  * ARN in the value of the <code>KeyId</code> parameter.</p>
47
- *
48
53
  * <p>
49
54
  * <b>Required permissions</b>: <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:GetKeyRotationStatus</a> (key policy)</p>
50
55
  * <p>
@@ -3,8 +3,14 @@ import { Command as $Command } from "@aws-sdk/smithy-client";
3
3
  import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
4
  import { KMSClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../KMSClient";
5
5
  import { GetParametersForImportRequest, GetParametersForImportResponse } from "../models/models_0";
6
+ /**
7
+ * The input for {@link GetParametersForImportCommand}.
8
+ */
6
9
  export interface GetParametersForImportCommandInput extends GetParametersForImportRequest {
7
10
  }
11
+ /**
12
+ * The output of {@link GetParametersForImportCommand}.
13
+ */
8
14
  export interface GetParametersForImportCommandOutput extends GetParametersForImportResponse, __MetadataBearer {
9
15
  }
10
16
  /**
@@ -25,7 +31,6 @@ export interface GetParametersForImportCommandOutput extends GetParametersForImp
25
31
  * details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html">Key states of KMS keys</a> in the <i>Key Management Service Developer Guide</i>.</p>
26
32
  * <p>
27
33
  * <b>Cross-account use</b>: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.</p>
28
- *
29
34
  * <p>
30
35
  * <b>Required permissions</b>: <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:GetParametersForImport</a> (key policy)</p>
31
36
  * <p>