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à.
Esempi: calcoli delle firme in AWS Signature Version 4
Argomenti
Per le richieste autenticate, a meno che non si utilizzino AWS gli SDK, è necessario scrivere codice per calcolare le firme che forniscono informazioni di autenticazione nelle richieste. Il calcolo delle AWS firme nella versione 4 di Signature (vediAutenticazione delle richieste (AWS Signature (versione 4)) può essere un'impresa complessa e ti consigliamo di utilizzare gli AWS SDK quando possibile.
Questa sezione fornisce esempi di calcoli delle firme scritti in Java e C#. Gli esempi di codice inviano le seguenti richieste e utilizzano l'intestazione HTTP Authorization per fornire informazioni di autenticazione:
-
Oggetto PUT: esempi separati illustrano sia il caricamento del payload completo in una sola volta sia il caricamento del payload in blocchi. Per informazioni sull'utilizzo dell'intestazione Authorization per l'autenticazione, vedere. Autenticazione delle richieste: utilizzo dell'intestazione di autorizzazione (AWS Signature (versione 4)
-
Oggetto GET: questo esempio genera un URL prefirmato per ottenere un oggetto. I parametri di interrogazione forniscono la firma e altre informazioni di autenticazione. Gli utenti possono incollare un URL prefirmato nel browser per recuperare l'oggetto oppure utilizzare l'URL per creare un link cliccabile. Per informazioni sull'utilizzo dei parametri di interrogazione per l'autenticazione, vedere. Autenticazione delle richieste: utilizzo dei parametri di interrogazione (AWS Signature (versione 4)
Il resto di questa sezione descrive gli esempi in Java e C#. Gli argomenti includono istruzioni per scaricare gli esempi e per eseguirli.
Esempi di calcolo delle firme utilizzando Java (AWS Signature (versione 4)
L'esempio Java che mostra il calcolo della firma può essere scaricato all'indirizzo https://docs.aws.amazon.com/AmazonS3/latest/API/samples/AWSS3SigV4JavaSamples.zip. Nota che questi esempi utilizzano AWS SDK for Java v1 e consigliamo di utilizzare AWS SDK for Java v2 per le nuove applicazioni. InRunAllSamples.java, la main() funzione esegue richieste di esempio per creare un oggetto, recuperare un oggetto e creare un URL prefirmato per l'oggetto. L'esempio crea un oggetto dalla stringa di testo fornita nel codice:
PutS3ObjectSample.putS3Object(bucketName, regionName, awsAccessKey, awsSecretKey); GetS3ObjectSample.getS3Object(bucketName, regionName, awsAccessKey, awsSecretKey); PresignedUrlSample.getPresignedUrlToS3Object(bucketName, regionName, awsAccessKey, awsSecretKey); PutS3ObjectChunkedSample.putS3ObjectChunked(bucketName, regionName, awsAccessKey, awsSecretKey);
Per testare gli esempi su un Linux-based computer
Le seguenti istruzioni si riferiscono al sistema operativo Linux.
-
In un terminale, accedi alla directory che contiene
AWSS3SigV4JavaSamples.zip. -
Decomprimere il file .zip.
-
In un editor di testo, apri il file
./com/amazonaws/services/s3/samples/RunAllSamples.java. Aggiorna il codice con le seguenti informazioni:Il nome di un bucket in cui è possibile creare il nuovo oggetto.
Nota
Gli esempi utilizzano una richiesta di stile ospitata virtualmente per accedere al bucket. Per evitare potenziali errori, assicurati che il nome del bucket sia conforme alle regole di denominazione dei bucket, come spiegato in Restrizioni e limitazioni del bucket nella Amazon Simple Storage Service User Guide.
Regione AWS dove si trova il bucket.
Se il bucket si trova nella regione degli Stati Uniti orientali (Virginia settentrionale), usa us-east-1 per specificare la regione. Per un elenco di altre Regioni AWS, vai su Amazon Simple Storage Service (S3) nel. Riferimenti generali di AWS
-
Compila il codice sorgente e memorizza le classi compilate nella directory.
bin/javac -d bin -source 6 -verbose com -
Cambia la directory in
bin/, quindi esegui.RunAllSamplesjava com.amazonaws.services.s3.sample.RunAllSamplesIl codice esegue tutti i metodi in
main(). Per ogni richiesta, l'output mostrerà la richiesta canonica, la stringa da firmare e la firma.
Esempi di calcoli delle firme utilizzando C# (AWS Signature (versione 4)
L'esempio in C# che mostra il calcolo della firma può essere scaricato all'indirizzo. https://docs.aws.amazon.com/AmazonS3/latest/API/samples/AmazonS3SigV4_Samples_CSharp.zip Nota che questi esempi utilizzano AWS SDK per .NET v1 e consigliamo di utilizzare AWS SDK per .NET v3 per le nuove applicazioni. InProgram.cs, la main() funzione esegue richieste di esempio per creare un oggetto, recuperare un oggetto e creare un URL prefirmato per l'oggetto. Il codice per il calcolo della firma si trova nella cartella. \Signers
PutS3ObjectSample.Run(awsRegion, bucketName, "MySampleFile.txt"); Console.WriteLine("\n\n************************************************"); PutS3ObjectChunkedSample.Run(awsRegion, bucketName, "MySampleFileChunked.txt"); Console.WriteLine("\n\n************************************************"); GetS3ObjectSample.Run(awsRegion, bucketName, "MySampleFile.txt"); Console.WriteLine("\n\n************************************************"); PresignedUrlSample.Run(awsRegion, bucketName, "MySampleFile.txt");
Per testare gli esempi con Microsoft Visual Studio 2010 o versioni successive
-
Decomprimere il file .zip.
-
Avvia Visual Studio, quindi apri il file .sln.
-
Aggiorna il App.config file con credenziali di sicurezza valide.
-
Aggiorna il codice come segue:
-
In
Program.cs, fornisci il nome del bucket e il Regione AWS luogo in cui risiede il bucket. L'esempio crea un oggetto in questo bucket.
-
-
Eseguire il codice.
-
Per verificare che l'oggetto sia stato creato, copia l'URL prefirmato creato dal programma e incollalo in una finestra del browser.