Ограничение доступа к веб-сайту AWS S3 только для пользователей, которые вошли в AWS

#amazon-web-services #amazon-s3

#amazon-веб-сервисы #amazon-s3

Вопрос:

Допустим, у меня есть простой веб-сайт управления, размещенный на s3, bucket не является общедоступным. URL-адрес выглядит примерноhttps://whatever.s3.eu-west-2.amazonaws.com/page.html По умолчанию, когда я открываю этот веб-сайт в браузере, мне отказывают в доступе — и это здорово, но поскольку я уже вошел в свою учетную запись aws, возможно ли получить доступ?

Комментарии:

1. Нет, нет никакой связи между консольным приложением AWS и вашим статически размещенным сайтом S3.

Ответ №1:

Не меняя доступ к корзине на общедоступный, вы можете использовать CloudFront CloudFront OAI, чтобы ограничить доступ к корзине только с помощью CloudFront.

А в CloudFront вы можете более легко устанавливать свои ограничения с помощью CloudFront WAF.

Комментарии:

1. Это не обеспечит желаемый доступ, который использует тот факт, что вы вошли в консоль AWS.

Ответ №2:

При доступе к Amazon S3 по «анонимному» URL (который не идентифицирует вас) невозможно контролировать, кто может видеть содержимое. В основном это общедоступный или частный.

Однако приложения могут генерировать предварительно подписанные URL-адреса Amazon S3, которые позволяют временно получать доступ к частным объектам, что отлично подходит для таких вещей, как предоставление доступа к личным фотографиям и документам (аналогично тому, как вы можете сгенерировать ссылку в системах типа Dropbox, чтобы получить доступ к личному файлу). Но … обычно это делается, когда внутреннее приложение генерирует страницы. Это не подходит при простой навигации по статическим страницам, обслуживаемым с Amazon S3.

Однако ни один из этих методов не может использовать «вход в консоль AWS» для управления доступом, поскольку для этого требуются файлы cookie, которые находятся в доменном пространстве консоли. Вам действительно нужен традиционный серверный сервер, который использует аутентификацию и файлы cookie для управления доступом.