Visão geral dos buckets - Amazon Simple Storage Service

Visão geral dos buckets

Para fazer upload de seus dados (fotos, vídeos, documentos etc.) para o Amazon S3, primeiro é necessário criar um bucket do S3 em uma das Regiões da AWS.

Um bucket é um contêiner para objetos armazenados no Amazon S3. Você pode armazenar qualquer número de objetos em um bucket e pode ter até 100 buckets na sua conta. Para solicitar um aumento, acesse o Console do Service Quotas.

Cada objeto está contido em um bucket. Por exemplo, se o objeto chamado photos/puppy.jpg estiver armazenado no bucket DOC-EXAMPLE-BUCKET da região Oeste dos EUA (Oregon), ele poderá ser endereçado usando o URL https://DOC-EXAMPLE-BUCKET.s3.us-west-2.amazonaws.com/photos/puppy.jpg. Para obter mais informações, consulte Accessing a Bucket (Como acessar um bucket).

Em termos de implementação, os buckets e objetos são recursos da AWS, e o Amazon S3 fornece APIs para você gerenciá-los. Por exemplo, é possível criar um bucket e fazer upload de objetos usando a API do Amazon S3. Também é possível usar o console do Amazon S3 para executar essas operações. O console usa as APIs do Amazon S3 para enviar solicitações ao Amazon S3.

Esta seção descreve como trabalhar com buckets. Para obter mais informações sobre como trabalhar com objetos, consulte Visão geral de objetos Amazon S3.

O Amazon S3 oferece suporte a buckets globais, o que significa que cada nome de bucket deve ser exclusivo em todas as Contas da AWS de todas as Regiões da AWS dentro de uma partição. Uma partição é um agrupamento de regiões. Atualmente, a AWS tem três partições: aws (regiões padrão), aws-cn (regiões da China) e aws-us-gov (AWS GovCloud (US)).

Após a criação de um bucket, o nome dele não poderá ser usado por outra Conta da AWS na mesma partição enquanto ele não for excluído. Você não pode depender de convenções de nomenclatura de buckets específicos para fins de disponibilidade ou verificação de segurança. Para ver as diretrizes de nomeação de bucket, consulte Regras de nomeação de bucket.

O Amazon S3 cria buckets na região que você especificar. Para reduzir a latência, minimizar os custos ou atender a requisitos regulatórios, escolha qualquer Região da AWS geograficamente próxima a você. Por exemplo, se você residir na Europa, poderá considerar vantajoso criar buckets nas regiões UE (Irlanda) ou UE (Frankfurt). Para obter uma lista de regiões do Amazon S3, consulte Regiões e endpoints na Referência geral da AWS.

nota

Para obter mais informações sobre o uso da classe de armazenamento Amazon S3 Express One Zone com buckets de diretório, consulte O que é a classe S3 Express One Zone? e Buckets de diretório.

nota

Os objetos pertencentes a um bucket criado em uma Região da AWS específica jamais saem dela, a menos que você os transfira explicitamente para outra região. Por exemplo, os objetos que são armazenados na região UE (Irlanda) nunca saem dela.

Sobre permissões

É possível usar suas credenciais de Usuário raiz da conta da AWS para criar um bucket e executar qualquer outra operação do Amazon S3. No entanto, recomendamos não usar as credenciais de usuário root da sua Conta da AWS para fazer solicitações, como criar um bucket. Em vez disso, crie um usuário do AWS Identity and Access Management (IAM) e conceda a esse usuário acesso total (por padrão, os usuários não têm nenhuma permissão).

Esses usuários são referidos como administradores. As credenciais do usuário administrador podem ser usadas em vez das credenciais do usuário root da conta para interagir com a AWS e executar tarefas, tais como criar um bucket, criar usuários e conceder permissões a eles.

Para obter mais informações, consulte Credenciais de Usuário raiz da conta da AWS e credenciais de usuário do IAM na Referência geral da AWS e Práticas recomendadas de segurança no IAM no Guia do usuário do IAM.

