Ответ 1
По умолчанию все объекты в Amazon S3 являются закрытыми. Затем объекты могут быть сделаны "общедоступными" путем добавления разрешений через один из:
- Список контроля доступа к объектам (ACL): Установка разрешения непосредственно на объект
- Политика Bucket:. Относится к ведро, может определять правила, относящиеся к подкаталогам, имени ключа (именам файлов), времени суток, IP-адресу и т.д.
- Политика IAM: относится к определенным пользователям или группам
Пока один из этих способов предоставляет доступ, человек сможет получить доступ к объекту. Также возможно назначить разрешения Deny
, которые переопределяют Разрешить разрешения.
Когда к объекту обращаются через не прошедший аутентификацию URL (например, s3.amazonaws.com/bucket-name/object-key
), указанные выше правила определяют доступ. Тем не менее, даже файлы "private" могут быть доступны, если вы аутентифицируете службу, например, вызываете S3 API с учетными данными пользователя или используете предварительно подписанный URL.
Чтобы узнать, как это работает, щелкните личный файл в консоли управления Amazon S3 и выберите Открыть в меню "Действия". Объект будет открыт. Это делается путем предоставления браузеру предварительно подписанного URL-адреса, который включает URL-адрес с криптографическим размером и срок действия. URL будет работать, чтобы получить частный файл только до определенного времени.
Итак, чтобы ответить на ваш вопрос, вы все равно можете получить доступ к приватным файлам через:
- Команда Open в консоли
- Предварительно подписанные URL-адреса в веб-браузере
- Аутентифицированные API-вызовы
Просто будьте осторожны, чтобы вы не определяли правила DENY, которые перекрывают даже вашу способность доступа к файлам. Это проще просто ПОЗВОЛЯТЬ каталоги, которые вы хотите публиковать.