aws-s3-lambda - 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-s3-lambda

Alle Klassen befinden sich in aktiver Entwicklung und unterliegen nicht abwärtskompatiblen Änderungen oder Entfernen in jeder zukünftigen Version. Diese unterliegen nicht derSemantische VersionierungModell. Dies bedeutet, dass Sie möglicherweise Ihren Quellcode aktualisieren müssen, wenn Sie auf eine neuere Version dieses Pakets aktualisieren.

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_s3_lambda
Typoskript
@aws-solutions-constructs/aws-s3-lambda
Java
software.amazon.awsconstructs.services.s3lambda

Overview

Dieses AWS Solutions Construct implementiert einen Amazon S3 Bucket, der mit einer AWS Lambda Funktion verbunden ist.

Hier ist eine minimale bereitstellbare Musterdefinition in TypeScript:

import { S3ToLambdaProps, S3ToLambda } from '@aws-solutions-constructs/aws-s3-lambda'; new S3ToLambda(this, 'test-s3-lambda', { lambdaFunctionProps: { runtime: lambda.Runtime.NODEJS_14_X, // This assumes a handler function in lib/lambda/index.js code: lambda.Code.fromAsset(`${__dirname}/lambda`), handler: 'index.handler' }, });

Initializer

new S3ToLambda(scope: Construct, id: string, props: S3ToLambdaProps);

Parameter

Muster-Konstrukt

Name Typ Beschreibung
Gibt es LambdaObj? lambda.Function Vorhandene Instanz des Lambda Function-Objekts, die sowohl diese als auchlambdaFunctionPropsführt zu einem -Fehler.
LambdaFunctionProps? lambda.FunctionProps Optionale vom Benutzer bereitgestellte Eigenschaften, um die Standardeigenschaften für die Lambda Funktion zu überschreiben. Wird ignoriert, wenn einexistingLambdaObjwird bereitgestellt.
Bestehend BuckeObj? s3.Bucket Vorhandene Instanz des S3 Bucket-Objekts. Wenn dies vorgesehen ist, dann wird auch die Bereitstellung vonbucketPropsist ein Fehler.
BucketProps? s3.BucketProps Optionale vom Benutzer bereitgestellte Eigenschaften, um die Standardeigenschaften für den Bucket zu überschreiben. Wird ignoriert, wenn einexistingBucketObjwird bereitgestellt.
S3EventSourceProps? S3EventSourceProps Optional vom Benutzer bereitgestellte Requisiten zum Überschreiben der Standard-Requisiten für S3EventSourceProps

Muster-Eigenschaften

Name Typ Beschreibung
LambdaFunction lambda.Function Gibt eine Instanz der Lambda Funktion zurück, die durch das Muster erstellt wurde.
S3-Bucket? s3.Bucket Gibt eine Instanz des S3-Buckets zurück, der durch das Muster erstellt wurde.
s3loggingBucket? s3.Bucket Gibt eine Instanz des Protokollierungsbuckets zurück, der durch das Muster für den S3-Bucket erstellt wurde.

Standardeinstellung

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

Amazon S3 Bucket

  • Konfigurieren Sie die Zugriffsprotokollierung für S3 Bucket.

  • Aktivieren Sie die serverseitige Verschlüsselung für S3 Bucket mit AWS verwaltetem KMS-Schlüssel.

  • Aktivieren Sie die Versionierung für S3 Bucket.

  • Erlauben Sie keinen öffentlichen Zugriff für S3 Bucket.

  • Behalten Sie den S3-Bucket beim Löschen des CloudFormation-Stacks bei.

  • Erzwingen der Verschlüsselung von Daten während der Übertragung

  • Wendet die Lebenszyklusregel an, um nicht aktuelle Objektversionen nach 90 Tagen in den Glacier-Speicher zu verschieben.

AWS Lambda-Funktion

  • Konfigurieren Sie die IAM-Rolle für den eingeschränkten Zugriffsberechtigungen für Lambda Funktion.

  • Aktivieren Sie die Wiederverwendung von Verbindungen mit Keep-Alive für NodeJS Lambda Funktion.

  • Aktivieren der X-Ray Nachverfolgung

  • Festlegen von Umgebungsvariablen:

    • AWS_NODEJS_CONNECTION_REUSE_ENABLED(für Node 10.x und höhere Funktionen)

Architecture

GitHub

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