web-dev-qa-db-fra.com

https sur S3 SANS cloudfront possible?

Nous souhaitons actuellement commencer à héberger tous nos actifs via AWS S3 et nous voulons également que tout le serveur soit acheminé via https. Je comprends que je peux utiliser Amazon Certificate Manager (ACM) avec Cloudfront pour les actifs de serveur via https. Le problème est que nous sommes dans le secteur médical et que nous sommes légalement interdits d’héberger quoi que ce soit en dehors de l’UE. Avec S3, je peux choisir un emplacement (Francfort pour nous), mais avec Cloudfront, je viens d’obtenir cette option:

 enter image description here

J'ai donc pensé que je pourrais peut-être utiliser Letsencrypt pour générer mes propres certificats. Mais je pense que j’ai encore besoin d’utiliser ACM, qui ne fonctionne qu’avec Cloudfront, ce qui signifie que je ne peux toujours pas l’utiliser.

Est-ce que quelqu'un sait si je peux en quelque sorte installer S3 avec https mais sans cloudfront?

18
kramer65

Malheureusement, vous ne pouvez pas utiliser de certificat SSL avec votre domaine personnalisé avec S3. Vous pouvez utiliser le domaine S3 avec le certificat Amazon SSL tel que: https://my-example-bucket.s3-website-us-east-1.amazonaws.com.

Si vous souhaitez utiliser un domaine personnalisé avec SSL et que vous ne pouvez pas utiliser CloudFront, vous devrez alors envisager de placer un autre proxy devant S3, comme votre propre serveur Nginx ou quelque chose du genre.

12
Mark B

Dans AWS API Gateway , vous pouvez créer une ressource proxy/{proxy+} qui mappe sur s3-website.

Assurez-vous de ne pas mapper uniquement sur s3, mais sur s3-website, afin que vous obteniez PATH/TO/DIR/index.html renvoyé pour PATH/TO/DIR et éventuellement que tout le reste fonctionne comme vous le souhaitez.

La passerelle API est servie via HTTPS, éventuellement sous votre propre domaine.

Cependant, ce n'est pas une très bonne option, car vous devez ajouter manuellement tous les codes de retour HTTP autorisés, et il y a une limite de charge utile de 10 Mo dans une demande, car ce service vise les API REST.

1
atablash

CloudFront a une fonctionnalité pour les pays en liste blanche/noire. J'essaierais d'utiliser l'une des 3 options CDN que vous avez énumérées, ainsi qu'une liste blanche des pays de l'UE. Je ne sais pas quel est le moyen le plus simple de vérifier que d’autres pays (par exemple les États-Unis) sont refusés.

0
ross

Vous trouverez ci-dessous un calendrier de ressources utile. S3 et CloudFront sont disponibles dans l’UE. Vous pouvez certainement présenter S3 via CloudFront. 

Je comprends les exigences d'accueillir dans une limite territoriale. Les exigences pour cela que vous obtiendrez avec S3 dans la région de l’UE. CloudFront n'est pas un service d'hébergement, c'est un CDN (réseau de distribution de contenu) utilisant des lignes louées hautes performances et une mise en cache des points finaux gérables. La question que vous regardez est les options de prix, pas le lieu d'hébergement. Si vous souhaitez diffuser du contenu dans l'Union européenne, vous souhaitez une "classe de prix 100" ou une "classe de prix tout".

Lorsque vous utilisez CloudFront, vous pouvez contrôler à la fois les plages d'adresses IP qui peuvent accéder à votre matériel et le chiffrement du trafic frontal et principal. Découvrez quelques-uns des modèles de conception

Il existe d'excellents livres blancs et modèles de conception pour la configuration sécurisée de CloudFront. Je pense que vous constaterez que vous pouvez faire ce que vous voulez et bien respecter les exigences légales. 

http://docs.aws.Amazon.com/general/latest/gr/rande.html#s3_regionhttps://aws.Amazon.com/compliance/eu-data-protection/

Consultez également AWS doco 'using-https-cloudfront-to-s3-Origin' et 'custom-ssl-domains'

P.S. Assurez-vous que les autorisations de compartiment ne sont disponibles que via le canal CloudFront. 

RL

0
Polymath