使用 S3 Object Lambda 转换对象
借助 Amazon S3 Object Lambda,您可以将自己的代码添加到 Amazon S3 GET
、LIST
和 HEAD
请求中,以便在数据返回到应用程序时修改和处理数据。您可以使用自定义代码修改由 S3 GET
请求返回的数据,以便执行筛选行、动态调整图像大小、隐去机密数据等操作。您还可以使用 S3 Object Lambda 修改 S3 LIST
请求的输出以创建桶中所有对象的自定义视图,以及修改 S3 HEAD
请求以修改对象元数据(如对象名称和大小)。在 Amazon Lambda 函数的支持下,您的代码在完全由 Amazon 管理的基础设施上运行。使用 S3 Object Lambda 可以减少创建和存储数据的衍生副本或运行代理的需要,所有这些都无需更改应用程序。
S3 Object Lambda 的工作原理
S3 Object Lambda 使用 Amazon Lambda 函数来自动处理标准 S3 GET
、LIST
或 HEAD
请求的输出。Amazon Lambda 是一种无服务器计算服务,它运行客户定义的代码,而无需管理底层计算资源。您可以编写和运行自己的自定义 Lambda 函数,根据您的特定使用案例定制数据转换。
配置 Lambda 函数后,您可以将其附加到 S3 Object Lambda 服务端点(称为 Object Lambda 访问点)。Object Lambda 访问点使用标准 S3 访问点(称为支持访问点)来访问 Amazon S3。
当您向 Object Lambda 访问点发送请求时,Amazon S3 会自动调用您的 Lambda 函数。然后,使用 S3 GET
、LIST
或 HEAD
请求通过 Object Lambda 访问点检索的任何数据都会将转换后的结果返回给应用程序。将正常处理所有其他请求,如下图所示。

本节中的主题介绍了如何使用 S3 Object Lambda。
主题
有关 S3 Object Lambda 教程,请参阅 教程:使用 S3 Object Lambda 转换应用程序的数据 和 教程:使用 S3 Object Lambda 和 Amazon Comprehend 检测和修订 PII 数据。
有关标准访问点的更多信息,请参阅 使用 Amazon S3 访问点管理数据访问。
有关使用存储桶的信息,请参阅 存储桶概述。有关使用对象的信息,请参阅 Amazon S3 对象概述。