我是一名Java后端工程师,致力于前端(SPA和Android)必须将(大)文件发送到S3的功能。因为我必须管理很多请求。由于网络过载的原因,我避免制作一个代理服务器'服务,前端发送给我文件,以便我可以将其发送到S3,但我有一些关注保持我的应用程序安全的最佳方法。
我寻找了一些解决方案,但我找不到能够完全管理我想要的解决方案。
Amazon S3 upload with not showing secret key in frontend
这篇文章几乎是我的答案,但我没有足够的评分来评论。 S3 upload directly in JavaScript
我在AWS上阅读了一些文档,但我仍然有一些问题和一些必要条件。
哪种解决方案可能对我有好处?
您认为这些方法有效吗?你觉得哪一个更好?有什么权衡?还有其他方法可以解决这个问题吗?
答案 0 :(得分:1)
此处要做的最好的事情是使用Cognito服务在应用中生成匿名凭据,以允许上传到S3。对于Android,您可以使用SDK从设备到S3进行多部分上传,这也将加快这一过程。
我无法找到确切的Android示例,但这是针对iOS的,并且术语应该转移相同,只需使用其他SDK:iOSTransferManager 。
如果您有基于网络的应用,也可以直接从javascript调用Cognito:Cognito in JS example 希望有所帮助! - 克里斯