Configurar Object Ownership ao criar um bucket
Ao criar um bucket, você pode configurar o S3 Object Ownership. Para definir o Object Ownership para um bucket existente, consulte Configurar Object Ownership em um bucket existente.
O S3 Object Ownership é uma configuração no nível do bucket do Amazon S3 que você pode usar para desabilitar as listas de controle de acesso (ACLs) e assumir a propriedade de cada objeto em seu bucket, simplificando o gerenciamento de acesso para dados armazenados no Amazon S3. Por padrão, a Propriedade de Objetos do S3 é definida como a configuração Imposto pelo proprietário do bucket e as ACLs são desabilitadas para novos buckets. Com as ACLs desabilitadas, o proprietário do bucket possui cada objeto no bucket e gerencia o acesso aos dados exclusivamente usando políticas de gerenciamento de acesso. Recomendamos manter as ACLs desabilitadas, exceto em circunstâncias incomuns em que seja necessário controlar o acesso para cada objeto individualmente.
Há três configurações em Object Ownership que podem ser usadas para controlar a propriedade de objetos carregados no bucket e para desabilitar ou habilitar ACLs:
ACLs desabilitadas
-
Imposto pelo proprietário do bucket (padrão): as ACLs são desabilitadas e o proprietário do bucket automaticamente tem a propriedade e o controle total sobre todos os objetos do bucket. As ACLs não afetam mais as permissões nos dados no bucket do S3. O bucket usa políticas para definir o controle de acesso.
ACLs habilitadas
-
Bucket owner preferred (Preferencial do proprietário do bucket): o proprietário do bucket tem a propriedade e o controle total sobre novos objetos que outras contas gravam no bucket com a ACL
bucket-owner-full-control
pré-configurada. -
Object writer (Gravador de objetos): a Conta da AWS que carrega um objeto é a proprietária do objeto, tem controle total sobre ele e pode conceder acesso a outros usuários por meio de ACLs.
Permissões: para aplicar a configuração Bucket owner enforced (Imposto pelo proprietário do bucket) ou Bucket owner preferred (Proprietário do bucket preferido), é necessário ter as seguintes permissões: s3:CreateBucket
e s3:PutBucketOwnershipControls
. Nenhuma permissão adicional é necessária ao criar um bucket com a configuração Object writer (Autor do objeto). Consulte mais informações sobre as permissões do Amazon S3 em Actions, resources, and condition keys for Amazon S3 na Referência de autorização do serviço.
Para ter mais informações sobre as permissões referentes a operações de API do S3 de acordo com os tipos de recurso do S3, consulte Permissões obrigatórias para operações de API do Amazon S3.
Importante
A maioria dos casos de uso modernos no Amazon S3 não requer mais o uso de ACLs, e recomendamos desabilitar as ACLs, exceto em circunstâncias incomuns em que seja necessário controlar o acesso para cada objeto individualmente. Com Object Ownership, é possível desabilitar ACLs e confiar em políticas para controle de acesso. Ao desabilitar ACLs, você pode facilmente manter um bucket com objetos carregados por diferentes contas da AWS. Como proprietário do bucket, você possui todos os objetos do bucket e pode gerenciar o acesso a eles usando políticas.
Faça login no AWS Management Console e abra o console do Amazon S3 em https://console.aws.amazon.com/s3/
. -
Na barra de navegação na parte superior da página, escolha o nome da Região da AWS exibida no momento. Em seguida, escolha a região na qual você deseja criar um bucket.
nota
Para reduzir a latência e os custos e atender aos requisitos regulatórios, selecione uma região perto de você. Os objetos armazenados em uma região nunca saem dessa região, a menos que você os transfira para outra região. Para obter uma lista de Regiões da AWS do Amazon S3, consulte Endpoints de AWS service (Serviço da AWS) no Referência geral da Amazon Web Services.
-
No painel de navegação à esquerda, escolha Buckets.
-
Selecione Create bucket (Criar bucket).
A página Create bucket (Criar bucket) é aberta.
-
Em Configuração geral, visualize a Região da AWS onde o bucket será criado.
-
Em Tipo de bucket, escolha Propósito geral.
-
Para Nome do bucket, insira um nome para o bucket.
O nome do bucket deve:
-
Seja exclusivo em 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) eaws-us-gov
(AWS GovCloud (US) Regions). -
Ter entre 3 e 63 caracteres.
-
Consistem apenas em letras minúsculas, números, pontos (.) e hífens (-). Para obter a melhor compatibilidade, recomendamos evitar o uso de pontos (.) em nomes de buckets, exceto em buckets usados apenas para hospedagem de sites estáticos.
-
Inicie e termine com uma letra ou um número.
Depois de criado o bucket, não é possível mudar o nome. A Conta da AWS que cria o bucket é a proprietária do bucket. Para obter mais informações sobre como nomear buckets, consulte Regras de nomeação de bucket.
Importante
Evite incluir informações confidenciais, como números de conta, no nome do bucket. O nome do bucket é visível nos URLs que apontam para os objetos no bucket.
-
-
O AWS Management Console permite que você copie as configurações de um bucket existente para seu novo bucket. Prossiga·para·a·próxima·etapa·se você não quiser copiar as configurações de um bucket existente.
nota
Essa opção:
Não está disponível na AWS CLI, mas apenas no console.
Não está disponível para buckets de diretório.
Não copia a política do bucket existente para o novo bucket.
Para copiar as configurações de um bucket existente, em Copiar configurações do bucket existente, selecione Escolher bucket. A janela Escolher bucket é aberta. Encontre o bucket com as configurações que você gostaria de copiar e selecione Escolher bucket. A janela Escolher bucket é fechada e a janela Criar bucket é reaberta.
Agora, em Copiar configurações do bucket existente, você verá o nome do bucket selecionado. Você também verá uma opção Restaurar padrões, que pode ser usada para remover as configurações do bucket copiado. Revise as configurações restantes do bucket na página Criar bucket. Você verá que agora elas correspondem às configurações do bucket que você selecionou. Você pode pular para a etapa final.
-
Em Object Ownership, para desabilitar ou habilitar ACLs e controlar a propriedade de objetos carregados em seu bucket, escolha uma das seguintes configurações:
ACLs desabilitadas
-
Imposto pelo proprietário do bucket (padrão): as ACLs são desabilitadas e o proprietário do bucket automaticamente tem a propriedade e o controle total sobre todos os objetos do bucket. As ACLs não afetam mais as permissões de acesso aos dados no bucket do S3. O bucket usa políticas exclusivamente para definir o controle de acesso.
Por padrão, as ACLs estão desabilitadas. A maioria dos casos de uso modernos no Amazon S3 não exige mais o uso de ACLs. Recomendamos manter as ACLs desabilitadas, exceto em circunstâncias incomuns em que seja necessário controlar o acesso para cada objeto individualmente. Para obter mais informações, consulte Controlar a propriedade de objetos e desabilitar ACLs para seu bucket.
ACLs habilitadas
-
Bucket owner preferred (Preferencial do proprietário do bucket): o proprietário do bucket tem a propriedade e o controle total sobre novos objetos que outras contas gravam no bucket com a ACL
bucket-owner-full-control
pré-configurada.Se você aplicar a configuração Proprietário do bucket preferido para exigir que todos os uploads do Amazon S3 incluam a ACL
bucket-owner-full-control
pré-configurada, será possível adicionar uma política de bucket que só permita uploads de objetos que usem essa ACL. -
Object writer (Gravador de objetos): a Conta da AWS que carrega um objeto é a proprietária do objeto, tem controle total sobre ele e pode conceder acesso a outros usuários por meio de ACLs.
nota
A configuração padrão é Imposto pelo proprietário do Bucket. Para aplicar a configuração padrão e manter as ACLs desabilitadas, somente a permissão
s3:CreateBucket
é necessária. Para habilitar ACLs, é necessário ter a permissãos3:PutBucketOwnershipControls
. -
-
Em Configurações de bloqueio de acesso público para este bucket, selecione as configurações de bloqueio de acesso público que deseja aplicar ao bucket.
Por padrão, todas as quatro configurações do Bloqueio de Acesso Público são habilitadas. Recomendamos que você mantenha todas as configurações habilitadas, a menos que precise desativar uma ou mais delas para seu caso de uso específico. Para obter mais informações sobre como bloquear o acesso público, consulte Bloquear o acesso público ao armazenamento do Amazon S3.
nota
Para habilitar todas as configurações do Bloqueio de Acesso Público, somente a permissão
s3:CreateBucket
é necessária. Para desabilitar qualquer configuração do Bloqueio de Acesso Público, é necessário ter a permissãos3:PutBucketPublicAccessBlock
. -
(Opcional) Em Bucket Versioning (Versionamento do bucket), você pode escolher se deseja manter variantes de objetos no bucket. Para obter mais informações sobre versionamento, consulte Usando o versionamento em buckets do S3.
Para desabilitar ou habilitar o versionamento em seu bucket, escolha Disable (Desabilitar) ou Enable (Habilitar).
-
(Opcional) Em Tags (Etiquetas), você pode optar por adicionar etiquetas ao seu bucket. As etiquetas são pares de chave-valor usados para categorizar o armazenamento.
Para adicionar uma etiqueta, escolha Add Tag (Adicionar etiqueta) e insira uma chave e um valor para cada etiqueta.
-
Em Default encryption (Criptografia padrão), escolha Edit (Editar).
-
Para configurar a criptografia padrão, em Tipo de criptografia, selecione uma das seguintes opções:
-
Chave gerenciada pelo Amazon S3 (SSE-S3)
-
Chave do AWS Key Management Service (SSE-KMS)
Importante
Se você usar a opção SSE-KMS em sua configuração de criptografia padrão, estará sujeito à cota de solicitações por segundo (RPS) do AWS KMS. Para obter mais informações sobre as cotas do AWS KMS e como solicitar um aumento de cota, consulte Cotas no Guia do desenvolvedor do AWS Key Management Service.
Os buckets e novos objetos são criptografados com criptografia do lado do servidor com uma chave gerenciada pelo Amazon S3 como nível básico de configuração de criptografia. Para obter mais informações sobre criptografia padrão, consulte Definir o comportamento padrão da criptografia para os buckets do Amazon S3.
Para obter mais informações sobre como usar a criptografia no lado do servidor do Amazon S3 para criptografar seus dados, consulte Usar a criptografia do lado do servidor com chaves gerenciadas pelo Amazon S3 (SSE-S3).
-
-
Se você selecionou Chave do AWS Key Management Service (SSE-KMS), faça o seguinte:
-
Em Chave do AWS KMS, especifique sua chave do KMS de uma das seguintes maneiras:
-
Para escolher entre uma lista de chaves do KMS disponíveis, selecione Escolher entre suas AWS KMS keys e escolha sua chave do KMS na lista de chaves disponíveis.
As chaves Chave gerenciada pela AWS (
aws/s3
) e as chaves gerenciadas pelo cliente são exibidas nessa lista. Para ter mais informações sobre chaves gerenciadas pelo cliente, consulte Chaves de clientes e chaves da AWS no Guia do desenvolvedor do AWS Key Management Service. -
Para inserir o ARN da chave do KMS, escolha Inserir ARN da AWS KMS key e insira o ARN da chave do KMS no campo exibido.
-
Para criar uma chave gerenciada pelo cliente no console do AWS KMS, selecione Criar uma chave do KMS.
Para ter mais informações sobre como criar uma AWS KMS key, consulte Criação de chaves no Guia do desenvolvedor do AWS Key Management Service.
Importante
Você só pode usar chaves do KMS disponíveis na mesma Região da AWS que o bucket. O console do Amazon S3 lista somente as primeiras 100 chaves do KMS na mesma região que o bucket. Para usar uma chave do KMS que não esteja listada, você deve inserir o ARN da chave do KMS. Se quiser usar uma chave do KMS que seja de propriedade de outra conta, primeiro você deverá ter permissão para usar a chave e, depois, inserir o ARN da chave do KMS. Para obter mais informações sobre permissões entre contas para chaves do KMS, consulte Criar chaves do KMS que outras contas podem usar no Guia do desenvolvedor do AWS Key Management Service. Para obter mais informações sobre a SSE-KMS, consulte Especificando criptografia no lado do servidor com o AWS KMS (SSE-KMS).
Ao usar uma AWS KMS key para criptografia no lado do servidor no Amazon S3, você deve escolher uma chave de criptografia do KMS simétrica. O Amazon S3 só é compatível com chaves do KMS de criptografia simétrica, e não com chaves assimétricas do KMS. Para ter mais informações, consulte Identificar chaves do KMS simétricas e assimétricas no Guia do desenvolvedor do AWS Key Management Service.
Para ter mais informações sobre como criar uma AWS KMS key, consulte Criação de chaves no Guia do desenvolvedor do AWS Key Management Service. Para obter mais informações sobre como usar o AWS KMS com o Amazon S3, consulte Usar criptografia do lado do servidor com o AWS KMS (SSE-KMS).
-
-
Quando você configura seu bucket para usar a criptografia padrão com o SSE-KMS, também pode habilitar as chaves de bucket do S3. As chaves de bucket do S3 diminuem o custo de criptografia reduzindo o tráfego de solicitações do Amazon S3 para o AWS KMS. Para obter mais informações, consulte Redução do custo do SSE-KMS com chaves de bucket do Amazon S3.
Para usar Chaves de bucket do S3, em Bucket Key (Chave de bucket), escolha Enable (Habilitar).
-
-
(Opcional) Se você quiser habilitar o Bloqueio de Objetos do S3, faça o seguinte:
-
Selecione Advanced settings (Configurações avançadas).
Importante
A ativação do bloqueio de objetos também permite o versionamento para o bucket. Depois de habilitar, é necessário definir as configurações de retenção padrão e retenção legal do bloqueio de objetos para proteger novos objetos contra exclusão ou substituição.
-
Se quiser habilitar o bloqueio de objetos, escolha Enable (Habilitar), leia o aviso que aparece e confirme-o.
Para obter mais informações, consulte Usar o bloqueio de objetos do S3.
nota
Para criar um bucket com bloqueio de objetos habilitado, você deve ter as seguintes permissões:
s3:CreateBucket
,s3:PutBucketVersioning
es3:PutBucketObjectLockConfiguration
. -
-
Selecione Create bucket (Criar bucket).
Para definir Object Ownership ao criar um novo bucket, use o comando create-bucket
da AWS CLI com o parâmetro --object-ownership
.
Este exemplo aplica a configuração Imposto pelo proprietário do bucket para um novo bucket usando a AWS CLI:
aws s3api create-bucket --bucket
amzn-s3-demo-bucket
--regionus-east-1
--object-ownership BucketOwnerEnforced
Importante
Se você não definir a Propriedade de objeto ao criar um bucket usando a AWS CLI, a configuração padrão será ObjectWriter
(ACLs habilitadas).
Este exemplo define a configuração Imposto pelo proprietário do bucket para um novo bucket usando o AWS SDK for Java:
// Build the ObjectOwnership for CreateBucket CreateBucketRequest createBucketRequest = CreateBucketRequest.builder() .bucket(bucketName) .objectOwnership(ObjectOwnership.BucketOwnerEnforced) .build() // Send the request to Amazon S3 s3client.createBucket(createBucketRequest);
Para usar o recurso AWS::S3::Bucket
do AWS CloudFormation para definir a Propriedade de Objeto ao criar um bucket, consulte OwnershipControls em AWS::S3::Bucket no Guia do usuário do AWS CloudFormation.
Para adotar a configuração Imposto pelo proprietário do bucket para Propriedade de objeto do S3, use a operação de API CreateBucket
com o cabeçalho da solicitação x-amz-object-ownership
definido como BucketOwnerEnforced
. Para obter informações e exemplos, consulte CreateBucket na Referência da API do Amazon Simple Storage Service.
Próximas etapas: depois de adotar as configurações Imposto pelo proprietário do bucket ou Proprietário do bucket preferido para a Propriedade de Objetos, você poderá seguir estas etapas:
-
Bucket owner enforced (Aplicada pelo proprietário do bucket): exija que todos os novos buckets sejam criados com ACLs desabilitadas usando uma política do IAM ou do Organizations.
-
Bucket owner preferred (Preferencial do proprietário do bucket): adicione uma política de bucket do S3 para exigir a ACL
bucket-owner-full-control
pré-configurada para todos os carregamentos de objetos para o bucket.