Я использую ведро Amazon S3 для загрузки и выгрузки данных с помощью моего приложения .NET. Теперь мой вопрос: я хочу получить доступ к своей корзине S3, используя SSL. Возможно ли реализовать SSL для корзины Amazon s3?
Я использую ведро Amazon S3 для загрузки и выгрузки данных с помощью моего приложения .NET. Теперь мой вопрос: я хочу получить доступ к своей корзине S3, используя SSL. Возможно ли реализовать SSL для корзины Amazon s3?
Ответы:
Вы можете получить доступ к своим файлам через SSL следующим образом:
https://s3.amazonaws.com/bucket_name/images/logo.gif
Если вы используете собственный домен для своей корзины, вы можете использовать S3 и CloudFront вместе со своим собственным сертификатом SSL (или создать бесплатный с помощью диспетчера сертификатов Amazon): http://aws.amazon.com/cloudfront/custom-ssl- домены /
us-west-2
так, имя хоста на самом деле в s3-us-west-2.amazonaws.com
противном случае вы получите ошибку.
Сертификаты SSL для пользовательских доменов были добавлены сегодня за 600 долларов США / сертификат / месяц. Подпишитесь на ваше приглашение ниже: http://aws.amazon.com/cloudfront/custom-ssl-domains/
Обновление : сертификаты SNI, предоставляемые клиентом , теперь доступны без дополнительной оплаты. Гораздо дешевле, чем $ 600 / мес, и с XP почти убил, это должно работать хорошо для большинства случаев использования.
@skalee AWS имеет механизм для достижения того, о чем просит автор: «внедрить SSL для корзины Amazon s3», он называется CloudFront
. Я читаю «внедрить» как «использовать мои сертификаты SSL», а не «просто» поставить S на URL-адресе HTTP, который, я уверен, ОП мог бы предположить.
Поскольку CloudFront стоит точно так же, как S3 ($ 0,12 / ГБ), но имеет массу дополнительных функций, связанных с SSL, и позволяет добавлять собственный сертификат SNI без дополнительных затрат, это очевидное решение для «внедрения SSL» в вашем домене.
Я обнаружил, что вы можете легко сделать это через сервис Cloud Flare.
Установите ведро, включите веб-хостинг на нем и укажите нужный CNAME на эту конечную точку с помощью Cloudflare ... и, конечно, заплатите за обслуживание ... но 5 - 20 долларов США против 600 долларов - намного проще для желудка.
Полная информация здесь: https://www.engaging.io/easy-way-to-configure-ssl-for-amazon-s3-bucket-via-cloudflare/
Если вам это действительно нужно, подумайте о перенаправлениях.
Например, по запросу assets.my-domain.example.com/path/to/file
вы можете выполнить перенаправление 301 или 302 на my-bucket-name.s3.amazonaws.com/path/to/file
или s3.amazonaws.com/my-bucket-name/path/to/file
(пожалуйста, помните, что в первом случае my-bucket-name
не может быть никаких точек, иначе это не будет соответствовать *.s3.amazonaws.com, s3.amazonaws.com
указанному в сертификате S3).
Не проверено, но я верю, что это сработает. Однако я вижу несколько ошибок.
Первый довольно очевидный, дополнительный запрос, чтобы получить это перенаправление. И я сомневаюсь, что вы могли бы использовать сервер перенаправления, предоставляемый вашим регистратором доменных имен - вам нужно было как-то загрузить туда соответствующий сертификат - поэтому вы должны использовать для этого свой собственный сервер.
Во-вторых, у вас могут быть URL-адреса с вашим доменным именем в исходном коде страницы, но когда, например, пользователь открывает рис в отдельной вкладке, то в адресной строке отобразится целевой URL-адрес.
С S3 это невозможно сделать напрямую, но вы можете создать дистрибутив Cloud Front из своего ведра. Затем перейдите к диспетчеру сертификатов и запросите сертификат. Амазонка дает их бесплатно. Если вы успешно подтвердили сертификацию, назначьте ее в свой дистрибутив Cloud Front. Также не забудьте установить правило перенаправления http на https.
Я размещаю несколько статических веб-сайтов на Amazon S3, например, мой личный веб-сайт, которому я назначил сертификат SSL, поскольку они имеют дистрибутив Cloud Front.
Как упоминалось ранее, вы не можете создавать бесплатные сертификаты для блоков S3. Однако вы можете создать дистрибутив Cloud Front, а затем назначить сертификат для Cloud Front. Вы запрашиваете сертификат для своего домена, а затем просто назначаете его для распространения Cloud Front в настройках Cloud Front. Я использовал этот метод для обслуживания статических веб-сайтов через SSL, а также для обслуживания статических файлов.
Для статического создания веб-сайтов Amazon - идеальное место. Получить статический сайт с SSL действительно возможно.