Configurar o inventário do Amazon S3 - Amazon Simple Storage Service

Configurar o inventário do Amazon S3

O Amazon S3 Inventory oferece uma lista de arquivos sem formatação de seus objetos e metadados, de acordo com um agendamento que você define. Você pode usar o Amazon S3 Inventory como uma alternativa agendada para a operação List da API síncrona. O S3 Inventory fornece arquivos de saída no formato de valores separados por vírgulas (CSV), em colunas de linhas otimizados para Apache (ORC) ou Apache Parquet (Parquet), que listam seus objetos e os metadados correspondentes.

É possível configurar o S3 Inventory para criar listas de inventário, diária ou semanalmente, para um bucket do S3 ou para os objetos que compartilham um prefixo (objetos com nomes que começam com a mesma string). Para ter mais informações, consulte Inventário do Amazon S3.

Esta seção descreve como configurar um inventário, incluindo detalhes sobre seus buckets de origem e destino do inventário.

Visão geral

O Amazon S3 Inventory ajuda você a gerenciar seu armazenamento, criando listas dos objetos em um bucket do S3 em uma programação definida. Você pode configurar várias listas de inventário para um bucket. As listas de inventários são publicadas em arquivos CSV, ORC ou Parquet em um bucket de destino.

A maneira mais fácil de configurar um inventário é usando o console do Amazon S3, mas você também pode usar a API REST do Amazon S3, a AWS Command Line Interface (AWS CLI) ou SDKs da AWS. O console realiza a primeira etapa do procedimento a seguir para você: adicionar uma política de bucket ao bucket de destino.

Para configurar o Amazon S3 nventory para um bucket do S3

  1. Adicionar uma política do bucket para o bucket de destino.

    É necessário criar uma política de bucket no bucket de destino que conceda permissões ao Amazon S3 para gravar objetos no bucket no local definido. Para ver um exemplo de política, consulte Conceder permissões para o Inventário do S3 e análises do S3.

  2. Configurar um inventário para relacionar objetos em um bucket de origem e publicar a lista em um bucket de destino.

    Ao configurar uma lista de inventários para um bucket de origem, você especifica o bucket de destino no qual deseja que a lista seja armazenada e se quer gerar a lista diária ou semanalmente. Você também pode configurar se devem ser listadas todas as versões de objetos ou somente as versões atuais e quais metadados de objetos devem ser incluídos.

    Alguns campos de metadados de objetos nas configurações de relatório do Inventário S3 são opcionais, o que significa que estão disponíveis por padrão, mas podem ser restritos quando você concede a permissão s3:PutInventoryConfiguration a um usuário. É possível controlar se os usuários podem incluir esses campos de metadados opcionais em seus relatórios usando a chave de condição s3:InventoryAccessibleOptionalFields.

    Consulte mais informações sobre os campos de metadados opcionais disponíveis no Inventário S3 em OptionalFields na Referência de API do Amazon Simple Storage Service. Consulte mais informações sobre como restringir o acesso a certos campos de metadados opcionais em uma configuração de inventário em Controlar a criação da configuração de relatórios do Inventário S3.

    É possível especificar que o arquivo da lista de inventário seja criptografado usando a criptografia do lado do servidor com uma chave gerenciada do Amazon S3 (SSE-S3) ou uma chave gerenciada pelo cliente do AWS Key Management Service (AWS KMS) (SSE-KMS).

    nota

    A Chave gerenciada pela AWS (aws/s3) não é compatível com a criptografia SSE-KMS com o S3 Inventory.

    Para obter mais informações sobre SSE-S3 e SSE-KMS, consulte Proteger os dados usando criptografia do lado do servidor. Se você pretende usar a criptografia de SSE-KMS, consulte a Etapa 3.

  3. Para criptografar o arquivo da lista de inventários com o SSE-KMS, conceda permissão para que o Amazon S3 use a AWS KMS key.

    Você pode configurar a criptografia do arquivo da lista de inventários usando o console do Amazon S3, a API REST do Amazon S3 a AWS CLI ou SDKs da AWS. Independentemente do que você escolher, é necessário conceder permissão para que o Amazon S3 use a chave gerenciada pelo cliente para criptografar o arquivo de inventário. Conceda permissão ao Amazon S3 modificando a política de chave da chave gerenciada pelo cliente que você deseja usar para criptografar o arquivo de inventário. Para ter mais informações, consulte Conceder permissão para que o Amazon S3 use a sua chave gerenciada pelo cliente para criptografia.

    O bucket de destino que armazena o arquivo da lista de inventário pode ser de propriedade de uma Conta da AWS diferente da conta que possui o bucket de origem. Se você usa a criptografia SSE-KMS para as operações entre contas do Inventário Amazon S3, recomendamos usar um ARN de chave do KMS totalmente qualificado ao configurar o Inventário S3. Para obter mais informações, consulte Usar criptografia SSE-KMS para operações entre contas e ServerSideEncryptionByDefault na Referência da API do Amazon Simple Storage Service.

