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-iot-lambda-dynamodb
Alle Klassen befinden sich in aktiver Entwicklung und unterliegen nicht abwärtskompatiblen Änderungen oder Entfernen in jeder zukünftigen Version. Diese unterliegen nicht derSemantische Versionierung
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 |
---|---|
|
aws_solutions_constructs.aws_iot_lambda_dynamodb
|
|
@aws-solutions-constructs/aws-iot-lambda-dynamodb
|
|
software.amazon.awsconstructs.services.iotlambdadynamodb
|
Overview
Dieses AWS Solutions Constructs-Muster implementiert eine AWS IoT -Themenregel, eine AWS Lambda Funktion und Amazon DynamoDB -Tabelle mit den geringsten Berechtigungen.
Hier ist eine minimale bereitstellbare Musterdefinition in TypeScript:
import { IotToLambdaToDynamoDBProps, IotToLambdaToDynamoDB } from '@aws-solutions-constructs/aws-iot-lambda-dynamodb'; const props: IotToLambdaToDynamoDBProps = { 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' }, iotTopicRuleProps: { topicRulePayload: { ruleDisabled: false, description: "Processing of DTC messages from the AWS Connected Vehicle Solution.", sql: "SELECT * FROM 'connectedcar/dtc/#'", actions: [] } } }; new IotToLambdaToDynamoDB(this, 'test-iot-lambda-dynamodb-stack', props);
Initializer
new IotToLambdaToDynamoDB(scope: Construct, id: string, props: IotToLambdaToDynamoDBProps);
Parameter
-
Bereich
Construct
-
id
string
Muster-Konstrukt Requisiten
Name | Typ | Beschreibung |
---|---|---|
Gibt es LambdaObj? |
lambda.Function
|
Vorhandene Instanz des Lambda Function-Objekts, die sowohl diese als auchlambdaFunctionProps fü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 einexistingLambdaObj wird bereitgestellt. |
IottopicRuleProps |
iot.CfnTopicRuleProps
|
Vom Benutzer bereitgestellte Requisiten zum Überschreiben der Standard-Requisiten |
DynamoTableProps? |
dynamodb.TableProps
|
Optional vom Benutzer bereitgestellte Requisiten zum Überschreiben der Standard-Requisiten für DynamoDB -Tabelle |
TabelleBerechtigungen? |
string
|
Optionale Tabellenberechtigungen, die der Lambda Funktion erteilt werden sollen. Es können folgende Optionen angegeben werden:All ,Read ,ReadWrite , oderWrite . |
Muster-Eigenschaften
Name | Typ | Beschreibung |
---|---|---|
DynamoTable |
dynamodb.Table
|
Gibt eine Instanz der DynamoDB -Tabelle zurück, die durch das Muster erstellt wurde. |
IottopicRule |
iot.CfnTopicRule
|
Gibt eine Instanz der IoT -Themenregel zurück, die durch das Muster erstellt wurde. |
LambdaFunction |
lambda.Function
|
Gibt eine Instanz der Lambda Funktion zurück, die durch das Muster erstellt wurde. |
Standardeinstellungen
Die vorgefertigte Implementierung dieses Musters ohne Überschreibungen setzt die folgenden Standardwerte:
Amazon IoT Regel
-
Konfigurieren Sie die IAM-Rolle für den Zugriff auf die geringste Berechtigung für Amazon IoT.
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 Sie X-Ray blaufverfolgung.
-
Festlegen von Umgebungsvariablen:
-
AWS_NODEJS_CONNECTION_REUSE_ENABLED
(für Node 10.x und höhere Funktionen)
-
Amazon DynamoDB Tabelle
-
Legen Sie den Abrechnungsmodus für DynamoDB -Tabelle auf On-Demand fest (Bezahlen pro Anforderung).
-
Aktivieren Sie die serverseitige Verschlüsselung für DynamoDB Table mithilfe von AWS verwaltetem KMS-Schlüssel.
-
Erstellt einen Partitionsschlüssel namens 'id' für DynamoDB -Tabelle.
-
Behalten Sie die Tabelle beim Löschen des CloudFormation-Stacks bei.
-
Ermöglicht kontinuierliche Sicherungen und zeitpunktbezogene Wiederherstellungen.
Architecture
GitHub
Um den Code für dieses Muster anzuzeigen, erstellen/anzeigen Probleme und Pull-Anforderungen usw.: | |
---|---|
|
@aws -solutions-konstrukte/aws-iot-lambda-dynamodb |