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

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_lambda_ssm_string_parameter
Typoskript
@aws-solutions-constructs/aws-lambda-ssmstringparameter
Java
software.amazon.awsconstructs.services.lambdassmstringparameter

Overview

Dieses AWS Solutions Construct implementiert die AWS Lambda Funktion und den Parameter AWS Systems Manager Parameter Store String mit den geringsten Berechtigungen.

Hier ist eine minimale bereitstellbare Musterdefinition in TypeScript:

const { LambdaToSsmstringparameterProps, LambdaToSsmstringparameter } from '@aws-solutions-constructs/aws-lambda-ssmstringparameter'; const props: LambdaToSsmstringparameterProps = { 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' }, stringParameterProps: { stringValue: "test-string-value" } }; new LambdaToSsmstringparameter(this, 'test-lambda-ssmstringparameter-stack', props);

Initializer

new LambdaToSsmstringparameter(scope: Construct, id: string, props: LambdaToSsmstringparameterProps);

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.
ExistingStringParameterObj? ssm.StringParameter Vorhandene Instanz des SSM String-Parameterobjekts, die sowohl diese als auchstringParameterPropsführt zu einem -Fehler.
StringParameterProps? ssm.StringParameterProps Optional vom Benutzer bereitgestellte Requisiten, um die Standard-Requisiten für den SSM-String-Parameter zu überschreiben. WennexistingStringParameterObjnicht gesetzt ist,stringParameterPropsist erforderlich. Die einzige unterstütztessm.StringParameterProps.typeistSTRING, wenn ein anderer Wert angegeben wird, wird er überschrieben.
StringParameterEnvironmentVariableName? string Optionaler Name für die Umgebungsvariable SSM String-Parameter, die für die Lambda Funktion festgelegt wurde.
ExistenzVPC? ec2.IVpc Eine optionale vorhandene VPC, in der dieses Pattern bereitgestellt werden soll. Bei der Bereitstellung in einer VPC verwendet die Lambda Funktion ENIs in der VPC, um auf Netzwerkressourcen zuzugreifen, und im Parameter VPC for AWS Systems Manager wird ein Interface Endpoint erstellt. Wenn eine vorhandene VPC bereitgestellt wird, wird diedeployVpckann nichttrue. Diese Verwendung vonec2.IVpc, damit Clients VPCs bereitstellen können, die außerhalb des Stacks vorhanden sind, mithilfe desec2.Vpc.fromLookup()-Methode.
VPCProps? ec2.VpcProps Optionale vom Benutzer bereitgestellte Eigenschaften, um die Standardeigenschaften für die neue VPC zu überschreiben.enableDnsHostnames,enableDnsSupport,natGatewaysundsubnetConfigurationwerden durch das Muster festgelegt, so dass alle Werte für die hier angegebenen Eigenschaften überschrieben werden. WenndeployVpcist nichttruewird diese Eigenschaft ignoriert.
DeployVPC? boolean Ob eine neue VPC basierend aufvpcProps, in das dieses Muster bereitgestellt werden soll. Setzen Sie diese Einstellung auftruestellt die minimale, privatste VPC bereit, um das Pattern auszuführen:
  • Ein isoliertes Subnetz in jeder Availability Zone, die vom CDK-Programm verwendet wird.

  • enableDnsHostnamesundenableDnsSupportwerden beide auftrue.

Wenn diese Eigenschaft auftrue, dannexistingVpckann nicht angegeben werden. Standardeinstellung: false.
StringParameterPermissions? string Optionale SSM-String-Parameterberechtigungen, die der Lambda Funktion erteilt werden sollen. Eine der folgenden Angaben kann angegeben werden:Read,ReadWrite.

Muster-Eigenschaften

Name Typ Beschreibung
LambdaFunction lambda.Function Gibt eine Instanz vonlambda.Function, die durch das Gebäudemodul erstellt wurde.
StringParameter ssm.StringParameter Gibt eine Instanz vonssm.StringParameter, die durch das Gebäudemodul erstellt wurde.
vpc? ec2.IVpc Gibt eine Schnittstelle auf der VPC zurück, die vom Muster verwendet wird (falls vorhanden). Dies kann eine VPC sein, die durch das Muster oder die VPC erstellt wurde, die dem Musterkonstruktor zur Verfügung gestellt wurde.

Standardeinstellungen

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

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 die X-Ray Nachverfolgung.

  • Festlegen von Umgebungsvariablen:

    • SSM_STRING_PARAMETER_NAME (Standard)

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

Zeichenfolge des Amazon AWS Systems Manager Parameterspeichers

  • Aktivieren Sie den schreibgeschützten Zugriff für die zugehörige AWS Lambda Funktion.

  • Erstellt einen neuen SSM String-Parameter mit den angegebenen Werten.

  • Behalten Sie den SSM-String-Parameter beim Löschen des CloudFormation-Stacks bei.

Architecture

GitHub

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