【发布时间】:2021-01-18 18:07:19
【问题描述】:
您好,希望您能在这个问题上引导我走向正确的方向。
我正在使用亚马逊网络服务云开发工具包。
我想创建一个 Lambda 函数来从 DynamoDB 表中删除项目。
import * as lambda from '@aws-cdk/aws-lambda';
import * as iam from '@aws-cdk/aws-iam';
const deleteLambda = new lambda.Function(
this,
'deleteLambda',
{
functionName: 'deleteLambda',
runtime: lambda.Runtime.NODEJS_10_X,
handler: 'deleteLambda.handler',
code: lambda.Code.fromAsset('lambdas-fns'),
memorySize: 1024
});
const lambdaARole = new iam.Role(this, 'LambdaRole', {
assumedBy: new iam.ServicePrincipal('lambda.amazonaws.com'),
});
lambdaARole.addManagedPolicy(
iam.ManagedPolicy.fromAwsManagedPolicyName('AmazonDynamoDBFullAccess')
);
const tbl = new Table(this, 'TestTable', {})
现在我知道我可以使用 tbl.grantReadData 允许 lambda 从表中读取项目,或使用 tbl.grantWriteData 允许 lambda 添加项目。但我找不到允许删除项目的正确语法。
如果有人能指出我错过了什么,将不胜感激。
【问题讨论】:
标签: amazon-web-services aws-lambda amazon-dynamodb aws-cdk