aws-sns-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-sns-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_sns_sqs
Typographische Schrift
@aws-solutions-constructs/aws-sns-sqs
Java
software.amazon.awsconstructs.services.snssqs

Overview

Dieses AWS Solutions Construct implementiert ein Amazon SNS -Thema, das mit einer Amazon SQS Warteschlange verbunden ist.

Hier ist eine minimale bereitstellbare Musterdefinition in TypeScript:

import { SnsToSqs, SnsToSqsProps } from "@aws-solutions-constructs/aws-sns-sqs"; import * as iam from '@aws-cdk/aws-iam'; const snsToSqsStack = new SnsToSqs(this, 'SnsToSqsPattern', {}); // Grant yourself permissions to use the Customer Managed KMS Key const policyStatement = new iam.PolicyStatement({ actions: ["kms:Encrypt", "kms:Decrypt"], effect: iam.Effect.ALLOW, principals: [ new iam.AccountRootPrincipal() ], resources: [ "*" ] }); snsToSqsStack.encryptionKey?.addToResourcePolicy(policyStatement);

Initializer

new SnsToSqs(scope: Construct, id: string, props: SnsToSqsProps);

Parameter

Muster-Konstrukt Requisiten

Name Typ Beschreibung
Bestehend TopicObj? sns.Topic Vorhandene Instanz des SNS Topic-Objekts, die sowohl diese als auchtopicPropsführt zu einem -Fehler.
TopicProps? sns.TopicProps Optionale vom Benutzer bereitgestellte Eigenschaften, um die Standardeigenschaften für das SNS-Thema zu überschreiben. Wird ignoriert, wenn einexistingTopicObjwird bereitgestellt.
BestehenQueueObj? sqs.Queue Eine optionale, vorhandene SQS-Warteschlange, die anstelle der Standardwarteschlange verwendet werden soll. Bereitstellung sowohl dieser als auchqueuePropsführt zu einem -Fehler.
QueueProps? sqs.QueueProps Optionale vom Benutzer bereitgestellte Eigenschaften, um die Standardeigenschaften für die SQS-Warteschlange zu überschreiben. Wird ignoriert, wenn einexistingQueueObjwird bereitgestellt.
DeployDeadletterQueue? boolean Erstellen einer sekundären Warteschlange, die als Warteschlange für unzustellbare Nachrichten verwendet wird. Standardeinstellung: true.
DeadLetterQueueProps? sqs.QueueProps Optionale, vom Benutzer bereitgestellte Requisiten zum Überschreiben der Standardrequisiten für die Warteschlange für tote Buchstaben. Wird nur verwendet, wenn diedeployDeadLetterQueueauf true gesetzt.
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 vom Kunden verwalteter Verschlüsselungsschlü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
snsTopic sns.Topic Gibt eine Instanz des SNS-Themas zurück, das durch das Muster erstellt wurde.
encryptionKey kms.Key Gibt eine Instanz des Verschlüsselungsschlüssels zurück, der durch das Muster erstellt wurde.
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.

Standardeinstellung

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

Amazon SNS-Thema

  • Konfigurieren Sie Zugriffsberechtigungen mit den geringsten Berechtigungen für das SNS-Thema.

  • Aktivieren Sie die serverseitige Verschlüsselung mit dem verwalteten KMS-Schlüssel von AWS.

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

Amazon SQS-Warteschlange

  • Konfigurieren Sie Zugriffsberechtigungen für die niedrigste Berechtigung für SQS-Warteschlange.

  • Bereitstellen der Warteschlange für unzustellbare Nachrichten für die SQS-Quellwarteschlange

  • 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

AWS-Services diagram showing SNS, SQS, and Lambda interactions with queues and notifications.

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-sns-sqs