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à.
Utilizzo GenerateRandom con un AWS SDK o una CLI
Gli esempi di codice seguenti mostrano come utilizzare GenerateRandom.
- CLI
-
- AWS CLI
-
Esempio 1: come generare una stringa di byte casuale a 256 bit (Linux o macOS)
L’esempio
generate-randomseguente genera una stringa di byte casuali a 256 bit (32 byte) crittografata in formato Base64. L’esempio decodifica la stringa di byte e la salva in un file casuale.Quando esegui questo comando, devi utilizzare il parametro
number-of-bytesper specificare la lunghezza del valore casuale in byte.Non viene specificata una chiave KMS quando si esegue questo comando. La stringa di byte casuali non è correlata ad alcuna chiave KMS.
Per impostazione predefinita, AWS KMS genera il numero casuale. Tuttavia, se si specifica un key store personalizzato, la stringa di byte casuale viene generata nel cluster AWS CloudHSM associato all'archivio chiavi personalizzato.
Questo esempio utilizza i seguenti parametri e valori:
Utilizza il
--number-of-bytesparametro richiesto con un valore di32per richiedere una stringa da 32 byte (256 bit). Utilizza il--outputparametro con un valore di pertextindirizzare la AWS CLI a restituire l'output come testo, anziché JSON.Utilizza il per estrarre il valore dellaPlaintextproprietà da Response.it invia (|) l'output del comando--query parameterall'base64utilità, che decodifica l'output estratto.Utilizza l'operatore di reindirizzamento (>) per salvare la decodifica stringa di byte aggiunta al file.Utilizza l'operatore di reindirizzamento (>)ExampleRandomper salvare il testo cifrato binario in un file.aws kms generate-random \ --number-of-bytes 32 \ --output text \ --query Plaintext | base64 --decode > ExampleRandomQuesto comando non produce alcun output.
Per ulteriori informazioni, vedere GenerateRandomnel AWS Key Management Service API Reference.
Esempio 2: come generare un numero casuale a 256 bit (prompt dei comandi di Windows)
L’esempio seguente utilizza il comando
generate-randomper generare una stringa di byte casuali a 256 bit (32 byte) crittografata in formato 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’utilitàcertutildi Windows per decrittografare in formato Base64 la stringa di byte casuali prima di salvarla in un file.Genera innanzitutto una stringa di byte casuali crittografata in formato Base64 e la salva nel file temporaneo
ExampleRandom.base64.aws kms generate-random \ --number-of-bytes32\ --outputtext\ --queryPlaintext>ExampleRandom.base64Poiché l’output del comando
generate-randomviene salvato in un file, questo esempio non produce alcun output.Ora utilizza il comando
certutil -decodeper decrittografare la stringa di byte crittografata in formato Base64 nel fileExampleRandom.base64. Quindi, salva la stringa di byte decodificata nel fileExampleRandom.certutil -decode ExampleRandom.base64 ExampleRandomOutput:
Input Length = 18 Output Length = 12 CertUtil: -decode command completed successfully.Per ulteriori informazioni, vedere GenerateRandomnel AWS Key Management Service API Reference.
-
Per i dettagli sull'API, consulta GenerateRandom AWS CLI
Command Reference.
-
- Rust
-
- SDK per 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 i dettagli sulle API, consulta la GenerateRandom
guida di riferimento all'API AWS SDK for Rust.
-
Per un elenco completo delle guide per sviluppatori AWS SDK e degli esempi di codice, consulta. Utilizzo di questo servizio con un AWS SDK Questo argomento include anche informazioni su come iniziare e dettagli sulle versioni precedenti dell'SDK.