@aws-sdk/client-kms 3.36.0 → 3.39.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +42 -0
- package/dist-cjs/KMS.js +0 -92
- package/dist-cjs/KMSClient.js +0 -97
- package/dist-cjs/commands/CancelKeyDeletionCommand.js +0 -37
- package/dist-cjs/commands/ConnectCustomKeyStoreCommand.js +0 -85
- package/dist-cjs/commands/CreateAliasCommand.js +0 -81
- package/dist-cjs/commands/CreateCustomKeyStoreCommand.js +0 -73
- package/dist-cjs/commands/CreateGrantCommand.js +0 -86
- package/dist-cjs/commands/CreateKeyCommand.js +0 -148
- package/dist-cjs/commands/DecryptCommand.js +0 -112
- package/dist-cjs/commands/DeleteAliasCommand.js +0 -71
- package/dist-cjs/commands/DeleteCustomKeyStoreCommand.js +0 -78
- package/dist-cjs/commands/DeleteImportedKeyMaterialCommand.js +0 -53
- package/dist-cjs/commands/DescribeCustomKeyStoresCommand.js +0 -77
- package/dist-cjs/commands/DescribeKeyCommand.js +0 -103
- package/dist-cjs/commands/DisableKeyCommand.js +0 -39
- package/dist-cjs/commands/DisableKeyRotationCommand.js +0 -49
- package/dist-cjs/commands/DisconnectCustomKeyStoreCommand.js +0 -76
- package/dist-cjs/commands/EnableKeyCommand.js +0 -36
- package/dist-cjs/commands/EnableKeyRotationCommand.js +0 -49
- package/dist-cjs/commands/EncryptCommand.js +0 -148
- package/dist-cjs/commands/GenerateDataKeyCommand.js +0 -121
- package/dist-cjs/commands/GenerateDataKeyPairCommand.js +0 -100
- package/dist-cjs/commands/GenerateDataKeyPairWithoutPlaintextCommand.js +0 -90
- package/dist-cjs/commands/GenerateDataKeyWithoutPlaintextCommand.js +0 -95
- package/dist-cjs/commands/GenerateRandomCommand.js +0 -33
- package/dist-cjs/commands/GetKeyPolicyCommand.js +0 -32
- package/dist-cjs/commands/GetKeyRotationStatusCommand.js +0 -61
- package/dist-cjs/commands/GetParametersForImportCommand.js +0 -58
- package/dist-cjs/commands/GetPublicKeyCommand.js +0 -70
- package/dist-cjs/commands/ImportKeyMaterialCommand.js +0 -87
- package/dist-cjs/commands/ListAliasesCommand.js +0 -66
- package/dist-cjs/commands/ListGrantsCommand.js +0 -69
- package/dist-cjs/commands/ListKeyPoliciesCommand.js +0 -46
- package/dist-cjs/commands/ListKeysCommand.js +0 -54
- package/dist-cjs/commands/ListResourceTagsCommand.js +0 -58
- package/dist-cjs/commands/ListRetirableGrantsCommand.js +0 -67
- package/dist-cjs/commands/PutKeyPolicyCommand.js +0 -37
- package/dist-cjs/commands/ReEncryptCommand.js +0 -122
- package/dist-cjs/commands/ReplicateKeyCommand.js +0 -101
- package/dist-cjs/commands/RetireGrantCommand.js +0 -70
- package/dist-cjs/commands/RevokeGrantCommand.js +0 -67
- package/dist-cjs/commands/ScheduleKeyDeletionCommand.js +0 -78
- package/dist-cjs/commands/SignCommand.js +0 -69
- package/dist-cjs/commands/TagResourceCommand.js +0 -71
- package/dist-cjs/commands/UntagResourceCommand.js +0 -67
- package/dist-cjs/commands/UpdateAliasCommand.js +0 -86
- package/dist-cjs/commands/UpdateCustomKeyStoreCommand.js +0 -96
- package/dist-cjs/commands/UpdateKeyDescriptionCommand.js +0 -47
- package/dist-cjs/commands/UpdatePrimaryRegionCommand.js +0 -89
- package/dist-cjs/commands/VerifyCommand.js +0 -54
- package/dist-cjs/commands/index.js +51 -0
- package/dist-cjs/endpoints.js +6 -1
- package/dist-cjs/index.js +4 -55
- package/dist-cjs/models/models_0.js +0 -366
- package/dist-cjs/pagination/ListAliasesPaginator.js +0 -10
- package/dist-cjs/pagination/ListGrantsPaginator.js +0 -10
- package/dist-cjs/pagination/ListKeyPoliciesPaginator.js +0 -10
- package/dist-cjs/pagination/ListKeysPaginator.js +0 -10
- package/dist-cjs/pagination/index.js +8 -0
- package/dist-cjs/protocols/Aws_json1_1.js +0 -5
- package/dist-cjs/runtimeConfig.browser.js +1 -5
- package/dist-cjs/runtimeConfig.js +1 -5
- package/dist-cjs/runtimeConfig.native.js +0 -3
- package/dist-cjs/runtimeConfig.shared.js +0 -3
- package/dist-es/commands/index.js +48 -0
- package/dist-es/endpoints.js +6 -1
- package/dist-es/index.js +4 -55
- package/dist-es/pagination/index.js +5 -0
- package/dist-types/commands/index.d.ts +48 -0
- package/dist-types/index.d.ts +4 -55
- package/dist-types/pagination/index.d.ts +5 -0
- package/dist-types/ts3.4/KMS.d.ts +49 -2646
- package/dist-types/ts3.4/KMSClient.d.ts +24 -178
- package/dist-types/ts3.4/commands/CancelKeyDeletionCommand.d.ts +2 -33
- package/dist-types/ts3.4/commands/ConnectCustomKeyStoreCommand.d.ts +2 -81
- package/dist-types/ts3.4/commands/CreateAliasCommand.d.ts +2 -77
- package/dist-types/ts3.4/commands/CreateCustomKeyStoreCommand.d.ts +2 -69
- package/dist-types/ts3.4/commands/CreateGrantCommand.d.ts +2 -82
- package/dist-types/ts3.4/commands/CreateKeyCommand.d.ts +2 -144
- package/dist-types/ts3.4/commands/DecryptCommand.d.ts +2 -108
- package/dist-types/ts3.4/commands/DeleteAliasCommand.d.ts +2 -67
- package/dist-types/ts3.4/commands/DeleteCustomKeyStoreCommand.d.ts +2 -74
- package/dist-types/ts3.4/commands/DeleteImportedKeyMaterialCommand.d.ts +2 -49
- package/dist-types/ts3.4/commands/DescribeCustomKeyStoresCommand.d.ts +2 -73
- package/dist-types/ts3.4/commands/DescribeKeyCommand.d.ts +2 -99
- package/dist-types/ts3.4/commands/DisableKeyCommand.d.ts +2 -35
- package/dist-types/ts3.4/commands/DisableKeyRotationCommand.d.ts +2 -45
- package/dist-types/ts3.4/commands/DisconnectCustomKeyStoreCommand.d.ts +2 -72
- package/dist-types/ts3.4/commands/EnableKeyCommand.d.ts +2 -32
- package/dist-types/ts3.4/commands/EnableKeyRotationCommand.d.ts +2 -45
- package/dist-types/ts3.4/commands/EncryptCommand.d.ts +2 -144
- package/dist-types/ts3.4/commands/GenerateDataKeyCommand.d.ts +2 -117
- package/dist-types/ts3.4/commands/GenerateDataKeyPairCommand.d.ts +2 -96
- package/dist-types/ts3.4/commands/GenerateDataKeyPairWithoutPlaintextCommand.d.ts +2 -86
- package/dist-types/ts3.4/commands/GenerateDataKeyWithoutPlaintextCommand.d.ts +2 -91
- package/dist-types/ts3.4/commands/GenerateRandomCommand.d.ts +2 -29
- package/dist-types/ts3.4/commands/GetKeyPolicyCommand.d.ts +2 -28
- package/dist-types/ts3.4/commands/GetKeyRotationStatusCommand.d.ts +2 -57
- package/dist-types/ts3.4/commands/GetParametersForImportCommand.d.ts +2 -54
- package/dist-types/ts3.4/commands/GetPublicKeyCommand.d.ts +2 -66
- package/dist-types/ts3.4/commands/ImportKeyMaterialCommand.d.ts +2 -83
- package/dist-types/ts3.4/commands/ListAliasesCommand.d.ts +2 -62
- package/dist-types/ts3.4/commands/ListGrantsCommand.d.ts +2 -65
- package/dist-types/ts3.4/commands/ListKeyPoliciesCommand.d.ts +2 -42
- package/dist-types/ts3.4/commands/ListKeysCommand.d.ts +2 -50
- package/dist-types/ts3.4/commands/ListResourceTagsCommand.d.ts +2 -54
- package/dist-types/ts3.4/commands/ListRetirableGrantsCommand.d.ts +2 -63
- package/dist-types/ts3.4/commands/PutKeyPolicyCommand.d.ts +2 -33
- package/dist-types/ts3.4/commands/ReEncryptCommand.d.ts +2 -118
- package/dist-types/ts3.4/commands/ReplicateKeyCommand.d.ts +2 -97
- package/dist-types/ts3.4/commands/RetireGrantCommand.d.ts +2 -66
- package/dist-types/ts3.4/commands/RevokeGrantCommand.d.ts +2 -63
- package/dist-types/ts3.4/commands/ScheduleKeyDeletionCommand.d.ts +2 -74
- package/dist-types/ts3.4/commands/SignCommand.d.ts +2 -65
- package/dist-types/ts3.4/commands/TagResourceCommand.d.ts +2 -67
- package/dist-types/ts3.4/commands/UntagResourceCommand.d.ts +2 -63
- package/dist-types/ts3.4/commands/UpdateAliasCommand.d.ts +2 -82
- package/dist-types/ts3.4/commands/UpdateCustomKeyStoreCommand.d.ts +2 -92
- package/dist-types/ts3.4/commands/UpdateKeyDescriptionCommand.d.ts +2 -43
- package/dist-types/ts3.4/commands/UpdatePrimaryRegionCommand.d.ts +2 -85
- package/dist-types/ts3.4/commands/VerifyCommand.d.ts +2 -50
- package/dist-types/ts3.4/commands/index.d.ts +48 -0
- package/dist-types/ts3.4/index.d.ts +4 -55
- package/dist-types/ts3.4/models/models_0.d.ts +445 -2963
- package/dist-types/ts3.4/pagination/index.d.ts +5 -0
- package/dist-types/ts3.4/runtimeConfig.browser.d.ts +1 -3
- package/dist-types/ts3.4/runtimeConfig.d.ts +1 -3
- package/dist-types/ts3.4/runtimeConfig.native.d.ts +1 -3
- package/dist-types/ts3.4/runtimeConfig.shared.d.ts +1 -3
- package/package.json +32 -32
|
@@ -6,126 +6,11 @@ export interface GenerateDataKeyCommandInput extends GenerateDataKeyRequest {
|
|
|
6
6
|
}
|
|
7
7
|
export interface GenerateDataKeyCommandOutput extends GenerateDataKeyResponse, __MetadataBearer {
|
|
8
8
|
}
|
|
9
|
-
|
|
10
|
-
* <p>Generates a unique symmetric data key for client-side encryption. This operation returns a
|
|
11
|
-
* plaintext copy of the data key and a copy that is encrypted under a KMS key that you specify.
|
|
12
|
-
* You can use the plaintext key to encrypt your data outside of KMS and store the encrypted
|
|
13
|
-
* data key with the encrypted data.</p>
|
|
14
|
-
*
|
|
15
|
-
* <p>
|
|
16
|
-
* <code>GenerateDataKey</code> returns a unique data key for each request. The bytes in the
|
|
17
|
-
* plaintext key are not related to the caller or the KMS key.</p>
|
|
18
|
-
*
|
|
19
|
-
* <p>To generate a data key, specify the symmetric KMS key that will be used to encrypt the
|
|
20
|
-
* data key. You cannot use an asymmetric KMS key to generate data keys. To get the type of your
|
|
21
|
-
* KMS key, use the <a>DescribeKey</a> operation. You must also specify the length of
|
|
22
|
-
* the data key. Use either the <code>KeySpec</code> or <code>NumberOfBytes</code> parameters
|
|
23
|
-
* (but not both). For 128-bit and 256-bit data keys, use the <code>KeySpec</code> parameter. </p>
|
|
24
|
-
*
|
|
25
|
-
* <p>To get only an encrypted copy of the data key, use <a>GenerateDataKeyWithoutPlaintext</a>. To generate an asymmetric data key pair, use
|
|
26
|
-
* the <a>GenerateDataKeyPair</a> or <a>GenerateDataKeyPairWithoutPlaintext</a> operation. To get a cryptographically secure
|
|
27
|
-
* random byte string, use <a>GenerateRandom</a>.</p>
|
|
28
|
-
*
|
|
29
|
-
* <p>You can use the optional encryption context to add additional security to the encryption
|
|
30
|
-
* operation. If you specify an <code>EncryptionContext</code>, you must specify the same
|
|
31
|
-
* encryption context (a case-sensitive exact match) when decrypting the encrypted data key.
|
|
32
|
-
* Otherwise, the request to decrypt fails with an <code>InvalidCiphertextException</code>. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context">Encryption Context</a> in the
|
|
33
|
-
* <i>Key Management Service Developer Guide</i>.</p>
|
|
34
|
-
* <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>
|
|
35
|
-
* <p>The KMS key that you use for this operation must be in a compatible key state. For
|
|
36
|
-
* details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html">Key state: Effect on your KMS key</a> in the <i>Key Management Service Developer Guide</i>.</p>
|
|
37
|
-
* <p>
|
|
38
|
-
* <b>How to use your data
|
|
39
|
-
* key</b>
|
|
40
|
-
* </p>
|
|
41
|
-
* <p>We recommend that you use the following pattern to encrypt data locally in your
|
|
42
|
-
* application. You can write your own code or use a client-side encryption library, such as the
|
|
43
|
-
* <a href="https://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/">Amazon Web Services Encryption SDK</a>, the
|
|
44
|
-
* <a href="https://docs.aws.amazon.com/dynamodb-encryption-client/latest/devguide/">Amazon DynamoDB Encryption Client</a>,
|
|
45
|
-
* or <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingClientSideEncryption.html">Amazon S3
|
|
46
|
-
* client-side encryption</a> to do these tasks for you.</p>
|
|
47
|
-
* <p>To encrypt data outside of KMS:</p>
|
|
48
|
-
* <ol>
|
|
49
|
-
* <li>
|
|
50
|
-
* <p>Use the <code>GenerateDataKey</code> operation to get a data key.</p>
|
|
51
|
-
* </li>
|
|
52
|
-
* <li>
|
|
53
|
-
* <p>Use the plaintext data key (in the <code>Plaintext</code> field of the response) to
|
|
54
|
-
* encrypt your data outside of KMS. Then erase the plaintext data key from memory.</p>
|
|
55
|
-
* </li>
|
|
56
|
-
* <li>
|
|
57
|
-
* <p>Store the encrypted data key (in the <code>CiphertextBlob</code> field of the
|
|
58
|
-
* response) with the encrypted data.</p>
|
|
59
|
-
* </li>
|
|
60
|
-
* </ol>
|
|
61
|
-
* <p>To decrypt data outside of KMS:</p>
|
|
62
|
-
* <ol>
|
|
63
|
-
* <li>
|
|
64
|
-
* <p>Use the <a>Decrypt</a> operation to decrypt the encrypted data key. The
|
|
65
|
-
* operation returns a plaintext copy of the data key.</p>
|
|
66
|
-
* </li>
|
|
67
|
-
* <li>
|
|
68
|
-
* <p>Use the plaintext data key to decrypt data outside of KMS, then erase the plaintext
|
|
69
|
-
* data key from memory.</p>
|
|
70
|
-
* </li>
|
|
71
|
-
* </ol>
|
|
72
|
-
* <p>
|
|
73
|
-
* <b>Cross-account use</b>: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify
|
|
74
|
-
* the key ARN or alias ARN in the value of the <code>KeyId</code> parameter.</p>
|
|
75
|
-
*
|
|
76
|
-
* <p>
|
|
77
|
-
* <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>
|
|
78
|
-
* <p>
|
|
79
|
-
* <b>Related operations:</b>
|
|
80
|
-
* </p>
|
|
81
|
-
* <ul>
|
|
82
|
-
* <li>
|
|
83
|
-
* <p>
|
|
84
|
-
* <a>Decrypt</a>
|
|
85
|
-
* </p>
|
|
86
|
-
* </li>
|
|
87
|
-
* <li>
|
|
88
|
-
* <p>
|
|
89
|
-
* <a>Encrypt</a>
|
|
90
|
-
* </p>
|
|
91
|
-
* </li>
|
|
92
|
-
* <li>
|
|
93
|
-
* <p>
|
|
94
|
-
* <a>GenerateDataKeyPair</a>
|
|
95
|
-
* </p>
|
|
96
|
-
* </li>
|
|
97
|
-
* <li>
|
|
98
|
-
* <p>
|
|
99
|
-
* <a>GenerateDataKeyPairWithoutPlaintext</a>
|
|
100
|
-
* </p>
|
|
101
|
-
* </li>
|
|
102
|
-
* <li>
|
|
103
|
-
* <p>
|
|
104
|
-
* <a>GenerateDataKeyWithoutPlaintext</a>
|
|
105
|
-
* </p>
|
|
106
|
-
* </li>
|
|
107
|
-
* </ul>
|
|
108
|
-
* @example
|
|
109
|
-
* Use a bare-bones client and the command you need to make an API call.
|
|
110
|
-
* ```javascript
|
|
111
|
-
* import { KMSClient, GenerateDataKeyCommand } from "@aws-sdk/client-kms"; // ES Modules import
|
|
112
|
-
* // const { KMSClient, GenerateDataKeyCommand } = require("@aws-sdk/client-kms"); // CommonJS import
|
|
113
|
-
* const client = new KMSClient(config);
|
|
114
|
-
* const command = new GenerateDataKeyCommand(input);
|
|
115
|
-
* const response = await client.send(command);
|
|
116
|
-
* ```
|
|
117
|
-
*
|
|
118
|
-
* @see {@link GenerateDataKeyCommandInput} for command's `input` shape.
|
|
119
|
-
* @see {@link GenerateDataKeyCommandOutput} for command's `response` shape.
|
|
120
|
-
* @see {@link KMSClientResolvedConfig | config} for command's `input` shape.
|
|
121
|
-
*
|
|
122
|
-
*/
|
|
9
|
+
|
|
123
10
|
export declare class GenerateDataKeyCommand extends $Command<GenerateDataKeyCommandInput, GenerateDataKeyCommandOutput, KMSClientResolvedConfig> {
|
|
124
11
|
readonly input: GenerateDataKeyCommandInput;
|
|
125
12
|
constructor(input: GenerateDataKeyCommandInput);
|
|
126
|
-
|
|
127
|
-
* @internal
|
|
128
|
-
*/
|
|
13
|
+
|
|
129
14
|
resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: KMSClientResolvedConfig, options?: __HttpHandlerOptions): Handler<GenerateDataKeyCommandInput, GenerateDataKeyCommandOutput>;
|
|
130
15
|
private serialize;
|
|
131
16
|
private deserialize;
|
|
@@ -6,105 +6,11 @@ export interface GenerateDataKeyPairCommandInput extends GenerateDataKeyPairRequ
|
|
|
6
6
|
}
|
|
7
7
|
export interface GenerateDataKeyPairCommandOutput extends GenerateDataKeyPairResponse, __MetadataBearer {
|
|
8
8
|
}
|
|
9
|
-
|
|
10
|
-
* <p>Generates a unique asymmetric data key pair. The <code>GenerateDataKeyPair</code>
|
|
11
|
-
* operation returns a plaintext public key, a plaintext private key, and a copy of the private
|
|
12
|
-
* key that is encrypted under the symmetric KMS key you specify. You can use the data key pair
|
|
13
|
-
* to perform asymmetric cryptography and implement digital signatures outside of KMS.</p>
|
|
14
|
-
*
|
|
15
|
-
* <p>You can use the public key that <code>GenerateDataKeyPair</code> returns to encrypt data
|
|
16
|
-
* or verify a signature outside of KMS. Then, store the encrypted private key with the data.
|
|
17
|
-
* 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>
|
|
18
|
-
*
|
|
19
|
-
* <p>To generate a data key pair, you must specify a symmetric KMS key to encrypt the private
|
|
20
|
-
* key in a data key pair. You cannot use an asymmetric KMS key or a KMS key in a custom key
|
|
21
|
-
* store. To get the type and origin of your KMS key, use the <a>DescribeKey</a>
|
|
22
|
-
* operation. </p>
|
|
23
|
-
* <p>Use the <code>KeyPairSpec</code> parameter to choose an RSA or Elliptic Curve (ECC) data
|
|
24
|
-
* key pair. KMS recommends that your use ECC key pairs for signing, and use RSA key pairs for
|
|
25
|
-
* either encryption or signing, but not both. However, KMS cannot enforce any restrictions on
|
|
26
|
-
* the use of data key pairs outside of KMS.</p>
|
|
27
|
-
*
|
|
28
|
-
* <p>If you are using the data key pair to encrypt data, or for any operation where you don't
|
|
29
|
-
* immediately need a private key, consider using the <a>GenerateDataKeyPairWithoutPlaintext</a> operation.
|
|
30
|
-
* <code>GenerateDataKeyPairWithoutPlaintext</code> returns a plaintext public key and an
|
|
31
|
-
* encrypted private key, but omits the plaintext private key that you need only to decrypt
|
|
32
|
-
* ciphertext or sign a message. Later, when you need to decrypt the data or sign a message, use
|
|
33
|
-
* the <a>Decrypt</a> operation to decrypt the encrypted private key in the data key
|
|
34
|
-
* pair.</p>
|
|
35
|
-
*
|
|
36
|
-
* <p>
|
|
37
|
-
* <code>GenerateDataKeyPair</code> returns a unique data key pair for each request. The
|
|
38
|
-
* bytes in the keys are not related to the caller or the KMS key that is used to encrypt the
|
|
39
|
-
* private key. The public key is a DER-encoded X.509 SubjectPublicKeyInfo, as specified in
|
|
40
|
-
* <a href="https://tools.ietf.org/html/rfc5280">RFC 5280</a>. The private key is a
|
|
41
|
-
* DER-encoded PKCS8 PrivateKeyInfo, as specified in <a href="https://tools.ietf.org/html/rfc5958">RFC 5958</a>.</p>
|
|
42
|
-
*
|
|
43
|
-
* <p>You can use the optional encryption context to add additional security to the encryption
|
|
44
|
-
* operation. If you specify an <code>EncryptionContext</code>, you must specify the same
|
|
45
|
-
* encryption context (a case-sensitive exact match) when decrypting the encrypted data key.
|
|
46
|
-
* Otherwise, the request to decrypt fails with an <code>InvalidCiphertextException</code>. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context">Encryption Context</a> in the
|
|
47
|
-
* <i>Key Management Service Developer Guide</i>.</p>
|
|
48
|
-
* <p>The KMS key that you use for this operation must be in a compatible key state. For
|
|
49
|
-
* details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html">Key state: Effect on your KMS key</a> in the <i>Key Management Service Developer Guide</i>.</p>
|
|
50
|
-
* <p>
|
|
51
|
-
* <b>Cross-account
|
|
52
|
-
* use</b>: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify
|
|
53
|
-
* the key ARN or alias ARN in the value of the <code>KeyId</code> parameter.</p>
|
|
54
|
-
*
|
|
55
|
-
* <p>
|
|
56
|
-
* <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>
|
|
57
|
-
* <p>
|
|
58
|
-
* <b>Related operations:</b>
|
|
59
|
-
* </p>
|
|
60
|
-
* <ul>
|
|
61
|
-
* <li>
|
|
62
|
-
* <p>
|
|
63
|
-
* <a>Decrypt</a>
|
|
64
|
-
* </p>
|
|
65
|
-
* </li>
|
|
66
|
-
* <li>
|
|
67
|
-
* <p>
|
|
68
|
-
* <a>Encrypt</a>
|
|
69
|
-
* </p>
|
|
70
|
-
* </li>
|
|
71
|
-
* <li>
|
|
72
|
-
* <p>
|
|
73
|
-
* <a>GenerateDataKey</a>
|
|
74
|
-
* </p>
|
|
75
|
-
* </li>
|
|
76
|
-
* <li>
|
|
77
|
-
* <p>
|
|
78
|
-
* <a>GenerateDataKeyPairWithoutPlaintext</a>
|
|
79
|
-
* </p>
|
|
80
|
-
* </li>
|
|
81
|
-
* <li>
|
|
82
|
-
* <p>
|
|
83
|
-
* <a>GenerateDataKeyWithoutPlaintext</a>
|
|
84
|
-
* </p>
|
|
85
|
-
* </li>
|
|
86
|
-
* </ul>
|
|
87
|
-
* @example
|
|
88
|
-
* Use a bare-bones client and the command you need to make an API call.
|
|
89
|
-
* ```javascript
|
|
90
|
-
* import { KMSClient, GenerateDataKeyPairCommand } from "@aws-sdk/client-kms"; // ES Modules import
|
|
91
|
-
* // const { KMSClient, GenerateDataKeyPairCommand } = require("@aws-sdk/client-kms"); // CommonJS import
|
|
92
|
-
* const client = new KMSClient(config);
|
|
93
|
-
* const command = new GenerateDataKeyPairCommand(input);
|
|
94
|
-
* const response = await client.send(command);
|
|
95
|
-
* ```
|
|
96
|
-
*
|
|
97
|
-
* @see {@link GenerateDataKeyPairCommandInput} for command's `input` shape.
|
|
98
|
-
* @see {@link GenerateDataKeyPairCommandOutput} for command's `response` shape.
|
|
99
|
-
* @see {@link KMSClientResolvedConfig | config} for command's `input` shape.
|
|
100
|
-
*
|
|
101
|
-
*/
|
|
9
|
+
|
|
102
10
|
export declare class GenerateDataKeyPairCommand extends $Command<GenerateDataKeyPairCommandInput, GenerateDataKeyPairCommandOutput, KMSClientResolvedConfig> {
|
|
103
11
|
readonly input: GenerateDataKeyPairCommandInput;
|
|
104
12
|
constructor(input: GenerateDataKeyPairCommandInput);
|
|
105
|
-
|
|
106
|
-
* @internal
|
|
107
|
-
*/
|
|
13
|
+
|
|
108
14
|
resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: KMSClientResolvedConfig, options?: __HttpHandlerOptions): Handler<GenerateDataKeyPairCommandInput, GenerateDataKeyPairCommandOutput>;
|
|
109
15
|
private serialize;
|
|
110
16
|
private deserialize;
|
|
@@ -6,95 +6,11 @@ export interface GenerateDataKeyPairWithoutPlaintextCommandInput extends Generat
|
|
|
6
6
|
}
|
|
7
7
|
export interface GenerateDataKeyPairWithoutPlaintextCommandOutput extends GenerateDataKeyPairWithoutPlaintextResponse, __MetadataBearer {
|
|
8
8
|
}
|
|
9
|
-
|
|
10
|
-
* <p>Generates a unique asymmetric data key pair. The
|
|
11
|
-
* <code>GenerateDataKeyPairWithoutPlaintext</code> operation returns a plaintext public key
|
|
12
|
-
* and a copy of the private key that is encrypted under the symmetric KMS key you specify.
|
|
13
|
-
* Unlike <a>GenerateDataKeyPair</a>, this operation does not return a plaintext
|
|
14
|
-
* private key. </p>
|
|
15
|
-
* <p>You can use the public key that <code>GenerateDataKeyPairWithoutPlaintext</code> returns
|
|
16
|
-
* to encrypt data or verify a signature outside of KMS. Then, store the encrypted private key
|
|
17
|
-
* with the data. 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>
|
|
18
|
-
* <p>To generate a data key pair, you must specify a symmetric KMS key to encrypt the private
|
|
19
|
-
* key in a data key pair. You cannot use an asymmetric KMS key or a KMS key in a custom key
|
|
20
|
-
* store. To get the type and origin of your KMS key, use the <a>DescribeKey</a>
|
|
21
|
-
* operation. </p>
|
|
22
|
-
* <p>Use the <code>KeyPairSpec</code> parameter to choose an RSA or Elliptic Curve (ECC) data
|
|
23
|
-
* key pair. KMS recommends that your use ECC key pairs for signing, and use RSA key pairs for
|
|
24
|
-
* either encryption or signing, but not both. However, KMS cannot enforce any restrictions on
|
|
25
|
-
* the use of data key pairs outside of KMS.</p>
|
|
26
|
-
* <p>
|
|
27
|
-
* <code>GenerateDataKeyPairWithoutPlaintext</code> returns a unique data key pair for each
|
|
28
|
-
* request. The bytes in the key are not related to the caller or KMS key that is used to encrypt
|
|
29
|
-
* the private key. The public key is a DER-encoded X.509 SubjectPublicKeyInfo, as specified in
|
|
30
|
-
* <a href="https://tools.ietf.org/html/rfc5280">RFC 5280</a>.</p>
|
|
31
|
-
*
|
|
32
|
-
* <p>You can use the optional encryption context to add additional security to the encryption
|
|
33
|
-
* operation. If you specify an <code>EncryptionContext</code>, you must specify the same
|
|
34
|
-
* encryption context (a case-sensitive exact match) when decrypting the encrypted data key.
|
|
35
|
-
* Otherwise, the request to decrypt fails with an <code>InvalidCiphertextException</code>. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context">Encryption Context</a> in the
|
|
36
|
-
* <i>Key Management Service Developer Guide</i>.</p>
|
|
37
|
-
* <p>The KMS key that you use for this operation must be in a compatible key state. For
|
|
38
|
-
* details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html">Key state: Effect on your KMS key</a> in the <i>Key Management Service Developer Guide</i>.</p>
|
|
39
|
-
* <p>
|
|
40
|
-
* <b>Cross-account
|
|
41
|
-
* use</b>: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify
|
|
42
|
-
* the key ARN or alias ARN in the value of the <code>KeyId</code> parameter.</p>
|
|
43
|
-
*
|
|
44
|
-
* <p>
|
|
45
|
-
* <b>Required permissions</b>: <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:GenerateDataKeyPairWithoutPlaintext</a> (key
|
|
46
|
-
* policy)</p>
|
|
47
|
-
* <p>
|
|
48
|
-
* <b>Related operations:</b>
|
|
49
|
-
* </p>
|
|
50
|
-
* <ul>
|
|
51
|
-
* <li>
|
|
52
|
-
* <p>
|
|
53
|
-
* <a>Decrypt</a>
|
|
54
|
-
* </p>
|
|
55
|
-
* </li>
|
|
56
|
-
* <li>
|
|
57
|
-
* <p>
|
|
58
|
-
* <a>Encrypt</a>
|
|
59
|
-
* </p>
|
|
60
|
-
* </li>
|
|
61
|
-
* <li>
|
|
62
|
-
* <p>
|
|
63
|
-
* <a>GenerateDataKey</a>
|
|
64
|
-
* </p>
|
|
65
|
-
* </li>
|
|
66
|
-
* <li>
|
|
67
|
-
* <p>
|
|
68
|
-
* <a>GenerateDataKeyPair</a>
|
|
69
|
-
* </p>
|
|
70
|
-
* </li>
|
|
71
|
-
* <li>
|
|
72
|
-
* <p>
|
|
73
|
-
* <a>GenerateDataKeyWithoutPlaintext</a>
|
|
74
|
-
* </p>
|
|
75
|
-
* </li>
|
|
76
|
-
* </ul>
|
|
77
|
-
* @example
|
|
78
|
-
* Use a bare-bones client and the command you need to make an API call.
|
|
79
|
-
* ```javascript
|
|
80
|
-
* import { KMSClient, GenerateDataKeyPairWithoutPlaintextCommand } from "@aws-sdk/client-kms"; // ES Modules import
|
|
81
|
-
* // const { KMSClient, GenerateDataKeyPairWithoutPlaintextCommand } = require("@aws-sdk/client-kms"); // CommonJS import
|
|
82
|
-
* const client = new KMSClient(config);
|
|
83
|
-
* const command = new GenerateDataKeyPairWithoutPlaintextCommand(input);
|
|
84
|
-
* const response = await client.send(command);
|
|
85
|
-
* ```
|
|
86
|
-
*
|
|
87
|
-
* @see {@link GenerateDataKeyPairWithoutPlaintextCommandInput} for command's `input` shape.
|
|
88
|
-
* @see {@link GenerateDataKeyPairWithoutPlaintextCommandOutput} for command's `response` shape.
|
|
89
|
-
* @see {@link KMSClientResolvedConfig | config} for command's `input` shape.
|
|
90
|
-
*
|
|
91
|
-
*/
|
|
9
|
+
|
|
92
10
|
export declare class GenerateDataKeyPairWithoutPlaintextCommand extends $Command<GenerateDataKeyPairWithoutPlaintextCommandInput, GenerateDataKeyPairWithoutPlaintextCommandOutput, KMSClientResolvedConfig> {
|
|
93
11
|
readonly input: GenerateDataKeyPairWithoutPlaintextCommandInput;
|
|
94
12
|
constructor(input: GenerateDataKeyPairWithoutPlaintextCommandInput);
|
|
95
|
-
|
|
96
|
-
* @internal
|
|
97
|
-
*/
|
|
13
|
+
|
|
98
14
|
resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: KMSClientResolvedConfig, options?: __HttpHandlerOptions): Handler<GenerateDataKeyPairWithoutPlaintextCommandInput, GenerateDataKeyPairWithoutPlaintextCommandOutput>;
|
|
99
15
|
private serialize;
|
|
100
16
|
private deserialize;
|
|
@@ -6,100 +6,11 @@ export interface GenerateDataKeyWithoutPlaintextCommandInput extends GenerateDat
|
|
|
6
6
|
}
|
|
7
7
|
export interface GenerateDataKeyWithoutPlaintextCommandOutput extends GenerateDataKeyWithoutPlaintextResponse, __MetadataBearer {
|
|
8
8
|
}
|
|
9
|
-
|
|
10
|
-
* <p>Generates a unique symmetric data key. This operation returns a data key that is encrypted
|
|
11
|
-
* under a KMS key that you specify. To request an asymmetric data key pair, use the <a>GenerateDataKeyPair</a> or <a>GenerateDataKeyPairWithoutPlaintext</a>
|
|
12
|
-
* operations.</p>
|
|
13
|
-
* <p>
|
|
14
|
-
* <code>GenerateDataKeyWithoutPlaintext</code> is identical to the <a>GenerateDataKey</a> operation except that returns only the encrypted copy of the
|
|
15
|
-
* data key. This operation is useful for systems that need to encrypt data at some point, but
|
|
16
|
-
* not immediately. When you need to encrypt the data, you call the <a>Decrypt</a>
|
|
17
|
-
* operation on the encrypted copy of the key. </p>
|
|
18
|
-
* <p>It's also useful in distributed systems with different levels of trust. For example, you
|
|
19
|
-
* might store encrypted data in containers. One component of your system creates new containers
|
|
20
|
-
* and stores an encrypted data key with each container. Then, a different component puts the
|
|
21
|
-
* data into the containers. That component first decrypts the data key, uses the plaintext data
|
|
22
|
-
* key to encrypt data, puts the encrypted data into the container, and then destroys the
|
|
23
|
-
* plaintext data key. In this system, the component that creates the containers never sees the
|
|
24
|
-
* plaintext data key.</p>
|
|
25
|
-
* <p>
|
|
26
|
-
* <code>GenerateDataKeyWithoutPlaintext</code> returns a unique data key for each request.
|
|
27
|
-
* The bytes in the keys are not related to the caller or KMS key that is used to encrypt the
|
|
28
|
-
* private key.</p>
|
|
29
|
-
*
|
|
30
|
-
* <p>To generate a data key, you must specify the symmetric KMS key that is used to encrypt the
|
|
31
|
-
* data key. You cannot use an asymmetric KMS key to generate a data key. To get the type of your
|
|
32
|
-
* KMS key, use the <a>DescribeKey</a> operation.</p>
|
|
33
|
-
*
|
|
34
|
-
* <p>If the operation succeeds, you will find the encrypted copy of the data key in the
|
|
35
|
-
* <code>CiphertextBlob</code> field.</p>
|
|
36
|
-
*
|
|
37
|
-
* <p>You can use the optional encryption context to add additional security to the encryption
|
|
38
|
-
* operation. If you specify an <code>EncryptionContext</code>, you must specify the same
|
|
39
|
-
* encryption context (a case-sensitive exact match) when decrypting the encrypted data key.
|
|
40
|
-
* Otherwise, the request to decrypt fails with an <code>InvalidCiphertextException</code>. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context">Encryption Context</a> in the
|
|
41
|
-
* <i>Key Management Service Developer Guide</i>.</p>
|
|
42
|
-
* <p>The KMS key that you use for this operation must be in a compatible key state. For
|
|
43
|
-
* details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html">Key state: Effect on your KMS key</a> in the <i>Key Management Service Developer Guide</i>.</p>
|
|
44
|
-
* <p>
|
|
45
|
-
* <b>Cross-account
|
|
46
|
-
* use</b>: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify
|
|
47
|
-
* the key ARN or alias ARN in the value of the <code>KeyId</code> parameter.</p>
|
|
48
|
-
*
|
|
49
|
-
* <p>
|
|
50
|
-
* <b>Required permissions</b>: <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:GenerateDataKeyWithoutPlaintext</a> (key
|
|
51
|
-
* policy)</p>
|
|
52
|
-
* <p>
|
|
53
|
-
* <b>Related operations:</b>
|
|
54
|
-
* </p>
|
|
55
|
-
* <ul>
|
|
56
|
-
* <li>
|
|
57
|
-
* <p>
|
|
58
|
-
* <a>Decrypt</a>
|
|
59
|
-
* </p>
|
|
60
|
-
* </li>
|
|
61
|
-
* <li>
|
|
62
|
-
* <p>
|
|
63
|
-
* <a>Encrypt</a>
|
|
64
|
-
* </p>
|
|
65
|
-
* </li>
|
|
66
|
-
* <li>
|
|
67
|
-
* <p>
|
|
68
|
-
* <a>GenerateDataKey</a>
|
|
69
|
-
* </p>
|
|
70
|
-
* </li>
|
|
71
|
-
* <li>
|
|
72
|
-
* <p>
|
|
73
|
-
* <a>GenerateDataKeyPair</a>
|
|
74
|
-
* </p>
|
|
75
|
-
* </li>
|
|
76
|
-
* <li>
|
|
77
|
-
* <p>
|
|
78
|
-
* <a>GenerateDataKeyPairWithoutPlaintext</a>
|
|
79
|
-
* </p>
|
|
80
|
-
* </li>
|
|
81
|
-
* </ul>
|
|
82
|
-
* @example
|
|
83
|
-
* Use a bare-bones client and the command you need to make an API call.
|
|
84
|
-
* ```javascript
|
|
85
|
-
* import { KMSClient, GenerateDataKeyWithoutPlaintextCommand } from "@aws-sdk/client-kms"; // ES Modules import
|
|
86
|
-
* // const { KMSClient, GenerateDataKeyWithoutPlaintextCommand } = require("@aws-sdk/client-kms"); // CommonJS import
|
|
87
|
-
* const client = new KMSClient(config);
|
|
88
|
-
* const command = new GenerateDataKeyWithoutPlaintextCommand(input);
|
|
89
|
-
* const response = await client.send(command);
|
|
90
|
-
* ```
|
|
91
|
-
*
|
|
92
|
-
* @see {@link GenerateDataKeyWithoutPlaintextCommandInput} for command's `input` shape.
|
|
93
|
-
* @see {@link GenerateDataKeyWithoutPlaintextCommandOutput} for command's `response` shape.
|
|
94
|
-
* @see {@link KMSClientResolvedConfig | config} for command's `input` shape.
|
|
95
|
-
*
|
|
96
|
-
*/
|
|
9
|
+
|
|
97
10
|
export declare class GenerateDataKeyWithoutPlaintextCommand extends $Command<GenerateDataKeyWithoutPlaintextCommandInput, GenerateDataKeyWithoutPlaintextCommandOutput, KMSClientResolvedConfig> {
|
|
98
11
|
readonly input: GenerateDataKeyWithoutPlaintextCommandInput;
|
|
99
12
|
constructor(input: GenerateDataKeyWithoutPlaintextCommandInput);
|
|
100
|
-
|
|
101
|
-
* @internal
|
|
102
|
-
*/
|
|
13
|
+
|
|
103
14
|
resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: KMSClientResolvedConfig, options?: __HttpHandlerOptions): Handler<GenerateDataKeyWithoutPlaintextCommandInput, GenerateDataKeyWithoutPlaintextCommandOutput>;
|
|
104
15
|
private serialize;
|
|
105
16
|
private deserialize;
|
|
@@ -6,38 +6,11 @@ export interface GenerateRandomCommandInput extends GenerateRandomRequest {
|
|
|
6
6
|
}
|
|
7
7
|
export interface GenerateRandomCommandOutput extends GenerateRandomResponse, __MetadataBearer {
|
|
8
8
|
}
|
|
9
|
-
|
|
10
|
-
* <p>Returns a random byte string that is cryptographically secure.</p>
|
|
11
|
-
* <p>By default, the random byte string is generated in KMS. To generate the byte string in
|
|
12
|
-
* the CloudHSM cluster that is associated with a <a href="https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html">custom key store</a>, specify the custom key store
|
|
13
|
-
* ID.</p>
|
|
14
|
-
* <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>
|
|
15
|
-
* <p>For more information about entropy and random number generation, see
|
|
16
|
-
* <a href="https://docs.aws.amazon.com/kms/latest/cryptographic-details/">Key Management Service Cryptographic Details</a>.</p>
|
|
17
|
-
*
|
|
18
|
-
* <p>
|
|
19
|
-
* <b>Required permissions</b>: <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html">kms:GenerateRandom</a> (IAM policy)</p>
|
|
20
|
-
* @example
|
|
21
|
-
* Use a bare-bones client and the command you need to make an API call.
|
|
22
|
-
* ```javascript
|
|
23
|
-
* import { KMSClient, GenerateRandomCommand } from "@aws-sdk/client-kms"; // ES Modules import
|
|
24
|
-
* // const { KMSClient, GenerateRandomCommand } = require("@aws-sdk/client-kms"); // CommonJS import
|
|
25
|
-
* const client = new KMSClient(config);
|
|
26
|
-
* const command = new GenerateRandomCommand(input);
|
|
27
|
-
* const response = await client.send(command);
|
|
28
|
-
* ```
|
|
29
|
-
*
|
|
30
|
-
* @see {@link GenerateRandomCommandInput} for command's `input` shape.
|
|
31
|
-
* @see {@link GenerateRandomCommandOutput} for command's `response` shape.
|
|
32
|
-
* @see {@link KMSClientResolvedConfig | config} for command's `input` shape.
|
|
33
|
-
*
|
|
34
|
-
*/
|
|
9
|
+
|
|
35
10
|
export declare class GenerateRandomCommand extends $Command<GenerateRandomCommandInput, GenerateRandomCommandOutput, KMSClientResolvedConfig> {
|
|
36
11
|
readonly input: GenerateRandomCommandInput;
|
|
37
12
|
constructor(input: GenerateRandomCommandInput);
|
|
38
|
-
|
|
39
|
-
* @internal
|
|
40
|
-
*/
|
|
13
|
+
|
|
41
14
|
resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: KMSClientResolvedConfig, options?: __HttpHandlerOptions): Handler<GenerateRandomCommandInput, GenerateRandomCommandOutput>;
|
|
42
15
|
private serialize;
|
|
43
16
|
private deserialize;
|
|
@@ -6,37 +6,11 @@ export interface GetKeyPolicyCommandInput extends GetKeyPolicyRequest {
|
|
|
6
6
|
}
|
|
7
7
|
export interface GetKeyPolicyCommandOutput extends GetKeyPolicyResponse, __MetadataBearer {
|
|
8
8
|
}
|
|
9
|
-
|
|
10
|
-
* <p>Gets a key policy attached to the specified KMS key.</p>
|
|
11
|
-
* <p>
|
|
12
|
-
* <b>Cross-account use</b>: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.</p>
|
|
13
|
-
*
|
|
14
|
-
* <p>
|
|
15
|
-
* <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>
|
|
16
|
-
* <p>
|
|
17
|
-
* <b>Related operations</b>: <a>PutKeyPolicy</a>
|
|
18
|
-
* </p>
|
|
19
|
-
* @example
|
|
20
|
-
* Use a bare-bones client and the command you need to make an API call.
|
|
21
|
-
* ```javascript
|
|
22
|
-
* import { KMSClient, GetKeyPolicyCommand } from "@aws-sdk/client-kms"; // ES Modules import
|
|
23
|
-
* // const { KMSClient, GetKeyPolicyCommand } = require("@aws-sdk/client-kms"); // CommonJS import
|
|
24
|
-
* const client = new KMSClient(config);
|
|
25
|
-
* const command = new GetKeyPolicyCommand(input);
|
|
26
|
-
* const response = await client.send(command);
|
|
27
|
-
* ```
|
|
28
|
-
*
|
|
29
|
-
* @see {@link GetKeyPolicyCommandInput} for command's `input` shape.
|
|
30
|
-
* @see {@link GetKeyPolicyCommandOutput} for command's `response` shape.
|
|
31
|
-
* @see {@link KMSClientResolvedConfig | config} for command's `input` shape.
|
|
32
|
-
*
|
|
33
|
-
*/
|
|
9
|
+
|
|
34
10
|
export declare class GetKeyPolicyCommand extends $Command<GetKeyPolicyCommandInput, GetKeyPolicyCommandOutput, KMSClientResolvedConfig> {
|
|
35
11
|
readonly input: GetKeyPolicyCommandInput;
|
|
36
12
|
constructor(input: GetKeyPolicyCommandInput);
|
|
37
|
-
|
|
38
|
-
* @internal
|
|
39
|
-
*/
|
|
13
|
+
|
|
40
14
|
resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: KMSClientResolvedConfig, options?: __HttpHandlerOptions): Handler<GetKeyPolicyCommandInput, GetKeyPolicyCommandOutput>;
|
|
41
15
|
private serialize;
|
|
42
16
|
private deserialize;
|
|
@@ -6,66 +6,11 @@ export interface GetKeyRotationStatusCommandInput extends GetKeyRotationStatusRe
|
|
|
6
6
|
}
|
|
7
7
|
export interface GetKeyRotationStatusCommandOutput extends GetKeyRotationStatusResponse, __MetadataBearer {
|
|
8
8
|
}
|
|
9
|
-
|
|
10
|
-
* <p>Gets a Boolean value that indicates whether <a href="https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html">automatic rotation of the key material</a> is
|
|
11
|
-
* enabled for the specified KMS key.</p>
|
|
12
|
-
* <p>You cannot enable automatic rotation of <a href="https://docs.aws.amazon.com/kms/latest/developerguide/symm-asymm-concepts.html#asymmetric-cmks">asymmetric KMS keys</a>, KMS keys with <a href="https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html">imported key material</a>, or KMS keys in a <a href="https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html">custom key store</a>. To enable or disable automatic rotation of a set of related <a href="https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html#mrk-replica-key">multi-Region keys</a>, set the property on the primary key. The key rotation status for these KMS keys is always
|
|
13
|
-
* <code>false</code>.</p>
|
|
14
|
-
* <p>The KMS key that you use for this operation must be in a compatible key state. For
|
|
15
|
-
* details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html">Key state: Effect on your KMS key</a> in the <i>Key Management Service Developer Guide</i>.</p>
|
|
16
|
-
* <ul>
|
|
17
|
-
* <li>
|
|
18
|
-
* <p>Disabled: The key rotation status does not change when you disable a KMS key. However,
|
|
19
|
-
* while the KMS key is disabled, KMS does not rotate the key material.</p>
|
|
20
|
-
* </li>
|
|
21
|
-
* <li>
|
|
22
|
-
* <p>Pending deletion: While a KMS key is pending deletion, its key rotation status is
|
|
23
|
-
* <code>false</code> and KMS does not rotate the key material. If you cancel the
|
|
24
|
-
* deletion, the original key rotation status is restored.</p>
|
|
25
|
-
* </li>
|
|
26
|
-
* </ul>
|
|
27
|
-
* <p>
|
|
28
|
-
* <b>Cross-account use</b>: Yes. To perform this operation on a KMS key in a different Amazon Web Services account, specify the key
|
|
29
|
-
* ARN in the value of the <code>KeyId</code> parameter.</p>
|
|
30
|
-
*
|
|
31
|
-
* <p>
|
|
32
|
-
* <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>
|
|
33
|
-
* <p>
|
|
34
|
-
* <b>Related operations:</b>
|
|
35
|
-
* </p>
|
|
36
|
-
* <ul>
|
|
37
|
-
* <li>
|
|
38
|
-
* <p>
|
|
39
|
-
* <a>DisableKeyRotation</a>
|
|
40
|
-
* </p>
|
|
41
|
-
* </li>
|
|
42
|
-
* <li>
|
|
43
|
-
* <p>
|
|
44
|
-
* <a>EnableKeyRotation</a>
|
|
45
|
-
* </p>
|
|
46
|
-
* </li>
|
|
47
|
-
* </ul>
|
|
48
|
-
* @example
|
|
49
|
-
* Use a bare-bones client and the command you need to make an API call.
|
|
50
|
-
* ```javascript
|
|
51
|
-
* import { KMSClient, GetKeyRotationStatusCommand } from "@aws-sdk/client-kms"; // ES Modules import
|
|
52
|
-
* // const { KMSClient, GetKeyRotationStatusCommand } = require("@aws-sdk/client-kms"); // CommonJS import
|
|
53
|
-
* const client = new KMSClient(config);
|
|
54
|
-
* const command = new GetKeyRotationStatusCommand(input);
|
|
55
|
-
* const response = await client.send(command);
|
|
56
|
-
* ```
|
|
57
|
-
*
|
|
58
|
-
* @see {@link GetKeyRotationStatusCommandInput} for command's `input` shape.
|
|
59
|
-
* @see {@link GetKeyRotationStatusCommandOutput} for command's `response` shape.
|
|
60
|
-
* @see {@link KMSClientResolvedConfig | config} for command's `input` shape.
|
|
61
|
-
*
|
|
62
|
-
*/
|
|
9
|
+
|
|
63
10
|
export declare class GetKeyRotationStatusCommand extends $Command<GetKeyRotationStatusCommandInput, GetKeyRotationStatusCommandOutput, KMSClientResolvedConfig> {
|
|
64
11
|
readonly input: GetKeyRotationStatusCommandInput;
|
|
65
12
|
constructor(input: GetKeyRotationStatusCommandInput);
|
|
66
|
-
|
|
67
|
-
* @internal
|
|
68
|
-
*/
|
|
13
|
+
|
|
69
14
|
resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: KMSClientResolvedConfig, options?: __HttpHandlerOptions): Handler<GetKeyRotationStatusCommandInput, GetKeyRotationStatusCommandOutput>;
|
|
70
15
|
private serialize;
|
|
71
16
|
private deserialize;
|