Publicação Técnica · Amazon Web Services
Como copiar o conteúdo de buckets S3 entre contas AWS distintas
Neste post, vamos apresentar como transferir objetos S3 de uma conta AWS para outra.
Palavras-chave
Neste post, vamos apresentar como transferir objetos S3 de uma conta AWS para outra.

Para realizar esse processo, temos algumas premissas:
Premissas
- Acesso à duas contas AWS (uma para o bucket S3 de origem e outra para o bucket S3 de destino);
- Usuário IAM na conta AWS de destino (saiba como criar um usuário IAM para a conta AWS);
- Configure o AWS CLI na máquina local com credenciais de usuário IAM criadas anteriormente (saiba como configurar o AWS CLI).
Passo 1 — Obtenha o número da conta AWS de destino de 12 dígitos
- Faça login na conta AWS de destino.
- Vá para Support→ Support center e copie o número da conta de lá.
Passo 2 — Configure o bucket S3 de origem
- Faça login na conta de origem da AWS.
- Crie um bucket no S3 (saiba como criar um bucket S3).
- Anexe a seguinte política de acesso (saiba como anexar a política de acesso).
- Faça upload de alguns arquivos de teste que devem ser copiados automaticamente para o bucket de destino.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "DelegateS3Access",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::DESTINATION_BUCKET_ACCOUNT_NUMBER:root"
},
"Action": [
"s3:ListBucket",
"s3:GetObject"
],
"Resource": [
"arn:aws:s3:::SOURCE_BUCKET_NAME/*",
"arn:aws:s3:::SOURCE_BUCKET_NAME"
]
}
]
}
Passo 3 — Configurar o bucket S3 de destino
- Faça login na conta AWS de destino.
- Crie um bucket no S3 (saiba como criar um bucket S3).
Passo 4 — Anexar a política ao usuário IAM na conta AWS de destino
- Anexe a seguinte política ao usuário IAM criado anteriormente na conta AWS de destino (saiba como anexar a política de acesso).
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:ListBucket",
"s3:GetObject"
],
"Resource": [
"arn:aws:s3:::SOURCE_BUCKET_NAME",
"arn:aws:s3:::SOURCE_BUCKET_NAME/*"
]
},
{
"Effect": "Allow",
"Action": [
"s3:ListBucket",
"s3:PutObject",
"s3:PutObjectAcl"
],
"Resource": [
"arn:aws:s3:::DESTINATION_BUCKET_NAME",
"arn:aws:s3:::DESTINATION_BUCKET_NAME/*"
]
}
]
}
Passo 5 — Sincronizar objetos S3 com o destino
- Com as etapas acima concluídas, podemos copiar objetos de intervalo S3 da conta de origem para a conta de destino usando o seguinte comando AWS CLI.
aws s3 sync s3://SOURCE-BUCKET-NAME s3://DESTINATION-BUCKET-NAME — source-region SOURCE-REGION-NAME — region DESTINATION-REGION-NAME
O comando acima deve ser executado com as credenciais da conta de usuário do AWS IAM de destino, caso contrário, os objetos copiados no intervalo S3 de destino ainda terão as permissões da conta de origem e não serão acessíveis aos usuários da conta de destino.
Com isso, vimos como copiar objetos de bucket S3 de uma conta AWS para outra.
Caso tenha alguma dúvida ou algum problema com esse tutorial, fique a vontade para entrar em contato. ;-)
Até o próximo post! =)
Comentários
Todo comentário passa por moderação antes de aparecer aqui. Nada é publicado automaticamente.
Carregando…