Crie um bucket no S3 para upload de arquivos
Agora que temos nossa tabela no DynamoDB pronta, vamos configurar a parte que lida com upload de arquivos. Precisamos permitir uploads pois cada anotação pode ter um arquivo como anexo.
O Amazon S3 (Simple Storage Service) fornece um serviço de armazenamento pela interface web como REST. Você pode armazenar qualquer arquivo no S3 incluindo imagens, vídeos, etc. Os arquivos (objetos) são organizados em buckets que são identificados com um nome único, atribuído por uma chave única por usuário.
Neste capítulo, nós vamos criar um bucket no S3 que será utilizado para armazenar os arquivos que cada usuário fez o upload pelo nosso app.
Criar um Bucket
Primeiro, faça o login no Console da AWS e selecione o S3 na lista de serviços.
Selecione Criar bucket.
Digite um nome para o bucket e selecione uma região. Depois clique no botão Criar.
- Nomes do buckets são globalmente únicos, então você deve criar um nome único ainda não utilizado.
- Região é uma região demográfica onde os arquivos são armazenados fisicamente em servidores. No tutorial será utilizado a Leste dos EUA (Norte da Virgínia), mas se estiver no Brasil, recomenda-se utilizar a América do Sul (São Paulo)
Guarde o nome da região que utilizar, pois vamos precisar disso mais tarde.
Siga os próximos passos e aceite as configurações padrões clicando em Próximo e clique em Criar bucket no último passo.
Habilitar CORS
No app de anotações, os usuários farão upload de arquivos para o bucket que acabamos de criar. Nosso app será hospedado em um domínio customizado e vai estabelecer uma comunicação entre domínios no ato do upload. Por padrão, S3 não permite acesso ao bucket a partir de domínios diferentes. Entretanto, o CORS permite que isso aconteça, basta ativá-lo no bucket.
Selecione o bucket que acabamos de criar (clique bem em cima do nome).
Selecione a aba the Permissões, e clique em Configuração de CORS.
Coloque essas configurações no editor que aparece e depois clique em Salvar.
[
{
"AllowedMethods": [
"GET",
"PUT",
"POST",
"HEAD",
"DELETE"
],
"AllowedOrigins": [
"*"
],
"AllowedHeaders": [
"*"
],
"MaxAgeSeconds": 3000
}
]
Você também pode editar essa configuração para utilizar seu próprio domínio ou uma lista que queira permitir o acesso, uma vez que desejar usar em produção.
Agora que temos nosso bucket no S3 pronto, vamos configurar autenticação de usuários.
For help and discussion
Comments on this chapter