web-dev-qa-db-fra.com

Comment configurer SSL pour le compartiment Amazon S3

J'utilise un compartiment Amazon S3 pour le téléchargement de données à l'aide de mon application .NET. Maintenant, ma question est la suivante: je souhaite accéder à mon compartiment S3 à l'aide de SSL. Est-il possible d'implémenter SSL pour un compartiment Amazon s3?

Merci d'avance.

124
Syam kumar

Vous pouvez accéder à vos fichiers via SSL comme ceci:

https://s3.amazonaws.com/bucket_name/images/logo.gif

Si vous utilisez un domaine personnalisé pour votre compartiment, vous pouvez utiliser S3 et CloudFront avec votre propre certificat SSL (ou en générer un gratuitement via Amazon Certificate Manager): http://aws.Amazon.com/cloudfront/custom- domaines-ssl/

137
reach4thelasers

Des certificats SSL de domaine personnalisés viennent d'être ajoutés aujourd'hui pour 600 $/cert/mois. Inscrivez-vous pour votre invitation ci-dessous: http://aws.Amazon.com/cloudfront/custom-ssl-domains/

Mise à jour: les certificats fournis par le client SNI sont désormais disponibles sans frais supplémentaires. Beaucoup moins cher que 600 $/mois, et avec XP presque tué, cela devrait bien fonctionner dans la plupart des cas d'utilisation.

@skalee AWS dispose d'un mécanisme permettant de répondre aux demandes du poster, à savoir "implémenter SSL pour un compartiment Amazon s3", appelé CloudFront. Je lis "implémenter" comme "utiliser mes certificats SSL", "pas", mettez simplement un S sur l'URL HTTP que je suis sûr que l'OP aurait pu supposer.

Puisque CloudFront coûte exactement le même prix que S3 (0,12 USD/Go), mais dispose de nombreuses fonctionnalités supplémentaires autour de SSL ET vous permet d'ajouter votre propre certificat SNI sans coût supplémentaire, c'est la solution évidente pour "implémenter SSL" sur votre domaine.

27
Joseph Lust

J'ai trouvé que vous pouviez le faire facilement via le service Cloud Flare. 

Configurez un seau, activez l'hébergement Web sur le seau et dirigez le CNAME souhaité vers ce terminal via Cloudflare ... et payez pour le service bien sûr ... mais 5 $ à 20 $ contre 600 $ est beaucoup plus facile à supporter.

Détails complets ici: https://www.engaging.io/easy-way-to-configure-ssl-for-Amazon-s3-bucket-via-cloudflare/

10
Ralph Vugts

Si vous en avez vraiment besoin, considérez les redirections.

Par exemple, à la demande de assets.my-domain.example.com/path/to/file, vous pouvez effectuer une redirection 301 ou 302 vers my-bucket-name.s3.amazonaws.com/path/to/file ou s3.amazonaws.com/my-bucket-name/path/to/file (n'oubliez pas que dans le premier cas, my-bucket-name ne peut contenir aucun point, sinon il ne correspondra pas à *.s3.amazonaws.com, s3.amazonaws.com indiqué dans le certificat S3).

Non testé, mais je crois que cela fonctionnerait. Je vois peu de pièges, cependant.

La première est assez évidente, une demande supplémentaire pour obtenir cette redirection. Et je doute que vous puissiez utiliser le serveur de redirection fourni par votre registraire de noms de domaine (vous devez télécharger le certificat approprié à cet endroit), de sorte que vous devez utiliser votre propre serveur pour cela.

La seconde est que vous pouvez avoir des URL avec votre nom de domaine dans le code source de la page, mais lorsque, par exemple, l'utilisateur ouvre la photo dans un onglet séparé, la barre d'adresse affiche l'URL cible.

4
skalee

Ce n'est pas possible directement avec S3, mais vous pouvez créer une distribution Cloud Front à partir de votre compartiment. Ensuite, accédez au gestionnaire de certificats et demandez un certificat. Amazon leur donne gratuitement. Si vous avez bien validé la certification, assignez-la à votre distribution Cloud Front. Pensez également à définir la règle pour rediriger http vers https. 

J'héberge quelques sites Web statiques sur Amazon S3, tels que mon site Web personnel: Développeur auquel j'ai attribué le certificat SSL car ils ont la distribution Cloud Front.

3
Mika Kujapelto

Comme mentionné précédemment, vous ne pouvez pas créer de certificats gratuits pour les compartiments S3. Cependant, vous pouvez créer une distribution Cloud Front, puis affecter le certificat pour Cloud Front. Vous demandez le certificat pour votre domaine, puis vous l'attribuez simplement à la distribution Cloud Front dans les paramètres Cloud Front. J'ai utilisé cette méthode pour servir des sites Web statiques via SSL tels que https://laina-apu.fi/ ainsi que pour servir des fichiers statiques tels que https://casino-professor.com/en/ (regardez où les images sont servies. À partir d'un sous-domaine)

Pour la création de sites Web statiques, Amazon est l'endroit idéal. Il est vraiment abordable d’obtenir un site Web statique avec SSL. 

0
Mika Kujapelto