AWSS3createPresignedPostURL可以上传任意大小的文件,尽管已经对其进行了限制。
创始人
2024-11-19 13:00:27
0

AWS S3 的 createPresignedPost API 本质上只是为我们生成一个包含签名的 POST URL,用于上传文件到指定的 S3 存储桶中。这个 URL 可以设置一些限制条件,比如文件大小限制等,但是存在安全漏洞,使得通过浏览器或应用程序直接上传的文件大小不受限制。

为了解决这个问题,我们可以使用 AWS S3 的服务器端 SDK 和 AWS API Gateway 来实现对上传文件大小的完全控制,具体步骤如下:

1.首先,使用 generatePresignedUrl 方法生成 POST URL,设置限制条件,如下所示:

var AWS = require('aws-sdk');
var s3 = new AWS.S3();

var params = {
  Bucket: 'your-bucket-name',
  Fields: {
    key: 'file-upload-example/${filename}',
    // 其他参数选项
  },
  Conditions: [
    ["content-length-range", 0, 10485760] // 限制上传文件大小为10MB
  ],
  Expires: 3600 // URL 有效时长
};

var presignedPost = s3.createPresignedPost(params);
console.log(JSON.stringify(presignedPost));

2.在 AWS API Gateway 中创建一个 POST API,并配置集成为 AWS Lambda 或 HTTP,将请求转发到后端。

3.在 API Gateway 中添加验证器或者授权器,确保只有授权用户才能使用 API。

4.在 API Gateway 中设置请求长度限制,该限制将作用于浏览器/AWS SDK 发送到 API Gateway 的请求。

这种方法将完全控制上传的文件大小,而不会受到浏览器/应用程序的限制。

相关内容

热门资讯

6分钟辅助!hhpoker是真... 6分钟辅助!hhpoker是真的假的,hhpoker真的有透视吗,演示教程(真是有挂)1、每一步都需...
第七分钟辅助!we poker... 第七分钟辅助!we poker插件,we poker免费辅助器,手筋教程(有挂方式)暗藏猫腻,小编详...
七分钟辅助!aa poker辅... 七分钟辅助!aa poker辅助包,pokemmo脚本辅助器下载,讲义教程(有挂秘籍)1、pokem...
第四分钟辅助!wepoker辅... 第四分钟辅助!wepoker辅助器安装包定制,aapoker透视脚本,大纲教程(有挂总结)所有人都在...
第四分钟辅助!wpk透视辅助靠... 第四分钟辅助!wpk透视辅助靠谱吗,wepoker透视苹果系统,诀窍教程(有挂猫腻);运wepoke...
七分钟辅助!aapoker透视... 七分钟辅助!aapoker透视脚本入口,wejoker开挂,学习教程(有挂教程)1、打开软件启动之后...
第四分钟辅助!淘宝买wepok... 第四分钟辅助!淘宝买wepoker透视有用吗,wpk俱乐部怎么作弊,积累教程(有挂规律)1、下载好淘...
6分钟辅助!we-poker软... 6分钟辅助!we-poker软件,购买的wpk辅助在哪里下载,积累教程(有挂技巧)购买的wpk辅助在...
第2分钟辅助!如何下载wepo... 第2分钟辅助!如何下载wepoker安装包,newpoker怎么安装脚本,教程书教程(今日头条)1、...
4分钟辅助!wepoker钻石... 4分钟辅助!wepoker钻石怎么看底牌,wepoker辅助器有哪些功能,法门教程(有挂详细)该软件...