Da utilizzare GenerateRandom con un AWS SDK o CLI - AWS Key Management Service

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Da utilizzare GenerateRandom con un AWS SDK o CLI

I seguenti esempi di codice mostrano come utilizzareGenerateRandom.

CLI
AWS CLI

Esempio 1: generare una stringa di byte casuali a 256 bit (Linux o) macOs

L'generate-randomesempio seguente genera una stringa di byte casuali a 256 bit (32 byte) con codifica in base64. L'esempio decodifica la stringa di byte e la salva in un file casuale.

Quando si esegue questo comando, è necessario utilizzare il number-of-bytes parametro per specificare la lunghezza del valore casuale in byte.

Non si specifica una KMS chiave quando si esegue questo comando. La stringa di byte casuale non è correlata a nessuna KMS chiave.

Per impostazione predefinita, AWS KMS genera il numero casuale. Tuttavia, se si specifica un archivio di chiavi personalizzato< https://docs.aws.amazon.com/kms/ latest/developerguide/custom - key-store-overview .html>, la stringa di byte casuale viene generata nel HSM cluster AWS Cloud associato all'archivio di chiavi personalizzato.

Questo esempio utilizza i seguenti parametri e valori:

Utilizza il --number-of-bytes parametro richiesto con un valore pari 32 a per richiedere una stringa da 32 byte (256 bit). Utilizza il --output parametro con valore text per indirizzare AWS CLI a restituire l'output come testo, anziché. Utilizza il --query parameter per estrarre il valore della Plaintext proprietà dalla response.IT invia (|) l'output del comando all'base64utilità, che decodifica l'output estratto.Utilizza l'operatore di reindirizzamento (>) per salvare la stringa di byte decodificata in File.it utilizza il JSON ExampleRandom operatore di reindirizzamento (>) per salvare il testo cifrato binario in un file.

aws kms generate-random \ --number-of-bytes 32 \ --output text \ --query Plaintext | base64 --decode > ExampleRandom

Questo comando non produce alcun output.

Per ulteriori informazioni, vedere GenerateRandomnel AWS Key Management Service Reference. API

Esempio 2: generare un numero casuale a 256 bit (prompt dei comandi di Windows)

L'esempio seguente utilizza il generate-random comando per generare una stringa di byte casuali a 256 bit (32 byte) con codifica base64. L'esempio decodifica la stringa di byte e la salva in un file casuale. Questo esempio è uguale all'esempio precedente, tranne per il fatto che utilizza l'certutilutilità di Windows per decodificare in base64 la stringa di byte casuale prima di salvarla in un file.

Innanzitutto, genera una stringa di byte casuali codificata in base64 e la salva in un file temporaneo,. ExampleRandom.base64

aws kms generate-random \ --number-of-bytes 32 \ --output text \ --query Plaintext > ExampleRandom.base64

Poiché l'output del generate-random comando viene salvato in un file, questo esempio non produce alcun output.

Ora utilizzate il certutil -decode comando per decodificare la stringa di byte codificata in base64 nel file. ExampleRandom.base64 Quindi, salva la stringa di byte decodificata nel file. ExampleRandom

certutil -decode ExampleRandom.base64 ExampleRandom

Output:

Input Length = 18 Output Length = 12 CertUtil: -decode command completed successfully.

Per ulteriori informazioni, vedere GenerateRandomnel AWS Key Management Service API Reference.

  • Per API i dettagli, vedere GenerateRandomin AWS CLI Command Reference.

Rust
SDKper Rust
Nota

c'è altro da fare GitHub. Trova l'esempio completo e scopri di più sulla configurazione e l'esecuzione nel Repository di esempi di codice AWS.

async fn make_string(client: &Client, length: i32) -> Result<(), Error> { let resp = client .generate_random() .number_of_bytes(length) .send() .await?; // Did we get an encrypted blob? let blob = resp.plaintext.expect("Could not get encrypted text"); let bytes = blob.as_ref(); let s = base64::encode(bytes); println!(); println!("Data key:"); println!("{}", s); Ok(()) }
  • Per API i dettagli, GenerateRandomconsulta AWS SDKRust API Reference.

Per un elenco completo delle guide per AWS SDK gli sviluppatori e degli esempi di codice, consultaUtilizzo di questo servizio con un AWS SDK. Questo argomento include anche informazioni su come iniziare e dettagli sulle SDK versioni precedenti.