Попытка понять S3... Как ограничить доступ к файлу, который вы загружаете на S3? Например, из веб-приложения у каждого пользователя есть файлы, которые они могут загружать, но как вы ограничиваете доступ, так что только у этого пользователя есть доступ к этому файлу? Кажется, что для проверки подлинности строки запроса требуется дата истечения срока действия, и это не сработает для меня, есть ли другой способ сделать это?
Разрешения Amazon S3
Ответ 1
Существуют различные способы управления доступом к объектам S3:
-
Используйте строку запроса auth - но, как вы отметили, для этого требуется дата истечения срока действия. Вы могли бы сделать это далеко в будущем, что было достаточно хорошим для большинства вещей, которые я сделал.
-
Используйте S3 ACLS - но для этого требуется, чтобы пользователь имел учетную запись AWS и аутентифицировал AWS для доступа к объекту S3. Это, вероятно, не то, что вы ищете.
-
Вы проксируете доступ к объекту S3 через свое приложение, которое реализует вашу логику управления доступом. Это принесет вам всю пропускную способность.
-
Вы можете настроить экземпляр EC2 с помощью вашей прокси-логики - это позволяет использовать пропускную способность ближе к S3 и может уменьшить задержку в определенных ситуациях. Разница между этим и # 3 может быть минимальной, но зависит от вашей конкретной ситуации.
Ответ 2
- Удалите пользователя на сервер
- Установил ли сервер аутентификацию строки запроса с коротким сроком действия (минуты, часы?).
- Перенесите свой сервер на # 2
Ответ 3
Вам нужно будет построить всю логику доступа к S3 в ваших приложениях
Ответ 4
Я тоже общался с этим. Дон, который написал S3 PHP, который я использую, указал, что вы можете использовать dirs внутри ведер. Таким образом, вы можете поместить свой файл в каталог со случайной строкой, а затем перенаправить на него. mybucket.amazon.net/wef49kfe4j409jf4f4f9jdfd/myfile.zip Если вы вообще ничем не защищены, вы можете контролировать доступ к нему, изменяя разрешения или создавая и удаляя его (сохраняйте оригинал безопасно в другом ковше) по мере необходимости.