Я экспериментировал с S3, и у них есть эта классная функция, где вы можете установить ACL на содержимое ведра с помощью политики ведра. Так, например, у вас может быть множество файлов с фактическим ACL в файле, установленном в приватный, но файл становится доступным для определенных пользователей/IP-адресов/рефереров через переопределяющую политику.Настройка владельца объектов в ведре S3
В моем случае у меня есть куча личного контента в ведре, но я хочу сделать файлы в определенном каталоге доступными для моего сайта (например, изображения). Итак, у меня есть что-то вроде этого:
{
"Version": "2008-10-17",
"Id": "",
"Statement": [
{
"Sid": "AddPerm",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::content-racket-fm/uploaded/images/*"
}
]
}
Теперь у нас есть некоторый фон, который я могу решить. Я недавно узнал здесь:
https://forums.aws.amazon.com/thread.jspa?threadID=78294
, что политика ковшеобразной работает только для файлов, которые принадлежащих от владельца ведра. Например, если файлы попали в ведро через некоторую внешнюю службу, например encoding.com или panda stream, где у них есть собственный пользователь в вашем ведре S3, у вас будут проблемы, потому что ваша политика ведра не будет применяться к эти файлы (кажется, что я считаю недосмотр амазонки, но я уверен, что есть веская причина, о которой я не думал)
Я использую рельсы, есть способ установить владельца объекта в ведро.
Редактировать
Я думаю, лучше вопрос может быть ...
Есть ли способ настроить амазонка ведра так относится ведро политика ко всем файлам, независимо от владельца.