

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
<a name="sig-v4-examples-using-sdks"></a>

**Topics**
+ [Beispiele für die Berechnung von Signaturen mit Java (AWS Signatur (Version 4)](#sig-v4-examples-using-sdk-java)
+ [Beispiele für Signaturberechnungen mit C\# (AWS Signatur (Version 4)](#sig-v4-examples-using-sdk-dotnet)

 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 (siehe[Anfragen authentifizieren (AWS Signatur (Version 4)](sig-v4-authenticating-requests.md)) 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:
+ **PUT-Objekt ** — Separate Beispiele veranschaulichen sowohl das Hochladen der gesamten Nutzlast auf einmal als auch das Hochladen der Nutzlast in Blöcken. Hinweise zur Verwendung des Authorization-Headers für die Authentifizierung finden Sie unter. [Authentifizieren von Anfragen: Verwenden des Autorisierungs-Headers (AWS Signatur (Version 4)](sigv4-auth-using-authorization-header.md)
+ **GET-Objekt ** — In diesem Beispiel wird eine vorsignierte URL generiert, um ein Objekt abzurufen. Abfrageparameter stellen die Signatur und andere Authentifizierungsinformationen bereit. Benutzer können eine vorsignierte URL in ihren Browser einfügen, um das Objekt abzurufen, oder Sie können die URL verwenden, um einen anklickbaren Link zu erstellen. Hinweise zur Verwendung von Abfrageparametern für die Authentifizierung finden Sie unter. [Anfragen authentifizieren: Verwenden von Abfrageparametern (AWS Signatur (Version 4)](sigv4-query-string-auth.md) 

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)
<a name="sig-v4-examples-using-sdk-java"></a>

Das Java-Beispiel, das die Signaturberechnung zeigt, kann unter heruntergeladen werden [ https://docs.aws.amazon.com/AmazonS3/latest/API/samples/AWSS3SigV4JavaSamples.zip](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 ](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/home.html) für neue Anwendungen zu verwenden. In führt die `main()` Funktion Beispielanforderungen aus`RunAllSamples.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ält`AWSS3SigV4JavaSamples.zip`.

1. Entpacken Sie die ZIP-Datei. 

1. Ö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 ](https://docs.aws.amazon.com/AmazonS3/latest/userguide/BucketRestrictions.html) 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) ](https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region) im. *Allgemeine AWS-Referenz* 

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

   ```
   javac -d bin -source 6 -verbose com
   ```

1. Ändern Sie das Verzeichnis in `bin/` und führen Sie es dann aus`RunAllSamples`.

    

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

   Der Code führt alle Methoden in aus`main()`. 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)
<a name="sig-v4-examples-using-sdk-dotnet"></a>

 Das C\#-Beispiel, das die Signaturberechnung zeigt, kann unter heruntergeladen werden. [ https://docs.aws.amazon.com/AmazonS3/latest/API/samples/AmazonS3SigV4\_Samples\_CSharp.zip ](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 ](https://docs.aws.amazon.com/sdk-for-net/latest/developer-guide/home.html) für neue Anwendungen zu verwenden. In führt die `main()` Funktion Beispielanforderungen aus`Program.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.

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

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

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

1. Führen Sie den Code aus.

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