A Conta da AWS que cria um recurso é proprietária daquele recurso. Por exemplo, se você criar um usuário do IAM na sua Conta da AWS e conceder permissões para esse usuário criar um bucket, o usuário poderá criar um bucket. Mas o usuário não é proprietário do bucket; a Conta da AWS à qual o usuário pertence é que é a proprietária do bucket. O usuário precisará de permissão adicional do proprietário do recurso para executar qualquer outra operação de bucket. Para obter mais informações sobre o gerenciamento de permissões para recursos do Amazon S3, consulte Identity and Access Management no Amazon S3.

Gerenciar o acesso público aos buckets

O acesso público aos buckets e objetos é concedido por meio de políticas de bucket, listas de controle de acesso (ACLs) ou ambos. Para ajudar você a gerenciar o acesso público aos recursos do Amazon S3, o Amazon S3 fornece configurações de bloqueio de acesso público. As configurações de bloqueio de acesso público do Amazon S3 podem substituir ACLs e políticas de bucket para que você possa impor limites uniformes ao acesso público a esses recursos. Você pode aplicar as configurações de bloqueio de acesso público a buckets individualmente ou grupos de buckets na sua conta.

Para garantir que todos os seus buckets e objetos do Amazon S3 tenham o acesso público bloqueado, todas as quatro configurações do Bloqueio de Acesso Público devem estar habilitadas por padrão ao criar um bucket. Recomendamos ativar todas as quatro configurações do Bloqueio de Acesso Público na sua conta também. Estas configurações bloqueiam o acesso público a todos os buckets atuais e futuros.

Antes de aplicar estas configurações, verifique se seus aplicativos funcionarão corretamente sem acesso público. Se você precisa de um nível determinado de acesso público aos buckets ou objetos, por exemplo, para hospedar um site estático como descrito em Hospedagem de um site estático usando o Amazon S3, é possível personalizar as configurações individualmente para atender aos seus casos de uso de armazenamento. Para ter mais informações, consulte Bloquear o acesso público ao armazenamento do Amazon S3.

No entanto, é altamente recomendável manter o Bloqueio de Acesso Público habilitado. Se quiser manter todas as quatro configurações do Bloqueio de Acesso Público habilitadas e hospedar um site estático, use o controle de acesso à origem (OAC) do Amazon CloudFront. O Amazon CloudFront fornece os recursos necessários para configurar um site estático seguro. Os sites estáticos do Amazon S3 só são compatíveis com endpoints HTTP. O Amazon CloudFront usa o armazenamento durável do Amazon S3 ao mesmo tempo que fornece cabeçalhos de segurança adicionais, como HTTPS. O HTTPS adiciona segurança criptografando uma solicitação HTTP normal e protegendo-a contra ataques cibernéticos comuns.

Para obter mais informações, consulte Conceitos básicos de um site estático seguro no Guia do desenvolvedor do Amazon CloudFront.

nota

Se você vir um Error ao listar seus buckets e as respectivas configurações de acesso público, talvez você não tenha as permissões necessárias. Verifique se você tem as seguintes permissões adicionadas à política de usuário ou perfil:

s3:GetAccountPublicAccessBlock s3:GetBucketPublicAccessBlock s3:GetBucketPolicyStatus s3:GetBucketLocation s3:GetBucketAcl s3:ListAccessPoints s3:ListAllMyBuckets

Em alguns casos raros, as solicitações também podem falhar devido a uma interrupção da Região da AWS.

Opções de configuração do bucket

O Amazon S3 é compatível com várias opções para que você configure o bucket. Por exemplo, você pode configurar seu bucket para hospedagem de site, adicionar configuração para gerenciar o ciclo de vida de objetos no bucket e configurar o bucket para registrar todos os acessos a ele. O Amazon S3 é compatível com sub-recursos para que você armazene e gerencie informações de configuração do bucket. É possível usar a API do Amazon S3 para criar e gerenciar esses sub-recursos. No entanto, você também pode usar o console ou os SDKs da AWS.

nota

Há também configurações no nível do objeto. Por exemplo, você pode configurar permissões no nível do objeto configurando uma lista de controle de acesso (ACL) específica para aquele objeto.

São chamados de sub-recursos porque existem no contexto de um bucket ou objeto específico. A tabela a seguir lista os sub-recursos que permitem gerenciar configurações específicas de bucket.

Sub-recurso Descrição

