我正在使用a link直接将blob文件上传到S3服务器,但我不想透露此链接中的秘密访问密钥,请提供如何完成。
任何帮助都将非常感谢..谢谢!!
答案 0 :(得分:0)
一些潜在的选择:
<强> 1。使用预先签名的网址
来自Uploading Objects Using Pre-Signed URLs:
预签名URL允许您访问URL中标识的对象,前提是预签名URL的创建者有权访问该对象。也就是说,如果您收到预先签名的URL以上传对象,则只有在预签名URL的创建者具有上传该对象的必要权限时,才能上传该对象。
<强> 2。生成临时凭证
使用AWS Security Token Service (STS)生成具有有限权限的临时凭据。这些凭证可以允许特定活动(例如,上载到Amazon S3内的特定位置)有限时间段(例如,5分钟)。暴露这些凭证的危险性相对较小(因为它们只能执行您的网页允许的操作)。
使用AssumeRole
来承担IAM角色中定义的权限,或使用GetSessionToken
根据当前IAM用户限制权限范围。
第3。使用Web联合身份验证
Web identity federation允许通过第三方提供商(如Google+,Facebook和亚马逊)进行身份验证。用户对这些服务之一进行身份验证,您的网站可以使用该身份来允许访问AWS服务。您将公开的唯一凭据仅与这些用户本身相关。