Conceitos básicos do AWS SDK para Go
O AWS SDK para Go requer uma versão mínima do Go 1.23. Veja a versão atual do Go executando este comando:
go version
Consulte informações sobre como instalar ou atualizar sua versão do Go em Download and install
Obter uma conta da Amazon
Para poder utilizar o AWS SDK para Go v2, é necessário ter uma conta da Amazon. Consulte detalhes em Criar uma conta da AWS.
Instalar o AWS SDK para Go v2
O AWS SDK para Go v2 usa módulos Go, que foi um recurso introduzido no Go 1.11. Inicialize o projeto local executando o comando Go a seguir.
go mod init example
Depois de inicializar seu projeto do módulo Go, você poderá recuperar o SDK e suas dependências necessárias usando o comando go get. Essas dependências serão registradas no arquivo go.mod que foi criado pelo comando anterior.
Os comandos a seguir mostram como recuperar o conjunto padrão de módulos do SDK para usar na aplicação.
go get github.com/aws/aws-sdk-go-v2 go get github.com/aws/aws-sdk-go-v2/config
Isso recupera o módulo principal do SDK e o módulo de configuração que é usado para carregar a configuração compartilhada da AWS.
Depois, você pode instalar um ou mais clientes de API de serviço da AWS exigidos pela aplicação. Todos os clientes da API estão localizados na hierarquia de importação de github.com/aws/aws-sdk-go-v2/service. Um conjunto completo de clientes de API atualmente compatíveis pode ser encontrado aquigo.mod. Neste exemplo, recuperamos o cliente da API do Amazon S3.
go get github.com/aws/aws-sdk-go-v2/service/s3
Obter suas chaves de acesso da AWS
As chaves de acesso consistem em um ID da chave de acesso e uma chave de acesso secreta, que são usados para assinar solicitações programáticas feitas por você à AWS. Se não tiver chaves de acesso, você poderá criá-las usando o Console de Gerenciamento da AWS
nota
Para criar chaves de acesso, você deve ter permissões para realizar as ações do IAM necessárias. Consulte mais informações em Permissões necessárias para acessar recursos do IAM no Guia do usuário do IAM.
Como obter o ID da chave de acesso e a chave de acesso secreta.
-
Abra o console do IAM
. -
No menu de navegação, selecione Users (Usuários).
-
Selecione seu nome de usuário do IAM (não a caixa de seleção).
-
Abra a guia Security credentials (Credenciais de segurança) e, em seguida, selecione Create access key (Criar chave de acesso).
-
Para ver a nova chave de acesso, escolha Mostrar. Suas credenciais são semelhantes ao seguinte:
-
ID de chave de acesso:
AKIAIOSFODNN7EXAMPLE -
Chave de acesso secreta:
wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
-
-
Para baixar o par de chaves, escolha Baixar arquivo .csv. Armazene as chaves em um lugar seguro.
Atenção
Mantenha a confidencialidade das chaves para proteger a conta da AWS e nunca as compartilhe com ninguém de fora da organização.
Tópicos relacionados
-
O que é o IAM? no Guia do usuário do IAM.
-
Credenciais de segurança da AWS na Referência geral da Amazon Web Services.
Invocar uma operação
Depois de instalar o SDK, você importa pacotes da AWS nas aplicações Go para usar o SDK, conforme mostrado no exemplo a seguir, que importa as bibliotecas da AWS, do Config e do Amazon S3. Depois de importar os pacotes do SDK, a configuração compartilhada do AWS SDK é carregada, um cliente é construído e uma operação de API é invocada.
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) } }