Нужен посвет по защите картинок на сайте с личными кабинетами

12
A
На сайте с 07.01.2010
Offline
123
781

Добрый день!

Мне надо как-то защитить фотки одного пользователя в личном кабинете, от другого пользователя.

Тоесть, фотки лежат: /private/{уид юзера}/{timestamp}.jpg

теорпетически, можно легко написать обработчик, и качнуть все /private/{от 1 до 999}/{от год назад до текущей даты}.jpg запросив все подряд скриптом и скачав что есть.

Как бы мне их защитить от скачивания?

пока думаю выводить через php скрипт, в нем ставить проверку на залогиненого пользователя и запрашиваемой картинки, а доступ к файлам (картинкам) в папке /private/ закрыть через .htaccess

но может есть более нормальное решение?

Создаем и продвигаем сайты различных тематик
S
На сайте с 30.09.2016
Offline
469
#1

Сделайте не timestamp, а md5(timestamp).

Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.
A
На сайте с 07.01.2010
Offline
123
#2
Sitealert:
Сделайте не timestamp, а md5(timestamp).

и что это координально меняет?

также могут сделать перебор

O9
На сайте с 03.05.2016
Offline
38
#3

А если скачивать фотки не напрямую, а через PHP-скрипт (функцией read из каталога, закрытого для HTTP), и на уровне скрипта делать проверки безопасности?

A
На сайте с 07.01.2010
Offline
123
#4
Oliver9:
А если скачивать фотки не напрямую, а через PHP-скрипт (функцией read из каталога, закрытого для HTTP), и на уровне скрипта делать проверки безопасности?

это решение то понятное, я тоже думаю так сделать. Но может есть какой более адекватный метод?

в .htaccess например как-то связать сессиию или кукую с доступом к папке, или еще что подобное

просто если делать: <?php readfile("имя файла"); ?>

то тут грузим лишний раз php интерпретатор, а хотелось бы максимально оптимизировать процесс

S
На сайте с 30.09.2016
Offline
469
#5
Alfinnov:
и что это координально меняет?
также могут сделать перебор

Задолбаешься делать перебор md5 по 1000 юзерам. Это, мягко говоря, "чуть сложнее", чем перебрать временные метки.

S
На сайте с 13.10.2014
Offline
171
#6

перенаправляйте через htaccess всех на скрипт, который будет проверять безопасность, а потом уже отдавать картинку. так чаще всего решают вопрос с закрытым контентом.

S
На сайте с 30.09.2016
Offline
469
#7
Alfinnov:
фотки одного пользователя в личном кабинете

Вы забыли уточнить, с какой целью там лежат эти фотки.

O9
На сайте с 03.05.2016
Offline
38
#8

В .htaccess можно проверить наличие куки, но вот сложный алгоритм типа хеша, насколько мне известно, не проверить.

Еще один вариант, как предложили, сделать уникальные имена файлов, который будет невозможно брутфорсить, вроде 128-битных случайных чисел.

Если есть контроль над конфигурацией сервера или хотя бы виртуального хоста, то может помочь RewriteMap.

S
На сайте с 13.10.2014
Offline
171
#9

Вот, посмотрите, может быть как-то поможет https://habr.com/post/151795/

M
На сайте с 04.10.2011
Offline
90
#10

Alfinnov, Сделйте через РНР скрипт и не мучайтесь. Нет там никаких супер затрат. Скриптом сможете всё что угодно проверить.

Сдается, обращаться скайп avdesk-it-kmm Верстка, кодинг - контакты в профиле... VPS от 5€ (https://gmhost.com.ua/?partner=10255)
12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий