我有两个AWS帐户A和B,我有以下设置
账号A: S3存储桶
账号B:托管需要从账号A访问S3存储桶的Lambda
我已在帐户B中使用以下策略创建了IAM角色,并将其附加到Lambda
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "s3:ListBucket",
"Resource": "arn:aws:s3:::dest-bucket-name/*"
},
{
"Effect": "Allow",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::dest-bucket-name/*"
}
]
}我还将存储桶策略(如下所示)与帐户A中的S3存储桶相关联
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::AccountBID:role/lambda-role"
},
"Action": "s3:*",
"Resource": "arn:aws:s3:::dest-bucket-name/*"
}
]
}VPC端点已正确配置。从存储桶下载工件的Lambda请求超时,有人能告诉我哪里出错了吗?
发布于 2019-12-12 06:23:08
有两件事很突出:
s3:ListBucket是应用于存储桶的权限。arn:aws:s3:::dest-bucket-name/*匹配存储桶中的所有对象。尝试对arn:aws:s3:::dest-bucket-name单独应用ListBucket。(该模式通常有一个用于对象操作的策略块和另一个用于存储桶操作的策略块。)https://stackoverflow.com/questions/59291591
复制相似问题