Verwenden Sie es GenerateDataKeyWithoutPlaintext mit einem AWS SDK oder CLI - AWS SDKCode-Beispiele

Weitere AWS SDK Beispiele sind im Repo AWS Doc SDK Examples GitHub verfügbar.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Verwenden Sie es GenerateDataKeyWithoutPlaintext mit einem AWS SDK oder CLI

Die folgenden Codebeispiele zeigen die VerwendungGenerateDataKeyWithoutPlaintext.

CLI
AWS CLI

Um einen symmetrischen 256-Bit-Datenschlüssel ohne Klartextschlüssel zu generieren

Im folgenden generate-data-key-without-plaintext Beispiel wird eine verschlüsselte Kopie eines symmetrischen 256-Bit-Datenschlüssels zur Verwendung außerhalb von angefordert. AWS Sie können aufrufen AWS KMS, um den Datenschlüssel zu entschlüsseln, wenn Sie bereit sind, ihn zu verwenden.

Um einen 256-Bit-Datenschlüssel anzufordern, verwenden Sie den key-spec Parameter mit dem Wert. AES_256 Um einen 128-Bit-Datenschlüssel anzufordern, verwenden Sie den key-spec Parameter mit dem Wert. AES_128 Verwenden Sie für alle anderen Datenschlüssellängen den number-of-bytes Parameter.

Der von Ihnen angegebene KMS Schlüssel muss ein symmetrischer KMS Verschlüsselungsschlüssel sein, d. h. ein KMS Schlüssel mit dem Schlüsselspezifikationswert _. SYMMETRIC DEFAULT

aws kms generate-data-key-without-plaintext \ --key-id "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" \ --key-spec AES_256

Ausgabe:

{ "CiphertextBlob": "AQEDAHjRYf5WytIc0C857tFSnBaPn2F8DgfmThbJlGfR8P3WlwAAAH4wfAYJKoZIhvcNAQcGoG8wbQIBADBoBgkqhkiG9w0BBwEwHgYJYIZIAWUDBAEuMBEEDEFogL", "KeyId": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" }

Der CiphertextBlob (verschlüsselte Datenschlüssel) wird im Base64-codierten Format zurückgegeben.

Weitere Informationen finden Sie unter Datenschlüssel im AWS Key Management Service Developer Guide.

Rust
SDKfür Rust
Anmerkung

Es gibt noch mehr dazu GitHub. Sie sehen das vollständige Beispiel und erfahren, wie Sie das AWS -Code-Beispiel-Repository einrichten und ausführen.

async fn make_key(client: &Client, key: &str) -> Result<(), Error> { let resp = client .generate_data_key_without_plaintext() .key_id(key) .key_spec(DataKeySpec::Aes256) .send() .await?; // Did we get an encrypted blob? let blob = resp.ciphertext_blob.expect("Could not get encrypted text"); let bytes = blob.as_ref(); let s = base64::encode(bytes); println!(); println!("Data key:"); println!("{}", s); Ok(()) }