Usando AWS CLI e AWS SDK (Python/Boto3): Listando Buckets do Amazon S3
O Amazon S3 (Simple Storage Service) é um dos serviços mais populares da AWS para armazenamento de objetos. Para interagir com o S3, podemos utilizar duas abordagens principais: AWS CLI (linha de comando) e AWS SDK (programação, usando Boto3 para Python). Neste artigo, vamos explorar como listar os buckets do S3 utilizando ambas as abordagens e compará-las para entender melhor quando usar cada uma.
1. Configuração Inicial
Antes de começar, certifique-se de que você já configurou suas credenciais da AWS. Se ainda não fez isso, siga os passos abaixo:
1.1 Instalando e Configurando o AWS CLI
- Baixe e instale o AWS CLI: Download AWS CLI
2. Verifique se está instalado corretamente:
aws --version
3. Configure suas credenciais:
aws configure
4. Você precisará informar:
- AWS Access Key ID
- AWS Secret Access Key
- Região padrão (ex:
us-east-1
ousa-east-1
para Brasil) - Formato de saída (
json
,table
, outext
)
1.2 Listando Buckets do S3 com AWS CLI
A maneira mais rápida de visualizar os buckets do S3 é usando o AWS CLI.
Comando:
aws s3 ls
Saída esperada:
2024-02-28 15:30:01 my-first-bucket
2024-02-28 16:45:12 my-second-bucket
O comando exibe a data de criação e o nome dos buckets disponíveis na sua conta AWS.
Se quiser a saída em formato JSON:
aws s3api list-buckets --query "Buckets[].Name"
Saída:
[
"my-first-bucket",
"my-second-bucket"
]
Se precisar de mais informações sobre os comandos disponíveis para S3:
aws s3 help
2. Listando Buckets do S3 com AWS SDK (Python/Boto3)
Agora, vamos fazer o mesmo utilizando Python e a biblioteca Boto3.
2.1 Instalando o Boto3 (AWS SDK para Python)
Se quiser utilizar Python para interagir com o S3, instale o Boto3:
pip install boto3
Código para listar buckets:
import boto3
# Criar cliente S3
s3 = boto3.client('s3')
# Listar buckets
response = s3.list_buckets()
print("Buckets disponíveis:")
for bucket in response['Buckets']:
print(f"- {bucket['Name']}")
Saída esperada:
Buckets disponíveis:
- my-first-bucket
- my-second-bucket
Se você quiser o JSON da resposta completa:
import json
print(json.dumps(response, indent=4))
3. Comparação entre AWS CLI e AWS SDK (Python)
Critério AWS CLI AWS SDK (Boto3 em Python) Facilidade Simples e rápido Requer código, mas é flexível Velocidade Executa diretamente no terminal Depende da execução do código Formatação Retorno simples ou JSON Retorno estruturado em dicionário Python Automação Ideal para scripts rápidos Melhor para lógica de negócio avançada Integração Útil para DevOps e automação via Shell Melhor para aplicações e integração com outros serviços AWS
Quando usar cada um?
- Use AWS CLI quando precisar de tarefas simples e rápidas, como listar ou copiar arquivos no S3.
- Use AWS SDK (Boto3) quando precisar de integração com aplicações Python, lógica de processamento e automação avançada.
Conclusão
Neste artigo, vimos duas maneiras de listar buckets no Amazon S3: utilizando o AWS CLI e o AWS SDK (Boto3 em Python). Cada abordagem tem suas vantagens e deve ser escolhida conforme a necessidade do projeto.
Se quiser explorar mais, experimente:
- Criar buckets via CLI (
aws s3 mb s3://meu-novo-bucket
) - Criar um sistema de upload/download de arquivos usando Boto3
Utilizei o AWS SDK com Python e Boto3 para automatizar o deploy do meu site estático no S3. Link para o artigo.
Me conta mais sobre suas experiências usando AWS CLI e AWS SDK nos comentários! 🚀
. . . . . . . .
Eduardo O. Lentz
💻 Portfolio | 🔗 LinkedIn | 📂 GitHub | 📝 Medium | 📸 Instagram