cors (compartilhamento de recurso de origem cruzada)

Você pode configurar seu bucket para autorizar solicitações de origem cruzada.

Para obter mais informações, consulte Usar o compartilhamento de recursos de origem cruzada (CORS).

notificação de evento

Você pode permitir que seu bucket envie notificações de eventos do bucket especificado.

Para ter mais informações, consulte Notificações de eventos do Amazon S3.

ciclo de vida

Você pode definir regras de ciclo de vida para objetos em seu bucket que têm um ciclo de vida bem definido. Por exemplo, você pode definir uma regra para arquivar objetos um ano após a criação ou excluir um objeto 10 anos após a criação.

Para obter mais informações, consulte Gerenciando seu ciclo de vida de armazenamento.

location

Ao criar um bucket, você especifica a Região da AWS onde deseja que o Amazon S3 crie o bucket. O Amazon S3 armazena essas informações no sub-recurso local e fornece uma API para que você recupere essas informações.

registro em log

O registro em log permite que você rastreie solicitações de acesso ao seu bucket. Cada registro de log de acesso fornece detalhes sobre uma única solicitação de acesso, como solicitante, nome do bucket, horário da solicitação, ação da solicitação, status de resposta e código de erro, se houver. As informações de log de acesso podem ser úteis em auditorias de segurança e acesso. Isso também pode ajudá-lo a conhecer sua base de clientes e entender a conta do Amazon S3.  

Para obter mais informações, consulte Registrar em log as solicitações com registro em log de acesso ao servidor.

bloqueio de objetos

Para usar o bloqueio de objetos do S3, é necessário habilitá-lo para um bucket. Também é possível configurar um modo e um período de retenção padrão que se aplicam a novos objetos colocados no bucket.

Para ter mais informações, consulte Usar o bloqueio de objetos do S3.

política e ACL (lista de controle de acesso)

Todos os seus recursos (como buckets e objetos) são privados por padrão. O Amazon S3 é compatível com opções de política de bucket e de lista de controle de acesso (ACL) para que você conceda e gerencie permissões no nível do bucket. O Amazon S3 armazena as informações de permissão nos sub-recursos política e acl.

Para obter mais informações, consulte Identity and Access Management no Amazon S3.

replicação

A replicação é a cópia assíncrona automática de objetos em buckets na mesma Regiões da AWS ou em regiões diferentes. Para obter mais informações, consulte Replicação de objetos.

requestPayment

Por padrão, a Conta da AWS que cria o bucket (o proprietário do bucket) paga pelos downloads do bucket. Usando esse sub-recurso, o proprietário do bucket pode especificar que a pessoa que solicita o download será cobrada pelo download. O Amazon S3 fornece uma API para gerenciamento desse sub-recurso.

Para obter mais informações, consulte Configuração de buckets de Pagamento pelo solicitante para transferências de armazenamento e uso.

marcação

Você pode adicionar tags de alocação de custo ao seu bucket para classificar e acompanhar seus custos com a AWS. O Amazon S3 fornece o sub-recurso marcação para armazenar e gerenciar tags em um bucket. Com o uso de tags em seu bucket, a AWS gera um relatório de alocação de custos com o uso e custos agregados por suas tags.

Para obter mais informações, consulte Relatórios de uso e faturamento do Amazon S3.

aceleração de transferência

O Transfer Acceleration possibilita transferências de arquivos rápidas, fáceis e seguras entre seu cliente e um bucket do S3 em longas distâncias. O Transfer Acceleration tira proveito dos pontos de presença distribuídos globalmente no Amazon CloudFront.

Para obter mais informações, consulte Configurar transferências de arquivos rápidas e seguras usando o Amazon S3 Transfer Acceleration.

versionamento

O versionamento ajuda a recuperar substituições e exclusões acidentais.

Recomendamos o versionamento como melhor prática para impedir a exclusão ou substituição de objetos por engano.

Para obter mais informações, consulte Usando o versionamento em buckets do S3.

site

Você pode configurar seu bucket para hospedagem de site estático. O Amazon S3 armazena essa configuração criando um sub-recurso site.

Para ter mais informações, consulte Hospedagem de um site estático usando o Amazon S3.