CloudFront Extensions GitHub project offers an open source package consisting of a set of applications and solution templates that covers various user scenarios for using Lambda@Edge and Amazon CloudFront.
Deploying CloudFront Extensions solution with the default parameters builds the following environment in the AWS Cloud.
- Amazon CloudFront distributes the solution frontend web UI assets hosted in Amazon S3 bucket.
- Amazon Cognito user pool provides authentication for backend.
- Amazon AppSync provides the backend GraphQL APIs.
- Amazon API Gateway provides the backend RESTful APIs for SSL certificates and Monitoring features.
- Amazon DynamoDB stores the solution related information as backend database.
- Amazon Lambda interacts with other Amazon Services to process core logic of monitoring, SSL certificates and extensions repository, and obtains information updated in DynamoDB tables.
- AWS Step Functions orchestrate workflows for creating ACM certificates, importing existed certificates and creating CloudFront distributions.
- Extensions are shown in Extensions repository. AWS CloudFormation and AWS Serverless Application Repository will be triggered if you want to deploy an extension into your AWS account.
- AWS Lambda stores CloudFront configuration changes into S3 bucket, and you can view the difference between two CloudFront configuration versions and apply the configuration.
- Amazon Athena queries CloudFront standard logs or real-time logs to get CloudFront metrics and output it by API Gateway. You can also view the metrics by monitoring dashboard.
To get started, please find more details at: https://awslabs.github.io/aws-cloudfront-extensions/
For workshop, please refer to https://awslabs.github.io/aws-cloudfront-extensions/workshop/
See CONTRIBUTING for more information.
This project is licensed under the Apache-2.0 License.