本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
aws-lambda-
所有類都在積極開發中,並且在任何未來版本中都會受到非向後兼容的更改或刪除。這些不受語義版本
請注意: 為了確保功能正確,專案中的 AWS 解決方案建構套件和 AWS CDK 套件必須是相同的版本。
| 語言 | 套件 |
|---|---|
|
aws_solutions_constructs.aws_lambda_sns
|
|
@aws-solutions-constructs/aws-lambda-sns
|
|
software.amazon.awsconstructs.services.lambdasns
|
Overview
此 AWS 解決方案建構實作連接到 Amazon SNS 主題的 AWS Lambda 函數。
下面是 TypeScript 中的最小可部署模式定義:
import { LambdaToSns, LambdaToSnsProps } from "@aws-solutions-constructs/aws-lambda-sns"; new LambdaToSns(this, 'test-lambda-sns', { 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' } });
Initializer
new LambdaToSns(scope: Construct, id: string, props: LambdaToSnsProps);
參數
-
scope
Construct -
id
string
模式建立道具
| 名稱 | 類型 | 描述 |
|---|---|---|
| 現在還有蘭姆達伯 |
lambda.Function
|
Lambda 函數對象的現有實例,提供這個和lambdaFunctionProps會導致錯誤。 |
| 拉姆針灸道具? |
lambda.FunctionProps
|
選用的使用者提供的屬性,可覆寫 Lambda 函數的預設屬性。忽略existingLambdaObj已提供。 |
| 現在的托比科比? |
sns.Topic
|
SNS 主題對象的現有實例,提供這個和topicProps會導致錯誤。 |
| 主題道具? |
sns.TopicProps
|
選用的使用者提供的屬性,可覆寫 SNS 主題的預設屬性。 |
| 是否存在 VPC? |
ec2.IVpc
|
應該部署此模式的選用現有 VPC。在 VPC 中部署時,Lambda 函數將使用 VPC 中的 ENI 來存取網路資源,並且會在 Amazon SQS 的 VPC 中建立一個介面端點。如果提供了現有的 VPC,deployVpc屬性不能為true。這使用ec2.IVpc以允許用戶端提供存在於堆疊外部的 VPC,使用ec2.Vpc.fromLookup()方法。 |
| 部署 vPC? |
boolean
|
是否建立新的 VPCvpcProps來部署這種模式。將此設為true將部署最小的,最私有的 VPC 來運行該模式:
true,然後existingVpc無法指定。預設為 false。 |
| 虛擬電腦產品? |
ec2.VpcProps
|
可選的使用者提供的屬性,用於覆寫新 VPC 的預設屬性。enableDnsHostnames、enableDnsSupport、natGateways和subnetConfiguration是由模式設置的,因此此處提供的屬性的任何值都將被覆蓋。如果deployVpc不是true那麼這個屬性將被忽略。 |
| 主題環境變數名稱? |
string
|
為 Lambda 函數設定的 SNS 主題 ARN 環境變數的選擇性名稱。 |
| 主題名稱環境變數名稱? |
string
|
為 Lambda 函數設定的 SNS 主題名稱環境變數的選擇性名稱。 |
模式性質
| 名稱 | 類型 | 描述 |
|---|---|---|
| Lambda |
lambda.Function
|
返回由模式創建的 Lambda 函數的實例。 |
| snsTopic |
sns.Topic
|
傳回由模式建立的 SNS 主題的實例。 |
| vpc? |
ec2.IVpc
|
返回模式使用的 VPC 的實例(如果有的話)。這可能是由模式或提供給模式構造函數的 VPC 創建的 VPC。 |
預設設定
開箱即用的構造實現沒有任何覆蓋將設置以下默認值:
AWS Lambda 功能
-
設定 Lambda 函數的有限權限存取 IAM 角色。
-
為 NodeJS Lambda 函數啟用具有持續作用的連線重複使用。
-
啟用 X-Ray 追蹤。
-
設定環境變數:
-
SNS_TOPIC_NAME(default) -
SNS_TOPIC_ARN(default) -
AWS_NODEJS_CONNECTION_REUSE_ENABLED(對於節點 10.x 和更高版本的函數)
-
Amazon SNS 主題
-
設定 SNS 主題的最低權限存取權限。
-
使用 AWS 受管 KMS 金鑰啟用伺服器端加密。
-
強制加密傳輸中的資料。
Architecture
GitHub
| 要查看此模式的代碼,創建/查看問題和提取請求,以及更多: | |
|---|---|
|
@aws-解決方案-構造/aw-lambda-s |