new_coder
Совет номер ноль: поищи по форуму, уже много-много раз обсуждали.
3. Авторизацию проводищь когда тебе удобно. Главное, чтобы при запросе файла ты мог определить кто пользователь, собссно, такой. Session cookie для этого подходит.
2. Временные ссылки создаются случайным образом и заносятся в базу, в записи: идентификатор, время создания ссылки, файл оригинала, пользователь (если нужен).
Когда пользователь обращается за файлом, он так или иначе должен передать идентификатор временной ссылки твоему скрипту.
Что делает скрипт: смотрит, есть ли у него в базе такая ссылка, не истекло ли время, какие-то другие параметры. Если всё хорошо - отдает файл.
1. В папке с файлами положить .htaccess с чем-то вроде Deny from all. Тогда доступ будет только из твоих скриптов.
Неплохо бы еще заморочиться с content-range (чтобы пользователь мог "докачивать" файл), но это следующий этап.