AWS Lambda与S3一起工作

问题描述:

我想创建一个Python Lambda函数来上传s3图像并创建它们的缩略图版本。AWS Lambda与S3一起工作

我有权限问题,我无法访问我的存储桶。我知道我需要创建存储桶策略。我不明白我可以制定一个适用于执行缩略图流程的lambda请求的策略吗?

+0

您需要提供更多信息。你试过什么了?它是如何失败的?你的代码是什么样的? – garnaat

+1

而不是使用存储桶策略,只需为Lambda函数的IAM角色提供访问S3存储桶所需的权限即可。 –

这听起来像你要做到以下几点:

  1. 消防拉姆达每当东西上传到你的水桶
  2. 从桶中读取一个文件
  3. 写(缩略图)文件回斗

你需要3个不同的权限来做到这一点:

  1. S3服务将需要调用您的lambda函数的权限(当您通过AWS Lambda控制台添加S3事件源时,会为您完成此操作)。
  2. lambda执行角色(在Lambda Console的“配置”选项卡上选择的角色)将需要读/写访问权来调用S3。您可以通过从下拉列表中选择IAM策略,然后选择您需要的S3权限,在policy generator上为此生成策略。
  3. 为了增加安全性,您可以在S3上设置存储桶策略,只允许lambda函数访问它。您也可以从policy generator以及通过选择S3策略来生成。然后,您将输入lambda.amazonaws.com作为校长。
+0

如果他在lambda函数的角色中定义权限,他是否也需要在桶策略中定义它? – Saeger