Verificar a integridade dos dados no Amazon S3 com somas de verificação adicionais

TUTORIAL

Visão geral

As organizações estão constantemente criando e migrando ativos digitais para o Amazon S3. Esses ativos incluem imagens, arquivos binários, renderizações de pós-produção e muito mais, todos essenciais para os negócios. Como os ativos são migrados e usados em fluxos de trabalho, você deseja garantir que os arquivos não sejam alterados por corrupção de rede, falha no disco rígido ou outros problemas não intencionais. Hoje, a indústria usa algoritmos para escanear um arquivo byte por byte para gerar uma impressão digital única para ele, conhecida como soma de verificação.
 
Com somas de verificação, você pode verificar se os ativos não são alterados quando copiados. A execução de uma soma de verificação consiste em usar um algoritmo para iterar sequencialmente sobre cada byte em um arquivo.

O Amazon S3 oferece várias opções de soma de verificação para acelerar a verificação da integridade dos dados. Esses recursos calculam a soma de verificação de um arquivo quando um cliente carrega um objeto. Os clientes que migram grandes volumes de dados para o Amazon S3 querem realizar essas verificações de integridade como a melhor prática de durabilidade e confirmar que cada byte é transferido sem alterações. Isso permite que os clientes mantenham a integridade dos dados de ponta a ponta. A soma de verificação é criada no momento em que o objeto é carregado e é preservada durante toda a vida útil do objeto. A mesma soma de verificação é validada no final quando o objeto é baixado, para oferecer integridade de dados de ponta a ponta. Os algoritmos adicionais com suporte pelo Amazon S3 são: SHA-1, SHA-256, CRC32 e CRC32-C. Com esses novos atributos de verificação de integridade de dados, você pode verificar se seus arquivos não foram alterados durante a transferência de dados ou durante o upload ou o download.

O que você aprenderá

  • Faça upload de um arquivo para o Amazon S3
  • Compare a soma de verificação no Amazon S3 e seu arquivo local para verificar a integridade dos dados

Pré-requisitos

 Experiência com a AWS

Iniciante

 Tempo para conclusão

20 minutos

 Custo da conclusão

 Requisitos

Conta da AWS

 Serviços usados

 Data da última atualização

15 de agosto de 2022

Implementação

Etapa 1: criar um bucket do Amazon S3

  • 1.1 - Faça login no console do Amazon S3
    • Se você ainda não tiver feito isso, crie uma conta da AWS.
    • Faça login no Console de Gerenciamento da AWS usando as informações da sua conta.
    • Na barra de pesquisa de serviços do Console da AWS, digite S3. Na seção de resultados da pesquisa de serviços, selecione S3. Você pode notar que há uma opção para o S3 Glacier. Essa opção é para o serviço Glacier antes da integração com o Amazon S3. Recomendamos que os usuários do Amazon S3 Glacier usem o console do Amazon S3 para uma experiência de usuário aprimorada.

  • 1.2 - crie um bucket do S3
    • Escolha Buckets no menu do Amazon S3 disposto na esquerda e, em seguida, selecione o botão Create bucket (Criar bucket).
  • 1.3
    • Insira um nome global descritivo e exclusivo para seu bucket. Selecione em qual AWS Region (Região da AWS) você deseja que seu bucket seja criado. A configuração padrão Block Public Access (Bloquear acesso público) é apropriada para essa workload, portanto, deixe esta seção como está.
    • Você pode deixar as opções restantes como padrão, navegar até o final da página e escolher Criar bucket.

Etapa 2: fazer upload de um arquivo e especificar o algoritmo de soma de verificação

Agora que seu bucket foi criado e configurado, você está pronto para fazer upload de um arquivo e ter a soma de verificação calculada pelo Amazon S3.
  • 2.1 - Faça upload de um objeto
    • Se você estiver desconectado da sessão do Console de Gerenciamento da AWS, faça login novamente. Navegue até o console do S3 e selecione a opção Buckets no menu. Na lista de buckets disponíveis, selecione o nome do bucket que você acabou de criar.
  • 2.2.
    • Em seguida, selecione a guia Objects (Objetos). Em seguida, na seção Objects (Objetos), selecione o botão Upload (Fazer upload).
  • 2.3 - Adicionar arquivos
    • Escolha o botão Adicionar arquivos e, em seguida, selecione o arquivo que você gostaria de carregar do seu navegador de arquivos.
  • 2.4 - Expandir propriedades
    • Navegue até a página para encontrar a seção Propriedades. Em seguida, selecione Propriedades e expanda a seção.
  • 2.5 - Selecione somas de verificação adicionais
    • Em Somas de verificação adicionais, selecione a opção Ativado e escolha SHA-256.

