Arquivos e armazenamento de objetos
Por que não no servidor
Arquivos em um disco local quebram múltiplas instâncias, backup e deploy. No armazenamento de objetos você obtém durabilidade, acesso direto de uma rede de distribuição e uma política de ciclo de vida.
O fluxo correto
O servidor emite um endereço assinado de vida curta; o cliente faz upload diretamente; o servidor recebe uma notificação e atualiza o registro. Menos carga, menos custo e menos espera para o usuário.
No download: mesmo princípio. Um endereço assinado com expiração, para que um link vazado não seja eterno.
O que verificar no servidor
O tipo de arquivo pelo conteúdo e não pela extensão, um limite de tamanho e um scan de conteúdo malicioso quando usuários fazem upload para outros. E nomes de arquivo — nunca armazene o nome que o usuário deu como caminho no sistema.
Indo mais fundo
Defina uma política de ciclo de vida para mídias: o que é deletado, quando e como. O armazenamento é a linha que cresce silenciosamente, e sem política simplesmente cresce.