Criação de uma política de bucket de destino

Se você criar a configuração de inventário pelo console do Amazon S3, o Amazon S3 criará automaticamente uma política de bucket no bucket de destino que concede ao Amazon S3 permissão de gravação para o bucket. No entanto, se você criar a configuração de inventário pela AWS CLI, por SDKs da AWS ou pela API REST do Amazon S3, será necessário adicionar manualmente uma política de bucket no bucket de destino. Para ter mais informações, consulte Conceder permissões para o Inventário do S3 e análises do S3. A política do bucket de destino do Inventário S3 permite que o Amazon S3 grave dados para os relatórios de inventário no bucket.

Se ocorrer um erro quando você tentar criar a política do bucket, você receberá instruções sobre como corrigi-lo. Por exemplo, se você escolher um bucket de destino em outra Conta da AWS e não tiver as permissões para ler e gravar na política do bucket, você verá uma mensagem de erro.

Nesse caso, o proprietário do bucket de destino deve adicionar a política do bucket ao bucket de destino. Se a política não for adicionada ao bucket de destino, você não terá um relatório de inventário, pois o Amazon S3 não tem permissão para gravar no bucket de destino. Se o bucket de origem pertencer a outra conta que não seja a do usuário atual, o ID de conta correto do bucket de origem deverá ser substituído na política.

Conceder permissão para que o Amazon S3 use a sua chave gerenciada pelo cliente para criptografia

Para conceder permissão para que o Amazon S3 use sua chave gerenciada pelo cliente do AWS Key Management Service (AWS KMS) para criptografia no lado do servidor, é necessário usar uma política de chave. Para atualizar sua política de chaves para que você possa usar uma chave gerenciada pelo cliente, siga este procedimento.

Como conceder permissões ao Amazon S3 para criptografia usando a chave gerenciada pelo cliente
  1. Usando a Conta da AWS proprietária da chave gerenciada pelo cliente, faça login no AWS Management Console.

  2. Abra o console do AWS KMS em https://console.aws.amazon.com/kms.

  3. Para alterar a Região da AWS, use o seletor de regiões no canto superior direito da página.

  4. No painel de navegação esquerdo, escolha Customer managed keys (Chaves gerenciadas pelo cliente).

  5. Em Chaves gerenciadas pelo cliente, selecione a chave gerenciada pelo cliente que você deseja usar para criptografar os arquivos de inventário.

  6. Na seção Key Policy (Política de chaves), selecione Switch to policy view (Alternar para a visualização da política).

  7. Para atualizar a política de chave, escolha Edit (Editar).

  8. Na página Editar a política de chaves, adicione as seguintes linhas à política de chave existente. Para source-account-id e DOC-EXAMPLE-SOURCE-BUCKET, forneça os valores apropriados para seu caso de uso.

    { "Sid": "Allow Amazon S3 use of the customer managed key", "Effect": "Allow", "Principal": { "Service": "s3.amazonaws.com" }, "Action": [ "kms:GenerateDataKey" ], "Resource": "*", "Condition":{ "StringEquals":{ "aws:SourceAccount":"source-account-id" }, "ArnLike":{ "aws:SourceARN": "arn:aws:s3:::DOC-EXAMPLE-SOURCE-BUCKET" } } }
  9. Escolha Salvar alterações.

Para obter mais informações sobre como criar chaves gerenciadas pelo cliente e usar políticas de chaves, consulte os links a seguir no Guia do desenvolvedor do AWS Key Management Service:

Configurar um inventário usando o console do S3

Use estas instruções para configurar o inventário usando o console do S3.

nota

