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

Two labels: "STABILITY" in gray and "EXPERIMENTAL" in orange.

Alle Klassen befinden sich in aktiver Entwicklung und unterliegen nicht abwärtskompatiblen Änderungen oder Entfernen in jeder zukünftigen Version. Diese unterliegen nicht denSemantische VersionierungModell. 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_s3_sqs
TypoScript
@aws-solutions-constructs/aws-s3-sqs
Java
software.amazon.awsconstructs.services.s3sqs

Overview

Dieses AWS Solutions Construct implementiert einen Amazon S3 Bucket, der so konfiguriert ist, dass Benachrichtigungen an eine Amazon SQS Warteschlange gesendet werden.

Hier ist eine minimale bereitstellbare Musterdefinition in TypeScript:

import { S3ToSqs } from "@aws-solutions-constructs/aws-s3-sqs"; new S3ToSqs(stack, 'S3ToSQSPattern', {});

Initializer

new S3ToSqs(scope: Construct, id: string, props: S3ToSqsProps);

Parameter

Muster-Konstrukt Requisiten

Name Typ Beschreibung
Bestehend BuckeObj? s3.Bucket Vorhandene Instanz des S3 Bucket-Objekts Wenn dies zur Verfügung gestellt wird, dann wird auchbucketPropsist ein Fehler.
BucketProps? s3.BucketProps Optionale, vom Benutzer bereitgestellte Requisiten zum Überschreiben der Standard-Requisiten für den S3-Bucket.
s3EventTypes? s3.EventType[] Die S3-Ereignistypen, die die Benachrichtigung auslösen. Standardeinstellung: s3.EventType.OBJECT_CREATED.
s3EventFilters? s3.NotificationKeyFilter[] Die S3-Objektschlüsselfilterregeln bestimmen, welche Objekte dieses Ereignis auslösen. Wenn nicht angegeben, werden keine Filterregeln angewendet.
BestehenQueueObj? sqs.Queue Eine optionale, vorhandene SQS-Warteschlange, die anstelle der Standardwarteschlange verwendet werden soll. Bereitstellung sowohl dieser als auchqueuePropsführt zu einem -Fehler. Wenn die SQS-Warteschlange verschlüsselt ist, muss der für die Verschlüsselung verwendete KMS-Schlüssel ein vom Kunden verwaltetes CMK sein.
QueueProps? sqs.QueueProps Optionale vom Benutzer bereitgestellte Eigenschaften, um die Standardeigenschaften für die SQS-Warteschlange zu überschreiben. Wird ignoriert, wenn einexistingQueueObjwird bereitgestellt.
DeadLetterQueueProps? sqs.QueueProps Optionale, vom Benutzer bereitgestellte Requisiten zum Überschreiben der Standardrequisiten für die Warteschlange für tote Buchstaben. Wird nur verwendet, wenn diedeployDeadLetterQueue-Eigenschaft auf true festgelegt.
DeployDeadletterQueue? boolean Erstellen Sie eine sekundäre Warteschlange, die als Warteschlange für unzustellbare Nachrichten dient. Standardeinstellung: true.
MaxReceiveCount? number Die Anzahl, wie oft eine Nachricht nicht erfolgreich entfernt werden kann, bevor sie in die Warteschlange für unzustellbare Nachrichten verschoben wird. Standardeinstellung: 15.
EnableEncryptionWithCustomerManagedKey? boolean Gibt an, ob ein KMS-Schlüssel verwendet werden soll, der entweder von dieser CDK-App verwaltet oder importiert wird. Beim Importieren eines Verschlüsselungsschlüssels muss dieser in derencryptionKey-Eigenschaft für dieses Konstrukt.
encryptionKey? kms.Key Ein optionaler, vorhandener Verschlüsselungsschlüssel, der anstelle des Standard-Verschlüsselungsschlüssels verwendet werden soll.
EncryptionKeyProps? kms.KeyProps Optionale vom Benutzer bereitgestellte Eigenschaften, um die Standardeigenschaften für den Verschlüsselungsschlüssel zu überschreiben.

Muster-Eigenschaften

Name Typ Beschreibung
SQSQueue sqs.Queue Gibt eine Instanz der SQS-Warteschlange zurück, die durch das Muster erstellt wurde.
DeadLetterQueue? sqs.Queue Gibt eine Instanz der Warteschlange für toten Buchstaben zurück, die durch das Muster erstellt wurde, wenn eine bereitgestellt wird.
encryptionKey kms.IKey Gibt eine Instanz des Verschlüsselungsschlüssels zurück, der durch das Muster erstellt wurde.
S3Bucket? 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 der Zugriffsprotokollierung für S3 Bucket

  • Aktivieren der serverseitigen Verschlüsselung für S3 Bucket mit AWS verwaltetem KMS-Schlüssel

  • Aktivieren der Versionierung für S3 Bucket

  • Öffentlichen Zugriff für S3 Bucket nicht zulassen

  • Beibehalten des S3-Bucket beim Löschen des CloudFormation -Stacks

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

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

Amazon SQS-Warteschlange

  • Konfigurieren der Zugriffsberechtigungen für die geringste Berechtigung für SQS-Warteschlange

  • Bereitstellen der SQS-Warteschlange für unzustellbare Nachrichten

  • Aktivieren der serverseitigen Verschlüsselung für SQS-Warteschlange mithilfe des vom Kunden verwalteten KMS-Schlüssels

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

Architecture

Diagram showing Amazon Simple Notification Service connecting to Amazon Simple Queue Service and AWS Lambda.

GitHub

Um den Code für dieses Muster anzuzeigen, erstellen/anzeigen Probleme und Pull-Anforderungen usw.:
Circular icon with a graduation cap symbol representing education or learning.
@aws -solutions-constructs/aws-s3-sqs