2010-11-14 3 views
0

У меня проблема, я хотел бы хранить файлы за пределами общей папки с помощью paperclip (чтобы сделать их закрытыми), это было бы очень просто, просто настройте опцию: path, но для получения этих файлов (многие из них) мне понадобится метод контроллера (т. е. get_file), что очень медленно, когда вы показываете список файлов с «большими» изображениями. Я думал использовать случайное имя, чтобы хранить файлы публично, какое-то загадочное имя с SHA1 или что-то в этом роде, насколько сложно было бы получить доступ к файлу.?Скрытие файлов в общедоступной папке со случайными именами paperclip

ответ

1

До тех пор, пока вы не указали, что каталог никогда не указан, и имя действительно случайное (не зависит от реального имени) и достаточно длинное (16 буквенно-цифровых символов должны быть в порядке), это приемлемый и распространенный метод для сделай это.

+2

Предостережение: это классическая защита от неизвестности со всеми ее недостатками - каждый может получить доступ к файлу после того, как URL известен. Если вы только пытаетесь предотвратить доступ случайным образом, это может быть полезно; для того, чтобы сделать файлы частными, не так много. («Эй, Писквор имеет частное фото на /images/a65578b0eda778.jpg, проверьте его!») – Piskvor

+1

Если использовать «трудно угадать» номер, это безопасность безвестности, все шифрование тоже. В любом случае, спасибо, что указали на проблему с пересылкой «частных» ссылок. Тем не менее, всегда можно было бы сохранить файл, а не пересылать ссылку, так что не такая большая сделка. – AndreKR

+0

Thanx для ответа, я знал, что пока другие люди не могут перечислить ваши папки, у них есть определенная безопасность, но я хотел знать, были ли какие-то работы, чтобы это произошло, я пробовал это с ** nginx, * и когда я пытаюсь перечислить любую из общих папок, он перенаправляет меня в другое место. –

Смежные вопросы