Configurando Amazon S3 – Simple Storage Service

Um dos gargalos dos sistemas web são as mídias do site, pois elas consomem recursos preciosos do servidor para ler o arquivo (imagem, vídeo, etc) e devolver ao navegador.

Para resolver esse problema foi criado o conceito de Content Delivery Network (CDN) e um dos maiores CDNs hoje é o CloudFront da Amazon.

Irei descrever o passo a passo para a utilização do CloudFront, começando pela criação do bucket no Amazon Simple Storage Service (S3).

Criando o bucket (balde de dados)

Primeiramente deveremos acessar o console do S3 e veremos a imagem abaixo, logo após deveremos clicar em “Create Bucket

Escolhendo nome e região
  • Bucket name — O nome do bucket deve ser exclusivo em todos os nomes de buckets existentes na Amazon S3. Os buckets usados como ponto de origem para a distribuição do Amazon Cloudfront têm restrições específicas.
  • Region — Região onde os arquivos serão armazenados, eu escolhi South America (São Paulo) por estar mais perto do público alvo (pessoas que utilizarão o site).
  • Copy settings from an existing bucket — Selecione essa opção se desejar utilizar a configuração de algum outro bucket criado.

 

Definir propriedades
  • Versioning — Selecione essa opção caso desejar manter múltiplas versões de um arquivo no mesmo bucket.
  • Server access logging — Configurar registros de log de acesso que forneçam detalhes sobre solicitações de acesso.
  • Tags — Crie tags (etiquetas) para facilitar o acompanhamento dos custos referente a cada projeto ou outro critério.
  • Object-level loggingRegistre a atividade da API em nível de objeto usando o recurso de eventos de dados do CloudTrail (custo adicional).
  • Default encryptation — Encripta automaticamente objetos quando armazenados no S3.

Definir permissões
  • Manage Users — Definir os usuários que terão acesso a edição das configuraçoẽs do bucket.
    • User ID — Nome da conta de usuário.
    • Objects — Concede permissão ao usuário para listar, criar, sobrescrever ou excluir objetos no bucket.
    • Object permissions — Concede permissões para o usuário ler ou gravar em uma lista de controle de acesso (ACL) para o bucket.
  • Manage public permissions — Gerenciar permissões públicas.
    • Do not grant public read access to this bucket (Recommended) — Não conceder acesso público de leitura a esse bucket (recomendado)
    • Grant public read access to this bucket — Conceder acesso público de leitura a esse intervalo
  • Manage system permissions — Gerenciar permissões do sistema
    • Do not grant Amazon S3 Log Delivery group write access to this bucket — Não conceder acesso de gravação do grupo de entrega de logs do Amazon S3 a esse bucket.
    • Grant Amazon S3 Log Delivery group write access to this bucket — Conceder acesso de gravação ao grupo do Amazon S3 Log Delivery a este intervalo

Minha configuração

  • Manage Users — Deixei apenas o meu usuário com permissão total.
  • Manage public permissions — Sem permissão de acesso público ao bucket.
  • Manage system permissions — Como não desejo ter log das transações não concedi acesso de gravação de logs.

Agora vem a pergunta: Sem permissão de acesso público ao bucket? Como assim? Como tu vai fazer para disponibilizar as mídias enviadas para o bucket ser listada no site?

Para resolver esse problema iremos utilizar o Identity and Access Management (IAM), que irei descrever em breve.

Revisão

Nesse ponto será exibido um resumo das configurações definidas para o bucket.

Listagem e gestão do bucket

Após criar o bucket será exibido a listagem de buckets.

 

Clicando no nome do bucket será possível enviar e excluir arquivos, assim como editar as propriedades, permissões e configuraçoẽs do mesmo.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *