提问者:小点点

上载到S3而不暴露您的accessKeyId


我有一个web应用程序,它使用firebase进行身份验证和数据库,使用Angular4进行前端。我正在上传图像到AWS3通过我的网络应用程序和它的工作良好。

我目前正在使用angular4代码中的accessKeyId和secretAccessKey将文件直接上传到AWS S3(使用AWS SDK for javascript)。编译angular后,客户端浏览器仍然在前端使用javascript。我不喜欢这样,这会给我带来安全风险。

我如何从Angular4直接上传图像到S3而不暴露我的密钥?


共1个答案

匿名用户

创建一个可以生成AWS3预签名URL的小型后端服务/API。然后,您的Angular应用程序可以使用预签名的URL将图像上传到S3。后端服务将是唯一需要您的AWS访问权限的东西。

AWS Lambda+API网关对于这种后端服务来说是完美的。