View a markdown version of this page

Esempi: calcoli delle firme in AWS Signature Version 4 - Amazon Simple Storage 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à.

Esempi: calcoli delle firme in AWS Signature Version 4

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:

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.

  1. In un terminale, accedi alla directory che contieneAWSS3SigV4JavaSamples.zip.

  2. Decomprimere il file .zip.

  3. 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

  4. Compila il codice sorgente e memorizza le classi compilate nella directory. bin/

    javac -d bin -source 6 -verbose com
  5. Cambia la directory inbin/, quindi esegui. RunAllSamples

    java com.amazonaws.services.s3.sample.RunAllSamples

    Il codice esegue tutti i metodi inmain(). 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
  1. Decomprimere il file .zip.

  2. Avvia Visual Studio, quindi apri il file .sln.

  3. Aggiorna il App.config file con credenziali di sicurezza valide.

  4. Aggiorna il codice come segue:

    • InProgram.cs, fornisci il nome del bucket e il Regione AWS luogo in cui risiede il bucket. L'esempio crea un oggetto in questo bucket.

  5. Eseguire il codice.

  6. Per verificare che l'oggetto sia stato creato, copia l'URL prefirmato creato dal programma e incollalo in una finestra del browser.