Я хочу создать одноразовую ссылку для загрузки в файл amazon s3. Эта ссылка истекает после загрузки файла.
Я хочу, чтобы этот файл все еще был размещен, но посетитель может загрузить файл только один раз.
Мне нужен сценарий: у меня есть сайт загрузки файлов, где пользователи платят за файл. Я хочу, чтобы пользователь мог только загрузить файл один раз с веб-сайта (и Amazon s3), я также не хочу, чтобы пользователь мог поделиться ссылкой прямого скачивания с другими людьми.
Если это невозможно, я задаюсь вопросом, эффективнее ли это ограничивать его IP-адресом или Cookie, если это возможно?
Невозможно сказать S3, чтобы ссылка использовалась только один раз. Но вы можете создать ссылку, которая может использоваться только до определенного времени. То, что я делаю, перенаправляет запросчика на ссылку S3, срок действия которой истекает через несколько минут, поэтому он или она не успевают поделиться им. Вы можете сделать это время истечения очень короткое, даже несколько секунд, если у их браузера есть время, чтобы получить ответ перенаправления и следовать ему.
Вы можете написать услугу «одноразовый генератор URL» (либо в форме веб-сайта, либо в API-интерфейсе отдыха) и использовать функцию AWS-объединения для достижения этой цели.
Рассмотрим следующую процедуру:
Используйте подписанный URL. Только этот пользователь может использовать этот URL. Он также использует AWS SDK