Sono disponibili altri esempi per SDK AWS nel repository GitHub della documentazione degli esempi per SDK AWS
Utilizzare GenerateDataKeyWithoutPlaintext con un SDK AWS o una CLI
Gli esempi di codice seguenti mostrano come utilizzare GenerateDataKeyWithoutPlaintext.
- CLI
-
- AWS CLI
-
Come generare una chiave di dati simmetrica a 256 bit senza una chiave di testo non crittografato
L’esempio
generate-data-key-without-plaintextseguente richiede una copia crittografata di una chiave dati simmetrica a 256 bit da utilizzare all’esterno di AWS. Puoi eseguire una chiamata ad AWS KMS per decrittografare la chiave di dati quando sei pronto per usarla.Per richiedere una chiave di dati a 256 bit, utilizza il parametro
key-speccon il valoreAES_256. Per richiedere una chiave di dati a 128 bit, utilizza il parametrokey-speccon il valoreAES_128. Per tutte le altre lunghezze di chiavi di dati, utilizza il parametronumber-of-bytes.La chiave KMS specificata deve essere una chiave KMS di crittografia simmetrica, ovvero una chiave KMS con un valore di KeySpec pari a 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-specAES_256Output:
{ "CiphertextBlob": "AQEDAHjRYf5WytIc0C857tFSnBaPn2F8DgfmThbJlGfR8P3WlwAAAH4wfAYJKoZIhvcNAQcGoG8wbQIBADBoBgkqhkiG9w0BBwEwHgYJYIZIAWUDBAEuMBEEDEFogL", "KeyId": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "KeyMaterialId": "0b7fd7ddbac6eef27907413567cad8c810e2883dc8a7534067a82ee1142fc1e6" }CiphertextBlob(chiave di dati crittografati) viene restituito codificato in formato Base64.Per ulteriori informazioni, consulta Chiavi di dati nella Guida per gli sviluppatori del Servizio AWS di gestione delle chiavi.
-
Per informazioni dettagliate sull’API, consulta GenerateDataKeyWithoutPlaintext
nella documentazione di riferimento dei comandi della AWS CLI.
-
- Rust
-
- SDK per Rust
-
Nota
Ulteriori informazioni su GitHub. Trova l’esempio completo e scopri di più sulla configurazione e l’esecuzione nel Repository di esempi di codice AWS
. 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(()) }-
Per informazioni dettagliate sull’API, consulta GenerateDataKeyWithoutPlaintext
nella documentazione di riferimento dell’API SDK AWS per Rust.
-