

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.

# Fangen Sie an mit AWS SDK für Go
<a name="getting-started"></a>

 Das AWS SDK für Go erfordert eine Mindestversion von Go 1.23. Sie können Ihre aktuelle Version von Go anzeigen, indem Sie den folgenden Befehl ausführen: 

```
go version
```

 Informationen zur Installation oder Aktualisierung Ihrer Version von Go finden [Sie in der Go-Dokumentation unter Herunterladen und Installieren](https://go.dev/doc/install). 

## Holen Sie sich ein Amazon-Konto
<a name="get-an-amazon-account"></a>

 Bevor Sie die AWS SDK für Go v2 verwenden können, müssen Sie über ein Amazon-Konto verfügen. Einzelheiten finden Sie [AWS unter Konto erstellen](https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-creating.html). 

## Installieren Sie die AWS SDK für Go Version 2
<a name="install-the-aws-sdk-for-go-v2"></a>

 Die AWS SDK für Go Version 2 verwendet Go-Module, eine Funktion, die in Go 1.11 eingeführt wurde. Initialisieren Sie Ihr lokales Projekt, indem Sie den folgenden Go-Befehl ausführen. 

```
go mod init example
```

 Nachdem Sie Ihr Go-Modulprojekt initialisiert haben, können Sie das SDK und die erforderlichen Abhängigkeiten mithilfe des `go get` Befehls abrufen. Diese Abhängigkeiten werden in der `go.mod` Datei aufgezeichnet, die mit dem vorherigen Befehl erstellt wurde. 

 Die folgenden Befehle zeigen, wie Sie den Standardsatz von SDK-Modulen abrufen, die in Ihrer Anwendung verwendet werden sollen. 

```
go get github.com/aws/aws-sdk-go-v2
go get github.com/aws/aws-sdk-go-v2/config
```

 Dadurch werden das Kern-SDK-Modul und das Konfigurationsmodul abgerufen, das zum Laden der AWS gemeinsam genutzten Konfiguration verwendet wird. 

 Als Nächstes können Sie einen oder mehrere AWS Service-API-Clients installieren, die für Ihre Anwendung erforderlich sind. Alle API-Clients befinden sich in der `github.com/aws/aws-sdk-go-v2/service` Importhierarchie. Eine vollständige Liste der derzeit unterstützten API-Clients finden Sie [hier](https://pkg.go.dev/github.com/aws/aws-sdk-go-v2/service). Um einen Service-Client zu installieren, führen Sie den folgenden Befehl aus, um das Modul abzurufen und die Abhängigkeit in Ihrer `go.mod` Datei aufzuzeichnen. In diesem Beispiel rufen wir den Amazon S3 S3-API-Client ab. 

```
go get github.com/aws/aws-sdk-go-v2/service/s3
```

## Holen Sie sich Ihre AWS Zugangsschlüssel
<a name="get-your-aws-access-keys"></a>

 Zugriffsschlüssel bestehen aus einer Zugriffsschlüssel-ID und einem geheimen Zugriffsschlüssel. Diese werden zum Signieren der von Ihnen ausgeführten programmgesteuerten Anforderungen an AWS verwendet. Wenn Sie keine Zugriffsschlüssel haben, können Sie sie mithilfe der [AWS Management Console](https://console.aws.amazon.com/console/home) erstellen. Wir empfehlen, IAM-Zugriffsschlüssel anstelle von AWS Root-Kontozugriffsschlüsseln zu verwenden. Mit IAM können Sie den Zugriff auf AWS Dienste und Ressourcen in Ihrem AWS Konto sicher kontrollieren. 

**Anmerkung**  
Um Zugriffsschlüssel zu erstellen, müssen Sie Berechtigungen zum Ausführen der erforderlichen IAM-Aktionen besitzen. Weitere Informationen finden Sie im IAM-Benutzerhandbuch unter [Erforderliche Berechtigungen für den Zugriff auf IAM-Ressourcen](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_permissions-required.html). 

### Um Ihre Zugangsschlüssel-ID und Ihren geheimen Zugriffsschlüssel zu erhalten.
<a name="to-get-your-access-key-id-and-secret-access-key"></a>

1.  Öffnen Sie die [IAM-Konsole](https://console.aws.amazon.com/iam/home). 

1.  Wählen Sie im Navigationsmenü **Users (Benutzer)**. 

1.  Wählen Sie Ihren IAM-Benutzernamen (nicht das Kontrollkästchen). 

1.  Öffnen Sie die Registerkarte **Security credentials (Sicherheitsanmeldeinformationen)** und wählen Sie **Create access key (Zugriffsschlüssel erstellen)** aus. 

1.  Wählen Sie zum Anzeigen des neuen Zugriffsschlüssels **Show** aus. Ihre Anmeldeinformationen sehen in etwa wie folgt aus: 
   +  Zugriffsschlüssel-ID: `AKIAIOSFODNN7EXAMPLE` 
   +  Geheimer Zugriffsschlüssel: `wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY` 

1.  Wählen Sie zum Herunterladen des Schlüsselpaares **Download .csv file** aus. Speichern Sie die Schlüssel an einem sicheren Ort. 

**Warnung**  
 Behandeln Sie die Schlüssel vertraulich, um Ihr AWS Konto zu schützen, und geben Sie sie niemals an Dritte außerhalb Ihrer Organisation weiter. 

### Verwandte Themen
<a name="related-topics"></a>
+  [Was ist IAM?](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) im IAM-Benutzerhandbuch. 
+ AWS Allgemeine Referenz zu [Sicherheitsanmeldedaten](https://docs.aws.amazon.com/IAM/latest/UserGuide/security-creds.html) in Amazon Web Services. 

## Rufen Sie einen Vorgang auf
<a name="invoke-an-operation"></a>

 Nachdem Sie das SDK installiert haben, importieren Sie AWS Pakete in Ihre Go-Anwendungen, um das SDK zu verwenden, wie im folgenden Beispiel gezeigt, das die Bibliotheken AWS, Config und Amazon S3 importiert. Nach dem Import der SDK-Pakete wird die gemeinsame AWS SDK-Konfiguration geladen, ein Client erstellt und eine API-Operation aufgerufen. 

```
package main

import (
    "context"
    "log"
    "github.com/aws/aws-sdk-go-v2/aws"
    "github.com/aws/aws-sdk-go-v2/config"
    "github.com/aws/aws-sdk-go-v2/service/s3"
)

func main() {
    // Load the Shared AWS Configuration (~/.aws/config)
    cfg, err := config.LoadDefaultConfig(context.TODO())
    if err != nil {
        log.Fatal(err)
    }

    // Create an Amazon S3 service client
    client := s3.NewFromConfig(cfg)

    // Get the first page of results for ListObjectsV2 for a bucket
    output, err := client.ListObjectsV2(context.TODO(), &s3.ListObjectsV2Input{
        Bucket: aws.String("amzn-s3-demo-bucket"),
    })
    if err != nil {
        log.Fatal(err)
    }

    log.Println("first page results")
    for _, object := range output.Contents {
        log.Printf("key=%s size=%d", aws.ToString(object.Key), *object.Size)
    }
}
```