aws-cloudfront-apiggateway - Konstrukte für AWS S-Lösungen

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

aws-cloudfront-apiggateway

Alle Klassen befinden sich in aktiver Entwicklung und unterliegen nicht abwärtskompatiblen Änderungen oder Entfernen in jeder zukünftigen Version. Diese unterliegen nicht denSemantic version (Semantic version)Modell. Dies bedeutet, dass Sie möglicherweise Ihren Quellcode aktualisieren müssen, wenn Sie ein Upgrade auf eine neuere Version dieses Pakets durchführen.

Hinweis: Um eine ordnungsgemäße Funktionalität sicherzustellen, müssen die AWS Solutions Constructs Pakete und AWS CDK-Pakete in Ihrem Projekt dieselbe Version aufweisen.

Sprache Paket
Python
aws_solutions_constructs.aws_cloudfront_apigateway
TypeScript
@aws-solutions-constructs/aws-cloudfront-apigateway
Java
software.amazon.awsconstructs.services.cloudfrontapigateway

Overview

Dieses AWS Solutions Construct implementiert eine Amazon CloudFront Distribution vor einer Amazon API Gateway REST-API.

Hier ist eine minimale bereitstellbare Musterdefinition in TypeScript:

import * as api from '@aws-cdk/aws-apigateway'; import * as lambda from "@aws-cdk/aws-lambda"; import { CloudFrontToApiGateway } from '@aws-solutions-constructs/aws-cloudfront-apigateway'; const lambdaProps: lambda.FunctionProps = { code: lambda.Code.fromAsset(`${__dirname}/lambda`), runtime: lambda.Runtime.NODEJS_12_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 });

Initializer

new CloudFrontToApiGateway(scope: Construct, id: string, props: CloudFrontToApiGatewayProps);

Parameter

Muster-Konstrukt

Name Typ Beschreibung
ExistingApigatewayobj api.RestApi Das regionale API Gateway, das mit dem CloudFront
CloudFrontDistributionProps? cloudfront.DistributionProps Optional vom Benutzer bereitgestellte Requisiten, um die Standard-Requisiten für die CloudFront Distribution zu überschreiben.
InsertHTTPSecurityHeader? boolean Optional vom Benutzer bereitgestellte Requisiten zum Ein- und Ausschalten der automatischen Einfügung von Best Practice-HTTP-Sicherheitsheadern in allen Antworten von CloudFront

Muster-Eigenschaften

Name Typ Beschreibung
Apigateway-Version api.RestApi Gibt eine Instanz der API Gateway REST-API zurück, die durch das Muster erstellt wurde.
CloudFrontLoggingBucket? s3.Bucket Gibt eine Instanz des Protokollierungsbuckets zurück, der durch das Muster für die CloudFront Webverteilung erstellt wurde.
CloudFrontWebDistribution cloudfront.CloudFrontWebDistribution Gibt eine Instanz der CloudFront Webverteilung zurück, die durch das Muster erstellt wurde.
EdgeLambdaFunctionVersion? lambda.Version Gibt eine Instanz der Lambda Kantenfunktionsversion zurück, die durch das Muster erstellt wurde.

Standardeinstellung

Die vorgefertigte Implementierung dieses Musters ohne Überschreibungen setzt die folgenden Standardwerte:

Amazon CloudFront

  • Konfigurieren der Zugriffsprotokollierung für CloudFront WebDistribution

  • Aktivieren Sie die automatische Einfügung von Best Practice-HTTP-Sicherheitsheadern in allen Antworten von CloudFront WebDistribution

Amazon API Gateway

  • Vom Benutzer bereitgestelltes API Gateway -Objekt wird unverändert verwendet

  • X-Ray blaufverfolgung aktivieren

Architecture

GitHub

Um den Code für dieses Muster anzuzeigen, erstellen/anzeigen Probleme und Pull-Anforderungen usw.:
@aws -solutions-constructs/aws-cloudfront-apiggateway