способы защиты изображений

Kirill

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

Есть многопользовательская галерея. Пользователю в зависимости от прав разрешается или запрещается просматривать альбом или изображение. Если пользователю разрешен просмотр - выдается thumbnails фотографии. Доступ к оригинальным фотографиям также разграничен.

Как лучше реализовать?
Хранить фотографии в директории с Deny from all, а изображения сплевывать через php? - на мой взгляд слишком много ресурсов будет жрать.

Какие еще варианты возможны?

Скрипт должен быть универсальным и работать на большинстве говнохостингов.

-~{}~ 27.09.09 16:11:

symlink ?
 

DiMA

php.spb.ru
Команда форума
Записывать фотки с длинными случайными именами. Ссылку на фулскрин картинку выдавать только при наличии прав.

Минус метода - юзер, имеющий права, может кинуть ссылку тому, кто прав не имеет.

Лучше поставить nginx + модуль access key, который сам все сделает. Без пхп.
 

Kirill

Новичок
не катит - это коробочная версия продукта - надо чтобы у всех домохозяек работало.
 

DiMA

php.spb.ru
Команда форума
ты внимательно читать умеешь? Ничего, кроме третьей строки в сообщении не заметил?
 

DiMA

php.spb.ru
Команда форума
Я знаю. А еще я знаю, что он знает, что других вариантов не существует. И заданный вопрос - риторический .-)
 

Духовность™

Продвинутый новичок
а как часто коробочное решение требует такой конспирации изображений? порно-сайт из коробки никак?)
 

DiMA

php.spb.ru
Команда форума
хм.. вообще-то я придумал мелкий изврат для апача :)

/image - база фоток, доступ закрыт по .htaccess

/link0/ioewuroiweuriowu/
/link1/mvhveiurbierbuwe/
...
/link255/jvslkjweireoivjeri/

Каталог /linkN/секрет/ указывает симлинком на /image

В каждом каталоге /linkN/ лежит файл .htaccess, разрешающий доступ только компам с ИП, где последний номер (младший байт) равен N. Тогда юзер не сможет дать ссылку другу, не имеющему доступ. Если только у друга не совпадет младший байт ип =) Плюс метода - файлы на диске создаются один раз и навсегда. Но периодически можно менять "секрет", удаляя старый секрет спустя час-два. Главное, не придется постоянно тягать диск симлинками под каждого юзера.
 

no_santa

Снегур
Натягивать ватермарк при загрузке. Чтобы усложнить жизнь ворам, несколько ослучайнить позиции и виды ватермарков. Ну и nginx конечно, если надо сделать антилич.
 

no_santa

Снегур
Дык, nginx можно подружить с сессиями php! Не без костылей, но работает, ёптыть! :)
 
Сверху