Я запустил пример приложения, которое использует Amazon S3 для размещения изображений. Мне удалось заставить его работать. Приложение размещено на github.com . Приложение позволяет создавать пользователей с фотографией профиля. Когда вы загружаете фотографию, веб-приложение сохраняет ее на Amazon S3 вместо локальной файловой системы. (Очень важно, если вы ведете на heroku.com )
Однако, когда я сделал «просмотр источника» в браузере страницы, я заметил, что URL-адрес картинки был URL-адресом Amazon S3 в корзине S3, которую я назначил приложению. Я вырезал и вставил URL-адрес и смог просмотреть изображение в том же браузере и в другом браузере, в котором у меня не было открытых сеансов для моего веб-приложения или Amazon S3.
Можно ли как-нибудь ограничить доступ к этому URL (и изображению), чтобы он был доступен только для браузеров, которые вошли в мои приложения?
Большая часть информации, которую я нашел о списках ACL Amazon, говорит только о доступе только для владельца или групп пользователей, аутентифицированных с помощью Amazon или AmazonS3, или для всех анонимно.
РЕДАКТИРОВАТЬ ---- ОБНОВЛЕНИЕ 7 июля 2010
У Amazon есть только что анонсированный больше способов ограничить доступ к S3-объектам и корзинам. Помимо прочего, теперь вы можете ограничить доступ к объекту S3, указав ссылку HTTP. Это выглядит интересно ... Я не могу ждать, пока они обновят свои документы разработчика.