Se seu objeto tiver menos de 16 MB e você já tiver calculado a soma de verificação SHA-256 (codificada em base64), você poderá fornecê-la na caixa de entrada de valor pré-calculado. Para usar essa funcionalidade para objetos maiores que 16 MB, você pode usar a CLI ou o SDK. Quando o Amazon S3 recebe o objeto, ele calcula a soma de verificação usando o algoritmo especificado. Se os valores da soma de verificação não corresponderem, o Amazon S3 gera um erro e rejeita o upload, conforme mostrado na captura de tela.

  • 2.6 - Fazer upload
    • Navegue até a página e escolha o botão Fazer upload.
  • 2.7
    • Depois que o upload for concluído, escolha o botão Fechar.

Etapa 3: verificar a soma de verificação

  • 3.1
    • Selecione o arquivo enviado selecionando o nome do arquivo. Isso o levará para a página Propriedades.
  • 3.2 - Localize o valor da soma de verificação
    • Navegue até a página de propriedades e você encontrará a seção de Somas de verificação adicionais.
    • Esta seção exibe a soma de verificação codificada em base64 que o Amazon S3 calculou e verificou no momento do upload.
  • 3.3 - Comparar
    • Para comparar o objeto em seu computador local, abra uma janela de terminal e navegue até onde seu arquivo está.
    • Use um utilitário como o shasum para calcular o arquivo. O comando a seguir executa um cálculo sha256 no mesmo arquivo e converte a saída hexadecimal em base64: shasum -a 256 image.jpg | cut -f1 -d\ | xxd -r -p | base64
    • Ao comparar esse valor, ele deve corresponder ao valor no console do Amazon S3.

Etapa 4: limpar

Nas próximas etapas, você limpará os recursos criados neste tutorial. É uma prática recomendada excluir recursos que você não esteja mais usando a fim de evitar cobranças não intencionais.
  • 4.1 - excluir o objeto de teste
    • Se você estiver desconectado da sessão do Console de Gerenciamento da AWS, faça login novamente. Navegue até o console do S3 e selecione a opção Buckets no menu. Primeiro, você precisará excluir o objeto de teste do seu bucket de teste. Selecione o nome do bucket com o qual você estava trabalhando neste tutorial. Marque a caixa de seleção à esquerda do nome do objeto de teste e selecione o botão Delete (Excluir). Na página Delete objects (Excluir objetos), verifique se você selecionou o objeto correto para excluir e digite permanently delete (excluir permanentemente) na caixa de confirmação Permanently delete objects (Excluir objetos permanentemente). Em seguida, selecione o botão Delete object (Excluir objeto) para continuar. Posteriormente, será apresentada uma faixa de notificação indicando se a exclusão foi bem-sucedida.
  • 4.2 - excluir o bucket de teste
    • Por fim, você precisa excluir o bucket de teste que criou. Retorne à lista de buckets em sua conta. Selecione o botão de opção à esquerda do bucket que você criou para este tutorial e, em seguida, clique no botão Delete (Excluir). Analise a mensagem de aviso. Se desejar continuar a exclusão deste bucket, digite o nome do bucket na caixa Delete bucket confirmation (Confirmação de exclusão de bucket) e escolha Delete bucket (Excluir bucket).

Conclusão

Parabéns! Você aprendeu a fazer upload de um arquivo para o Amazon S3, calcular somas de verificação adicionais e comparar a soma de verificação no Amazon S3 e em seu arquivo local para verificar a integridade dos dados.

Esta página foi útil para você?

Próximas etapas

Para saber mais sobre somas de verificação, visite os seguintes recursos.

Explore somas de verificação adicionais

Para saber mais sobre somas de verificação adicionais no Amazon S3, leia o blog de lançamento e visite a documentação de verificação da integridade de objetos.

Descubra as somas de verificação finais

O Amazon S3 também introduziu somas de verificação finais, um novo atributo para o AWS SDK. Usando somas de verificação finais, o SDK calculará a soma de verificação em uma única passagem ao carregar seu arquivo no Amazon S3. Leia mais sobre isso na postagem do blog Construindo somas de verificação escaláveis.