【发布时间】:2018-06-14 08:04:08
【问题描述】:
我通过 CloudFormation 部署的 Lambda 函数在 S3 存储桶中的 Lambda 代码文件未加密时工作正常,但在我使用 KMS 加密代码文件时失败。
我有包含 Lambda 资源的 AWS CloudFormation 堆栈。我的 Python 代码 ZIP 文件位于 S3 存储桶中。我的 CFN 模板中的 Lambda 资源包含指向 zip 所在的 S3Bucket 和 S3Key 的“代码”属性。存储桶策略允许我的角色执行s3:GetObject、s3:PutObject、s3:ListBucket 的操作。当代码 ZIP 文件未加密时,堆栈构建工作正常。但是当我在存储桶中使用 KMS 加密的 zip 文件时,我得到了错误:
“您的访问已被 S3 拒绝,请确保您的请求凭据具有对 my-bucket/my-folder/sample.zip 的 GetObject 的权限。S3 错误代码:AccessDenied。S3 错误消息:访问被拒绝”
我是否需要增强我的 S3 存储桶策略以支持访问 KMS 加密文件?这是怎么做的? (错误消息似乎具有误导性,因为我的存储桶策略已经允许我的角色 GetObject 访问。)谢谢。
【问题讨论】:
标签: amazon-web-services encryption amazon-s3 lambda