Pode levar até 48 horas para o Amazon S3 entregar o primeiro relatório de inventário.

  1. Faça login no AWS Management Console e abra o console do Amazon S3 em https://console.aws.amazon.com/s3/.

  2. No painel de navegação à esquerda, escolha Buckets. Na lista Buckets, escolha o nome do bucket para o qual deseja configurar o Inventário Amazon S3.

  3. Escolha a guia Management.

  4. Em Inventory configurations (Configurações de inventário), escolha Create inventory configuration (Criar configuração de inventário).

  5. Em Nome da configuração do inventário, insira um nome.

  6. Em Escopo de inventário, faça o seguinte:

    • Insira um prefixo opcional.

    • Escolha quais versões de objeto incluir, Somente versões atuais ou Incluir todas as versões.

  7. Em Report details (Detalhes do relatório), escolha o local da Conta da AWS em que deseja salvar os relatórios: This account (Esta conta) ou A different account (Uma conta diferente).

  8. Em Destino, selecione o bucket de destino no qual deseja salvar os relatórios de inventário.

    O bucket de destino deve estar na mesma Região da AWS que o bucket para o qual você está configurando o inventário. O bucket de destino pode estar em uma Conta da AWS diferente. Ao especificar o bucket de destino, você também pode incluir um prefixo opcional para agrupar os relatórios de inventário.

    No campo de bucket Destino, você verá a declaração Permissão do bucket de destino que é adicionada à política de bucket de destino para permitir que o Amazon S3 coloque dados nesse bucket. Para ter mais informações, consulte Criação de uma política de bucket de destino.

  9. Em Frequência, escolha a frequência com que o relatório será gerado, Diário ou Semanal.

  10. Em Formato da saída, escolha um dos seguintes formatos para o relatório:

    • CSV: se você planeja usar esse relatório de inventário com as Operações em Lote do S3 ou se quiser analisar esse relatório em outra ferramenta, como o Microsoft Excel, escolha CSV.

    • Apache ORC

    • Apache Parquet

  11. Em Status, escolha Enable (Ativar) ou Disable (Desabilitar).

  12. Para configurar a criptografia no lado do servidor, em Criptografia de relatório do Inventory, siga estas etapas:

    1. Em Criptografia do lado do servidor, selecione Não especificar uma chave de criptografia ou Especificar uma chave de criptografia para criptografar dados.

      • Para manter as configurações de bucket para a criptografia padrão de objetos no lado do servidor ao armazená-los no Amazon S3, selecione Não especificar uma chave de criptografia. Desde que o destino do bucket tenha o recurso de chaves de bucket do S3 ativado, a operação de cópia aplicará uma chave de bucket do S3 ao bucket de destino.

        nota

        Se a política de bucket para o destino especificado exigir que os objetos sejam criptografados antes de armazená-los no Amazon S3, você deverá escolher Especificar uma chave de criptografia. Caso contrário, ocorrerá uma falha na cópia de objetos no destino.

      • Para criptografar objetos antes de armazená-los no Amazon S3, selecione Especificar uma chave de criptografia.

    2. Se você escolheu Especificar uma chave de criptografia, em Tipo de criptografia, é necessário selecionar Chave gerenciada pelo Amazon S3 (SSE-S3) ou Chave do AWS Key Management Service (SSE-KMS).

      A SSE-S3 usa uma das criptografias de bloco mais fortes: o padrão de criptografia avançada de 256 bits (AES-256) para criptografar cada objeto. A SSE-KMS oferece mais controle sobre sua chave. Para ter mais informações sobre SSE-S3, consulte Usar a criptografia do lado do servidor com chaves gerenciadas pelo Amazon S3 (SSE-S3). Para obter mais informações sobre SSE-KMS, consulte Usar criptografia do lado do servidor com o AWS KMS (SSE-KMS).

      nota

      Para criptografar o arquivo da lista de inventário com a SSE-KMS, conceda permissão para que o Amazon S3 use a chave gerenciada pelo cliente. Para obter instruções, consulte Conceder permissão para o Amazon S3 criptografar usando chaves do KMS.

    3. Se você escolheu chave do AWS Key Management Service (SSE-KMS), em AWS KMS key, poderá especificar a chave do AWS KMS por meio de uma das opções a seguir.

      nota

      Se o bucket de destino que armazena o arquivo da lista de inventários pertencer a outra Conta da AWS, use um ARN de chave do KMS totalmente qualificado para especificar a chave do KMS.

      • Para fazer sua escolha em uma lista de chaves do KMS disponíveis, selecione Escolha entre suas chaves do AWS KMS e escolha uma chave do KMS de criptografia simétrica na lista de chaves disponíveis. Verifique se a chave do KMS está na mesma região do bucket.

        nota

        A Chave gerenciada pela AWS (aws/s3) e as chaves gerenciadas pelo cliente são exibidas na lista. No entanto, a Chave gerenciada pela AWS (aws/s3) não é compatível com a criptografia SSE-KMS com o S3 Inventory.

      • Para inserir o ARN da chave do KMS, selecione Inserir ARN da chave do AWS KMS 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.

  13. Em Campos adicionais de metadados, selecione um ou mais dos seguintes campos para adicionar ao relatório de inventário:

    • Tamanho: o tamanho do objeto em bytes, sem incluir o tamanho de uploads incompletos de várias partes, metadados de objetos e marcadores de exclusão.

    • Last modified date (Data da última modificação) – a data de criação do objeto ou data da última modificação, a mais atual entre as duas.

    • Multipart upload – especifica se o objeto foi carregado como um multipart upload. Para obter mais informações, consulte Carregar e copiar objetos usando multipart upload.

    • Replication status (Status da replicação) – o status de replicação do objeto. Para ter mais informações, consulte Obtenção de informações sobre o status da replicação.

    • Status da criptografia: o tipo da criptografia do lado do servidor usada para criptografar o objeto. Para ter mais informações, consulte Proteger os dados usando criptografia do lado do servidor.

    • Status da chave de bucket: indica se uma chave no nível do bucket gerada pelo AWS KMS se aplica ao objeto. Para ter mais informações, consulte Redução do custo do SSE-KMS com chaves de bucket do Amazon S3.

    • Lista de controle de acesso de objetos: uma lista de controle de acesso (ACL) para cada objeto que define quais Contas da AWS ou grupos recebem acesso a esse objeto e o tipo de acesso concedido. Para obter mais informações sobre esse campo, consulte Trabalhar com o campo ACL de objetos. Para obter mais informações sobre ACLs, consulte Visão geral da lista de controle de acesso (ACL).

    • Proprietário do objeto: o dono do objeto.

    • Classe de armazenamento: a classe de armazenamento usada para armazenar o objeto.

    • Intelligent Tiering: nível de acesso: indica o nível de acesso (frequente ou infrequente) do objeto se armazenado na classe de armazenamento S3 Intelligent-Tiering. Para ter mais informações, consulte Classe de armazenamento para otimizar automaticamente dados com padrões de acesso alterados ou desconhecidos.

    • ETag: a tag de entidade (ETag) é um hash do objeto. O ETag reflete as alterações apenas no conteúdo de um objeto, não em seus metadados. O ETag pode ou não ser um digest MD5 do objeto de dados. Tudo depende de como o objeto foi criado e de como está criptografado. Para obter mais informações, consulte Object na Referência da API do Amazon Simple Storage Service.

    • Algoritmo de soma de verificação: indica o algoritmo usado para criar a soma de verificação do objeto.

    • Todas as configurações de bloqueio de objetos: o status do bloqueio de objetos, incluindo as seguintes configurações:

      • Bloqueio de objetos: modo de retenção: o nível de proteção aplicado ao objeto, Governança ou Conformidade.

      • Bloqueio de objetos: prazo de retenção: a data até a qual o objeto bloqueado não pode ser excluído.

      • Bloqueio de objetos: status da retenção jurídica: o status de retenção jurídica do objeto bloqueado.

      Para obter mais informações sobre bloqueio de objetos do S3, consulte Como o bloqueio de objetos do S3 funciona.

    Para obter mais informações sobre o conteúdo de um relatório de inventário, consulte Lista do Amazon S3 Inventory.

    Consulte mais informações sobre como restringir o acesso a certos campos de metadados opcionais em uma configuração de inventário em Controlar a criação da configuração de relatórios do Inventário S3.

  14. Escolha Criar.

Quando uma lista de inventários é publicada, é possível consultar o arquivo de lista de inventários no Amazon S3 Select. Para obter mais informações sobre como localizar sua lista de inventários e consultar o arquivo da lista de inventários com o Amazon S3 Select, consulte Localização de lista de inventário.

Usar a API REST para trabalhar com o Inventário S3

Veja a seguir as operações REST que você pode usar para trabalhar com o Inventário Amazon S3.