MongoDB's Gridfs, Rails 3, X-sendfile e ACL's, como fazer?
-
27-09-2019 - |
Pergunta
Eu tenho um projeto Rails 3 que faz upload/download de arquivos, com direitos de acesso (o usuário possui muitos arquivos e só pode ler/gravar seus próprios arquivos).
Se eu armazenar meus arquivos no sistema de arquivos clássicos, posso verificar o acesso ao arquivo no meu aplicativo Rails e, em seguida, usar o cabeçalho do X-Sendfile para redirecionar para o arquivo, se o usuário tiver acesso. Dessa forma, um usuário nunca pode acessar um arquivo sem permissão e o download é rápido.
Posso fazer o download de arquivos do Gridfs o mais rápido que o X-sendfile e pule o aborrecimento de canalizá-los com trilhos/rack?
Apontar -os a trilhos/rack dos valores seria terrivelmente lento?
Posso fazer o download de arquivos do Gridfs tão rápido quanto o X-Sendfile e pular o aborrecimento de canalizá-los trilhos/rack, E TAMBÉM tem a capacidade de aplicar direitos de acesso?
Solução
Até agora, encontrei e pensei em possíveis soluções:
Use algo como gridfs-fuse Para montar o GFS para o FS local e usar o X-Sndfile, assim como sempre.
Use algo como nginx-gridfs que é C-Fast e fora dos trilhos (não bloqueia o ciclo REQ-RESP do meu aplicativo durante o download). A desvantagem é que é específico do servidor