aws-sns-sqs - Costrutti delle soluzioni AWS

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

aws-sns-sqs

Tutte le classi sono in fase di sviluppo attivo e soggette a modifiche o rimozione non compatibili con le versioni precedenti in qualsiasi versione futura. Questi non sono soggetti allaSemantic (Versione semanticaModello. Ciò significa che, mentre è possibile utilizzarli, potrebbe essere necessario aggiornare il codice sorgente quando si esegue l'aggiornamento a una versione più recente di questo pacchetto.

Nota: Per garantire la corretta funzionalità, i pacchetti AWS Solutions Constructs e i pacchetti AWS CDK nel progetto devono essere della stessa versione.

Linguaggio Pacchetto
Python
aws_solutions_constructs.aws_sns_sqs
TypeScript
@aws-solutions-constructs/aws-sns-sqs
Java
software.amazon.awsconstructs.services.snssqs

Overview

Questo modello AWS Solutions implementa un argomento Amazon SNS collegato a una coda Amazon SQS.

Ecco una definizione di modello distribuibile minima 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);

Parametri

Puntelli di costruzione modelli

Nome Tipo Descrizione
Esistente Topicobj? sns.Topic Istanza esistente dell'oggetto argomento SNS, fornendo sia questo chetopicPropscauserà un errore.
TopicProps? sns.TopicProps Proprietà facoltative fornite dall'utente per ignorare le proprietà predefinite per l'argomento SNS. Ignorato se unexistingTopicObjviene fornito.
ExistingQueueObj? sqs.Queue Una coda SQS esistente facoltativa da utilizzare al posto della coda predefinita. Fornire sia questo chequeuePropscauserà un errore.
QueueProps? sqs.QueueProps Proprietà facoltative fornite dall'utente per sovrascrivere le proprietà predefinite per la coda SQS. Ignorato se unexistingQueueObjviene fornito.
DeployDeadLetterQueue? boolean Se creare una coda secondaria da utilizzare come coda SDQ. L'impostazione predefinita è true.
DeadLetterQueueProps? sqs.QueueProps Oggetti di scena facoltativi forniti dall'utente per sovrascrivere gli oggetti di scena predefiniti per la coda delle lettere morte. Utilizzato solo se il valoredeployDeadLetterQueueviene impostata su true.
MaxReceiveCount? number Il numero di volte in cui un messaggio può essere rimosso in caso contrario prima di essere spostato nella coda SDQ. L'impostazione predefinita è 15.
EnableEncryptionWithCustomerManagedKey? boolean Se utilizzare una chiave di crittografia gestita dal cliente, gestita da questa app CDK o importata. Se si importa una chiave di crittografia, questa deve essere specificata nella casellaencryptionKeyper questo costrutto.
encryptionKey? kms.Key Chiave di crittografia opzionale esistente da utilizzare al posto della chiave di crittografia predefinita.
EncryptionKeyProps? kms.KeyProps Proprietà facoltative fornite dall'utente per sovrascrivere le proprietà predefinite per la chiave di crittografia.

Proprietà modelli

Nome Tipo Descrizione
SNSTopic sns.Topic Restituisce un'istanza dell'argomento SNS creato dal modello.
encryptionKey kms.Key Restituisce un'istanza della chiave di crittografia creata dal modello.
SQSqueue sqs.Queue Restituisce un'istanza della coda SQS creata dal pattern.
DeadLetterQueue? sqs.Queue Restituisce un'istanza della coda di lettere morte creata dal modello, se ne viene distribuita una.

Impostazioni predefinite

L'implementazione predefinita di questo modello senza sostituzioni imposterà i seguenti valori predefiniti:

Argomento Amazon SNS

  • Configurare le autorizzazioni di accesso con privilegi minimi per l'argomento SNS.

  • Abilitare la crittografia lato server utilizzando la chiave AWS gestita.

  • Applicazione della crittografia dei dati in transito

Coda Amazon SQS

  • Configurare le autorizzazioni di accesso con privilegi minimi per la coda SQS.

  • Distribuire la coda SDQ per la coda SQS di origine.

  • Abilitare la crittografia lato server per la coda SQS utilizzando la chiave KMS gestita dal cliente.

  • Applicazione della crittografia dei dati in transito

Architecture

GitHub

Per visualizzare il codice per questo modello, creare/visualizzare problemi e richieste pull e altro ancora:
@aws -solutions-buils/aws-sns-sqs