Al alojar un sitio con AWS S3 y CloudFront, es posible restringir el acceso al contenido que sirve desde los depósitos de Amazon S3 .
Quiero restringir el acceso a los activos en S3 a mi aplicación Amplify (CDN).
¿Es posible lograr la misma restricción con AWS Amplify? Después de implementar mi aplicación AWS Amplify, no veo una distribución de CloudFront. La documentación indica: "La consola de AWS Amplify aprovecha la red perimetral global de Amazon CloudFront para distribuir su aplicación web globalmente" ( preguntas frecuentes, alojamiento ).
Al investigar cómo restringir el acceso a S3 a CloudFront mediante Origin Access Identity para una aplicación Amplify, me di cuenta de una diferencia importante en los dos enfoques para alojar una aplicación Amplify :
En el pasado, solo usaba Amplify Console paraasociar un dominio personalizado a mi aplicación. No entendía por qué no podía encontrar la distribución de CloudFront a la que se refería en las preguntas frecuentes sobre alojamiento de consola de Amplify .
Aprendí que después de agregar un dominio personalizado administrado de Route 53 a mi aplicación Amplify a través de la consola Amplify, se creó automáticamente una distribución de CloudFront administrada por AWS . Esta distribución de CloudFront no está visible en su cuenta y usted no puede administrarla directamente. Lo noté por primera vez cuando vi que el registro de Alias en Route53 apuntaba a una distribución de CloudFront que no está en mi cuenta después de agregar el dominio personalizado.
Parece que una vez que agregó un dominio personalizado a través de la consola de Amplify, y luego agregar alojamiento con la CLI de Amplify no invalidará la distribución de CloudFront administrada por AWS
No he encontrado ninguna guía en la documentación sobre qué estrategia de alojamiento es mejor. Supongo que una de las ventajas de usar el dominio personalizado de Amplify podría ser que la distribución de CloudFront administrada por AWS se crea utilizando la configuración óptima para su aplicación. De esta manera, también significa que Amplify se ocupa de manera eficiente de las invalidaciones de caché.