

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Memulai dengan AWS SDK untuk Go
<a name="getting-started"></a>

 Ini AWS SDK untuk Go membutuhkan versi minimum Go 1.23. Anda dapat melihat versi Go Anda saat ini dengan menjalankan perintah berikut: 

```
go version
```

 Untuk informasi tentang menginstal atau memutakhirkan versi Go Anda, lihat [Mengunduh dan menginstal](https://go.dev/doc/install) di dokumentasi Go. 

## Dapatkan Akun Amazon
<a name="get-an-amazon-account"></a>

 Sebelum Anda dapat menggunakan AWS SDK untuk Go v2, Anda harus memiliki akun Amazon. Lihat [Membuat AWS akun](https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-creating.html) untuk detailnya. 

## Instal AWS SDK untuk Go v2
<a name="install-the-aws-sdk-for-go-v2"></a>

 AWS SDK untuk Go V2 menggunakan modul Go, yang merupakan fitur yang diperkenalkan di Go 1.11. Inisialisasi proyek lokal Anda dengan menjalankan perintah Go berikut. 

```
go mod init example
```

 Setelah menginisialisasi proyek modul Go Anda, Anda akan dapat mengambil SDK dan dependensi yang diperlukan menggunakan perintah. `go get` Dependensi ini akan direkam dalam `go.mod` file yang dibuat oleh perintah sebelumnya. 

 Perintah berikut menunjukkan cara mengambil set standar modul SDK yang akan digunakan dalam aplikasi Anda. 

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

 Ini akan mengambil modul SDK inti, dan modul konfigurasi yang digunakan untuk memuat konfigurasi bersama. AWS 

 Selanjutnya Anda dapat menginstal satu atau lebih klien API AWS layanan yang diperlukan oleh aplikasi Anda. Semua klien API berada di bawah hierarki `github.com/aws/aws-sdk-go-v2/service` impor. Satu set lengkap klien API yang saat ini didukung dapat ditemukan [di sini](https://pkg.go.dev/github.com/aws/aws-sdk-go-v2/service). Untuk menginstal klien layanan, jalankan perintah berikut untuk mengambil modul dan merekam ketergantungan dalam file Anda`go.mod`. Dalam contoh ini kita mengambil klien API Amazon S3. 

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

## Dapatkan kunci AWS akses Anda
<a name="get-your-aws-access-keys"></a>

 Access key terdiri dari access key ID dan secret access key, yang digunakan untuk menandatangani permintaan terprogram yang Anda buat ke AWS. Jika Anda tidak memiliki kunci akses, Anda dapat membuatnya dengan menggunakan [AWS Management Console](https://console.aws.amazon.com/console/home). Kami menyarankan Anda menggunakan kunci akses IAM alih-alih kunci akses akun AWS root. IAM memungkinkan Anda mengontrol akses ke AWS layanan dan sumber daya di akun Anda AWS dengan aman. 

**catatan**  
Untuk membuat access keys Anda juga harus memiliki izin untuk melakukan tindakan IAM yang diperlukan. Untuk informasi selengkapnya, lihat [Izin yang diperlukan untuk mengakses sumber daya IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_permissions-required.html) di Panduan Pengguna IAM. 

### Untuk mendapatkan ID kunci akses dan kunci akses rahasia Anda.
<a name="to-get-your-access-key-id-and-secret-access-key"></a>

1.  Buka [konsol IAM](https://console.aws.amazon.com/iam/home). 

1.  Di menu navigasi, pilih **Pengguna**. 

1.  Pilih nama pengguna IAM Anda (bukan kotak centang). 

1.  Pilih tab **Kredensial keamanan**, lalu pilih **Buat access key**. 

1.  Untuk melihat access key baru, pilih **Tampilkan**. Kredensial Anda menyerupai berikut ini: 
   +  Access key ID: `AKIAIOSFODNN7EXAMPLE` 
   +  Secret access key: `wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY` 

1.  Untuk mengunduh pasangan kunci tersebut, pilih **Unduh file .csv**. Simpan kunci di lokasi yang aman. 

**Awas**  
 Jaga kerahasiaan kunci untuk melindungi AWS akun Anda, dan jangan pernah membagikannya dengan siapa pun di luar organisasi Anda. 

### Topik terkait
<a name="related-topics"></a>
+  [Apa itu IAM?](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) di Panduan Pengguna IAM. 
+  [AWS Kredensial Keamanan di Referensi](https://docs.aws.amazon.com/IAM/latest/UserGuide/security-creds.html) Umum Amazon Web Services. 

## Memanggil Operasi
<a name="invoke-an-operation"></a>

 Setelah menginstal SDK, Anda mengimpor AWS paket ke aplikasi Go untuk menggunakan SDK, seperti yang ditunjukkan pada contoh berikut, yang mengimpor pustaka, AWS Config, dan Amazon S3. Setelah mengimpor paket SDK, AWS SDK Shared Configuration dimuat, klien dibuat, dan operasi API dipanggil. 

```
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)
    }
}
```