View a markdown version of this page

Beispiele: Signaturberechnungen in AWS Signaturversion 4 - Amazon Simple Storage Service

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Beispiele: Signaturberechnungen in AWS Signaturversion 4

Für authentifizierte Anfragen müssen Sie Code schreiben, um Signaturen zu berechnen, die Authentifizierungsinformationen in Ihren Anfragen bereitstellen, sofern Sie die AWS SDKs nicht verwenden. Die Signaturberechnung in AWS Signature Version 4 (sieheAnfragen authentifizieren (AWS Signatur (Version 4)) kann ein komplexes Unterfangen sein, und wir empfehlen, dass Sie die AWS SDKs verwenden, wann immer dies möglich ist.

Dieser Abschnitt enthält Beispiele für Signaturberechnungen, die in Java und C# geschrieben wurden. Die Codebeispiele senden die folgenden Anfragen und verwenden den HTTP-Authorization-Header, um Authentifizierungsinformationen bereitzustellen:

Im Rest dieses Abschnitts werden die Beispiele in Java und C# beschrieben. Die Themen enthalten Anweisungen zum Herunterladen und Ausführen der Beispiele.

Beispiele für die Berechnung von Signaturen mit Java (AWS Signatur (Version 4)

Das Java-Beispiel, das die Signaturberechnung zeigt, kann unter heruntergeladen werden https://docs.aws.amazon.com/AmazonS3/latest/API/samples/AWSS3SigV4JavaSamples.zip. Beachten Sie, dass diese Beispiele das AWS SDK für Java v1 verwenden, und wir empfehlen, AWS das SDK für Java v2 für neue Anwendungen zu verwenden. In führt die main() Funktion Beispielanforderungen ausRunAllSamples.java, um ein Objekt zu erstellen, ein Objekt abzurufen und eine vorsignierte URL für das Objekt zu erstellen. Das Beispiel erstellt ein Objekt aus der im Code angegebenen Textzeichenfolge:

PutS3ObjectSample.putS3Object(bucketName, regionName, awsAccessKey, awsSecretKey); GetS3ObjectSample.getS3Object(bucketName, regionName, awsAccessKey, awsSecretKey); PresignedUrlSample.getPresignedUrlToS3Object(bucketName, regionName, awsAccessKey, awsSecretKey); PutS3ObjectChunkedSample.putS3ObjectChunked(bucketName, regionName, awsAccessKey, awsSecretKey);
Um die Beispiele auf einem Linux-based Computer zu testen

Die folgenden Anweisungen beziehen sich auf das Linux-Betriebssystem.

  1. Navigieren Sie in einem Terminal zu dem Verzeichnis, das enthältAWSS3SigV4JavaSamples.zip.

  2. Entpacken Sie die ZIP-Datei.

  3. Öffnen Sie die Datei ./com/amazonaws/services/s3/samples/RunAllSamples.java in einem Texteditor. Aktualisieren Sie den Code mit den folgenden Informationen:

    • Der Name eines Buckets, in dem das neue Objekt erstellt werden kann.

      Anmerkung

      Die Beispiele verwenden eine virtuell gehostete Anfrage, um auf den Bucket zuzugreifen. Um mögliche Fehler zu vermeiden, stellen Sie sicher, dass Ihr Bucket-Name den Bucket-Benennungsregeln entspricht, wie unter Bucket-Einschränkungen und -Beschränkungen im Amazon Simple Storage Service-Benutzerhandbuch beschrieben.

    • AWS-Region wo sich der Bucket befindet.

      Wenn sich der Bucket in der Region USA Ost (Nord-Virginia) befindet, verwenden Sie us-east-1, um die Region anzugeben. Eine Liste der anderen AWS-Regionen finden Sie unter Amazon Simple Storage Service (S3) im. Allgemeine AWS-Referenz

  4. Kompilieren Sie den Quellcode und speichern Sie die kompilierten Klassen im bin/ Verzeichnis.

    javac -d bin -source 6 -verbose com
  5. Ändern Sie das Verzeichnis in bin/ und führen Sie es dann ausRunAllSamples.

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

    Der Code führt alle Methoden in ausmain(). Für jede Anfrage zeigt die Ausgabe die kanonische Anfrage, die zu signierende Zeichenfolge und die Signatur an.

Beispiele für Signaturberechnungen mit C# (AWS Signatur (Version 4)

Das C#-Beispiel, das die Signaturberechnung zeigt, kann unter heruntergeladen werden. https://docs.aws.amazon.com/AmazonS3/latest/API/samples/AmazonS3SigV4_Samples_CSharp.zip Beachten Sie, dass diese Beispiele das AWS SDK für .NET v1 verwenden, und wir empfehlen, AWS das SDK für.NET v3 für neue Anwendungen zu verwenden. In führt die main() Funktion Beispielanforderungen ausProgram.cs, um ein Objekt zu erstellen, ein Objekt abzurufen und eine vorsignierte URL für das Objekt zu erstellen. Der Code für die Signaturberechnung befindet sich im \Signers Ordner.

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");
Um die Beispiele mit Microsoft Visual Studio 2010 oder höher zu testen
  1. Entpacken Sie die ZIP-Datei.

  2. Starten Sie Visual Studio, und öffnen Sie dann die SLN-Datei.

  3. Aktualisieren Sie die App.config Datei mit gültigen Sicherheitsanmeldeinformationen.

  4. Aktualisieren Sie den Code wie folgt:

    • Geben Sie Program.cs unter den Namen des Buckets und den AWS-Region Speicherort des Buckets ein. Das Beispiel erstellt ein Objekt in diesem Bucket.

  5. Führen Sie den Code aus.

  6. Um zu überprüfen, ob das Objekt erstellt wurde, kopieren Sie die vorsignierte URL, die das Programm erstellt, und fügen Sie sie dann in ein Browserfenster ein.