Re[2]: URL с временными токенами

Михаил Монашёв postmaster на softsearch.ru
Вт Май 11 20:27:33 MSD 2010


Здравствуйте, softshape.

s> Миша, ну с твоим-то опытом !.... Нельзя же проверять
s> авторизацию бэкендом на каждый чих. Представь что в альбоме 150
s> фотографий. Они все (точнее их превьюшки) выводятся одновременно на
s> одной странице. Отдача каждой превьюшки приведет к запросу к базе
s> на проверку прав данного юзера на данную картинку. Так нельзя. И
s> совсем не проверять тоже нельзя, это получится как вКонтакте - на
s> превью все видно, а тык на фото - "защищено настройками
s> приватности". Поэтому мы сделали так, что все фото в одном альбоме
s> наследуют одинаковые права доступа от альбома. Это позволяет
s> обойтись одним запросом, при условии что отдачу картинок будет
s> делать nginx.

Про  базу  я  не  писал,  это  видимо у тебя сейчас через базу сделана
авторизация.

Авторизацию  можно  проверять  через куки или кусок урла. Т.е. всё что
нужно сделать бэкенду - это взять какую-то строку и проверить, что она
привязана  в тому ip или подсети, с которого пришёл запрос и что время
её  не вышло. Это очень быстро. И в зависимости от результата проверки
отправить внутренний редирект nginx-у на ту или иную картинку.

Если  посещаемость  небольшая,  то  и  на  встроенном  перле это можно
сделать.

Хотя  наверное  для  150 авторизаций на одну страницу это и вправду не
подойдёт...

s> Илья, Максим, спасибо за наводку - ngx_http_secure_link_module
s> и особенно NginxHttpSecureDownload выглядят многообещающе.

Модуль Игоря будет работать при обновлении nginx-а. А вот модуль
сторонних разработчиков я б не использовал, хотя он и есть именно то,
что тебе нужно...

-- 

С уважением,
Михаил Монашёв
mailto:postmaster at softsearch.ru
ICQ# 166233339
http://michael.mindmix.ru/
Без бэкапа по жизни.




Подробная информация о списке рассылки nginx-ru