javascript - 使用 aws lambda 作为 s3 的无服务器输入清理代理
问题描述
我希望使用预签名的 url (S3) 直接从客户端上传图像,并且我一直遇到这两个障碍:
- 潜在的恶意文件和清理输入的需要(在我的例子中是图像)。
- 一次可能恶意上传太多文件。
显然这不能在客户端上完成,因为弱点仍然会暴露出来。监视文件扩展名,据我所知,这可以使用 aws s3 存储桶策略来完成,这并不是解决这个问题的真正方法 - 实际上我会寻找文件清理 SDK(对于这个项目,我正在使用节点,所以完成这个服务器-side 会很简单)。
AWS Lambda 可以提供这种类型的功能吗?对于这个用例,使用 Lambda 是否仍然有意义?在我看来,通过 lambda 将图像管道传输到 s3 以在服务器端管道上“保存”有点愚蠢,考虑到仍然需要双重上传。
解决方案
如果您根据需要生成预签名的 url,并根据您的用例保持其活动状态。因此,在这种情况下,预签名的 url 在您需要时是实时的,并且对于所有客户端都是不同的。
推荐阅读
- ios - 后台快速计时器
- java - 如何跨 java 桌面和 android 应用程序连接两个 sqlite 数据库?
- java - 如何在spring boot中找到hibernate orm或hibernate ogm用于连接我的mongodb服务器
- angular - 如何查看除特定控件之外的所有 FormControls ValueChanges?
- html - 选中网页上的复选框
- java - 在没有服务器应用程序/服务器的情况下重新加载配置数据
- sql - SQL 更新表中的所有条目,但在列上插入不同的值
- javascript - Javascript if 语句不适用于表单比较
- c# - 将 MessagePack 与 AspNet Core WebAPI 和控制台应用程序一起使用
- mysql - 第 1 行的错误 1046 (3D000):未选择数据库