Как клиент должен загрузить ресурс с AWS S3

Я новичок в AWS S3 - использую EC2 (веб-приложение для хостинга) и S3 (хранилище ресурсов) в одном регионе AWS и назначил EC2 с ролью IAM s3accessТаким образом, EC2 можно легко скачать с S3.

Вопрос в том, как клиент должен скачать с S3? Видимо клиент не имеет IAM role или же Access Key как EC2 делает. Кажется, у клиента есть только signedDownloadUrl создано aws-sdk, но для этого также требуется ключ доступа.

Итак, должен ли я сделать хранилище общедоступным, чтобы любой клиент мог его загрузить, или я должен найти какой-то подход для предоставления клиенту учетных данных?

1 ответ

Решение

Все объекты по умолчанию являются частными. Только владелец объекта имеет разрешение на доступ к этим объектам.

Так что если вы хотите поделиться объектом с кем-то, вы можете

  1. Вы можете сделать это публичным или
  2. Вы, владелец объекта, можете делиться объектами с другими, создав предварительно подписанный URL-адрес, используя свои собственные учетные данные безопасности, чтобы предоставить ограниченное по времени разрешение на загрузку объектов.

Для получения дополнительной информации о предварительно подписанных URL-адресах см. S3 Share Objects с PreSignedURL.

Другие вопросы по тегам