gpt4 book ai didi

session - 如何允许客户在不泄露我的 key 的情况下上传到 Amazon S3?

转载 作者:行者123 更新时间:2023-12-02 21:27:38 24 4
gpt4 key购买 nike

我的一个客户有一个网站,该网站显示从客户端应用程序上传的媒体。

此应用程序最初使用 FTP,但出于各种数据存储和性能原因,我们正在迁移到 S3。

我希望能够让这个客户端直接将文件上传到我们的中央 S3 存储(ala dropbox/jungledisk 等),但我看不到在不交出 key 的情况下执行此操作的方法并将它们嵌入到应用程序中 - 并不理想!

有没有办法为客户端应用程序提供 session key /临时上传 URL/其他内容?这可以通过我们网站的 api 来完成 - 当然,它可以完全访问任何所需的 S3 key 。

建议?

最佳答案

是的,这应该是可能的。您需要做的是创建一个按上传按用户签名的策略文件。该策略文件、签名和一些其他数据必须由客户端程序使用 POST 请求发送到您希望它们使用的存储桶。亚马逊将检查请求,检查参数是否在请求随附的策略文件的限制范围内,然后允许发布。请注意,此策略不应与存储桶策略相混淆。事实上,如果您愿意,这是一个可以根据请求更改的策略,并且由客户端程序提交(在客户端程序从您那里获得签名副本之后)。

有关此内容的完整详细信息可以在 Browser Based Uploads Using POST 中找到。 S3 文档的部分。我建议详细审查 HTML Forms部分,并回顾如何将 POST 参数发送到客户端(对于浏览器,您可以向其发送 HTML,这就是文档的措辞方式,对于非浏览器程序,您可能需要某种 API 调用,然后是客户端向 S3 提交 POST)。

您还可以查看此网页,它可以让您了解如何设置参数:http://s3.amazonaws.com/doc/s3-example-code/post/post_sample.html

关于session - 如何允许客户在不泄露我的 key 的情况下上传到 Amazon S3?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3371189/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com