Research
Security News
Malicious npm Package Targets Solana Developers and Hijacks Funds
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
@aws-solutions-constructs/aws-cloudfront-apigateway
Advanced tools
CDK Constructs for AWS Cloudfront to AWS API Gateway integration.
Reference Documentation: | https://docs.aws.amazon.com/solutions/latest/constructs/ |
---|
Language | Package |
---|---|
Python | aws_solutions_constructs.aws_cloudfront_apigateway |
Typescript | @aws-solutions-constructs/aws-cloudfront-apigateway |
Java | software.amazon.awsconstructs.services.cloudfrontapigateway |
This AWS Solutions Construct implements an AWS CloudFront fronting an Amazon API Gateway REST API.
Here is a minimal deployable pattern definition:
Typescript
import { Construct } from 'constructs';
import { Stack, StackProps } from 'aws-cdk-lib';
import { CloudFrontToApiGateway } from '@aws-solutions-constructs/aws-cloudfront-apigateway';
import * as lambda from 'aws-cdk-lib/aws-lambda';
import * as api from 'aws-cdk-lib/aws-apigateway';
const lambdaProps: lambda.FunctionProps = {
code: lambda.Code.fromAsset(`lambda`),
runtime: lambda.Runtime.NODEJS_14_X,
handler: 'index.handler'
};
const lambdafunction = new lambda.Function(this, 'LambdaFunction', lambdaProps);
const apiGatewayProps: api.LambdaRestApiProps = {
handler: lambdafunction,
endpointConfiguration: {
types: [api.EndpointType.REGIONAL]
},
defaultMethodOptions: {
authorizationType: api.AuthorizationType.NONE
}
};
const apiGateway = new api.LambdaRestApi(this, 'LambdaRestApi', apiGatewayProps);
new CloudFrontToApiGateway(this, 'test-cloudfront-apigateway', {
existingApiGatewayObj: apiGateway
});
Python
from aws_solutions_constructs.aws_cloudfront_apigateway import CloudFrontToApiGateway
from aws_cdk import (
aws_lambda as _lambda,
aws_apigateway as api,
Stack
)
from constructs import Construct
lambda_function = _lambda.Function(self, 'LambdaFunction',
code=_lambda.Code.from_asset(
'lambda'),
runtime=_lambda.Runtime.PYTHON_3_9,
handler='index.handler')
api_gateway = api.LambdaRestApi(self, 'LambdaRestApi',
handler=lambda_function,
endpoint_configuration=api.EndpointConfiguration(
types=[api.EndpointType.REGIONAL]
),
default_method_options=api.MethodOptions(
authorization_type=api.AuthorizationType.NONE
))
CloudFrontToApiGateway(self, 'test-cloudfront-apigateway',
existing_api_gateway_obj=api_gateway
)
Java
import software.constructs.Construct;
import java.util.List;
import software.amazon.awscdk.Stack;
import software.amazon.awscdk.StackProps;
import software.amazon.awscdk.services.lambda.*;
import software.amazon.awscdk.services.lambda.Runtime;
import software.amazon.awscdk.services.apigateway.*;
import software.amazon.awsconstructs.services.cloudfrontapigateway.*;
final Function lambdaFunction = Function.Builder.create(this, "IndexHandler")
.runtime(Runtime.NODEJS_14_X)
.code(Code.fromAsset("lambda"))
.handler("index.handler")
.build();
final LambdaRestApi apiGateway = LambdaRestApi.Builder.create(this, "myapi")
.handler(lambdaFunction)
.endpointConfiguration(new EndpointConfiguration.Builder()
.types(List.of(EndpointType.REGIONAL))
.build())
.build();
new CloudFrontToApiGateway(this, "test-cloudfront-apigateway", new CloudFrontToApiGatewayProps.Builder()
.existingApiGatewayObj(apiGateway)
.build());
Name | Type | Description |
---|---|---|
existingApiGatewayObj | api.RestApi | The regional API Gateway that will be fronted with the CloudFront |
cloudFrontDistributionProps? | cloudfront.DistributionProps | any | Optional user provided props to override the default props for CloudFront Distribution |
insertHttpSecurityHeaders? | boolean | Optional user provided props to turn on/off the automatic injection of best practice HTTP security headers in all responses from CloudFront |
cloudFrontLoggingBucketProps? | s3.BucketProps | Optional user provided props to override the default props for the CloudFront Logging Bucket. |
Name | Type | Description |
---|---|---|
cloudFrontWebDistribution | cloudfront.Distribution | Returns an instance of cloudfront.Distribution created by the construct |
apiGateway | api.RestApi | Returns an instance of the API Gateway REST API created by the pattern. |
cloudFrontFunction? | cloudfront.Function | Returns an instance of the Cloudfront function created by the pattern. |
cloudFrontLoggingBucket | s3.Bucket | Returns an instance of the logging bucket for CloudFront Distribution. |
Out of the box implementation of the Construct without any override will set the following defaults:
© Copyright 2022 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2.14.0 (2022-08-09)
FAQs
CDK Constructs for AWS Cloudfront to AWS API Gateway integration.
We found that @aws-solutions-constructs/aws-cloudfront-apigateway demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
Security News
Research
Socket researchers have discovered malicious npm packages targeting crypto developers, stealing credentials and wallet data using spyware delivered through typosquats of popular cryptographic libraries.
Security News
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.