【发布时间】:2021-02-26 06:11:08
【问题描述】:
我在 vercel 中创建了我的 api,它使用 aws lambda。在我的函数中,我在我的 aws 帐户中使用了对 dynamodb 的调用。
但我不断收到AccessDeniedException。
但是,当我在本地运行它时,没有问题。
AccessDeniedException: User: arn:aws:sts::764717618004:assumed-role/cloudwatch_logs_events_putter/L0ZFqQmkoVXQ44u8QwB1yH0f-805fd9d54732e5470e54bf12bd9a25672e379b5
is not authorized to perform: dynamodb:GetItem on resource: arn:aws:dynamodb:ap-south-1:764717618004:table/users
this 解决了 lambda 和 dynamo 属于同一用户帐户时的问题。
【问题讨论】:
-
您是否为
cloudwatch_logs_events_putter角色授予dynamodb:GetItem的权限? -
我找不到任何具有该名称的角色。我是新手。我应该以该名称创建角色吗?我已将
AmazonDynamoDBFullAccess提供给 IAM 用户。 -
您必须更新
Role的策略,而不是User。 -
该角色存在是因为您的 Lambda 已承担该角色,并且 STS 已颁发未经授权的凭证。如果您没有看到该角色,是否它可能在其他帐户中,或者您无权查看它?
-
对不起,对vercel.com不熟悉;可能会与他们联系以获得跨帐户权限的支持。
标签: amazon-web-services aws-lambda amazon-dynamodb amazon-iam vercel