Я экспериментировал с S3, и у них есть эта классная функция, где вы можете установить ACL для содержимого корзины с помощью политики корзины. Так, например, у вас может быть куча файлов с фактическим ACL для файла, установленного как частный, но файл становится доступным для определенных пользователей / IP-адресов / источников перехода через политику переопределения.
В моем случае у меня есть куча личного контента в корзине, но я хочу сделать файлы в определенном каталоге доступными для моего сайта (например, изображения). У меня есть что-то вроде этого:
{
"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, где у них есть собственный пользователь в вашем ведре S3, у вас возникнут проблемы, потому что ваша политика корзины не будет применяться к эти файлы (на мой взгляд, это похоже на недосмотр со стороны Amazon, но я уверен, что есть веская причина, о которой я не подумал)
Я использую рельсы, есть ли способ установить владельца объекта в ведро.
Править
Думаю, лучше спросить ...
Есть ли способ настроить ведро Amazon, чтобы оно применяло политику корзины ко всем файлам независимо от владельца.