Skip to content

CDK constructs library that allows you to build AWS CloudFront Extensions in JavaScript, TypeScript or Python

License

Notifications You must be signed in to change notification settings

huiweiguozi/cdk-cloudfront-plus

 
 

Repository files navigation

NPM version PyPI version Release

cdk-cloudfront-plus

CDK constructs library that allows you to build AWS CloudFront Extensions in JavaScript, TypeScript or Python.

Sample

import * as cfplus from 'cdk-cloudfront-plus';

const app = new cdk.App();

const stack = new cdk.Stack(app, 'demo-stack');

// prepare the `modify resonse header` extension
const modifyRespHeader = new extensions.ModifyResponseHeader(stack, 'ModifyResp');

// prepare the `anti-hotlinking` extension
const antiHotlinking = new extensions.AntiHotlinking(stack, 'AntiHotlink', {
  referer: [
    'example.com',
    'exa?ple.*',
  ],
});

// create the cloudfront distribution with extension(s)
new Distribution(stack, 'dist', {
  defaultBehavior: {
    origin: new origins.HttpOrigin('aws.amazon.com'),
    edgeLambdas: [
      modifyRespHeader,
      antiHotlinking,
    ],
  },
});

Available Extensions in AWS CDK

Extension Name Category Solution ID Function/Folder Name Status Contributor
Access Origin by geolocation Origin Selection SO8118 cf-access-origin-by-geolocation Completed @pahud PR#52
Redirect by geolocation Origin Selection SO8135 cf-redirect-by-geolocation Completed @minche-tsai PR#50
Convert Query String Override Request SO8113 cf-convert-query-string Completed @HsiehShuJeng PR#53
OAuth2 Authentication Authentication SO8131 cf-authentication-by-oauth2 Completed @dwchiang PR#59
Cognito Redirect Authentication SO8132 cf-authentication-by-cognito-redirect WIP(BabooPan) -
Global Data Ingestion Logging SO8133 cf-global-data-ingestion Completed @titanjer PR#62
HTTP 302 from Origin URL Redirect SO8103 cf-http302-from-origin Completed @RicoToothless PR#71
Default Directory Index for Amazon S3 Origin URL Redirect SO8134 cf-default-dir-index Completed @guan840912 PR#21
Modify Response Header Header Rewrite SO8105 cf-modify-response-header Completed @pahud PR#45
Custom Error Page Header Rewrite SO8136 cf-custom-error-page Completed @BabooPan PR#46
Anti Hotlinking Security SO8126 cf-anti-hotlinking Completed @pahud PR#2
Add Security Headers Security SO8102 cf-add-security-headers Completed @pahud PR#7
Failover to alternative origin Origin Selection SO8120 cf-multiple-origin-ip-retry Completed @guan840912 PR#58
Normalize Query String Override Request SO8112 cf-normalize-query-string Completed @benkajaja PR#64

About

CDK constructs library that allows you to build AWS CloudFront Extensions in JavaScript, TypeScript or Python

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 94.5%
  • JavaScript 3.4%
  • Shell 2.1%