任何攻击者都可以在不知道文件名的情况下从 cloudfront 下载文件夹中的所有文件吗?
我正在考虑使用 Cloudfront 来缓存一些文件,但这些文件是一种资产,我不希望任何人在不登录的情况下访问它们。
我想知道我是否可以对文件使用长文件名(如哈希),并且只提供用户登录时的名称。
一个问题是攻击者(或外部人员)是否有能力在不知道名称的情况下下载包含文件的文件夹。
编辑: 这些文件是数据将在网站中显示的 JSON 文件。
I am considering using Cloudfront for caching some files but those files are kind of assets and I don't want anyone to access them without logging in.
I wonder if I could use long file name (like hash) for the files and only provide the names when user logged in.
A concern is that whether an attacker (or outsider) has the ability to download the folder containing the files without knowing the names.
Edited:
The files are JSON files that the data would be display in a website.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
了解如何使用签名 URL 在 CloudFront 中。每次用户登录时,您都会为用户需要在页面上访问的每个资产生成短期 URL。或者,如果您希望它是动态的,您可以通过将登录用户从正常 URL 重定向到动态生成的签名 URL 来执行相同的服务器端操作;未登录的用户将收到 403)。这确保了它们只能由每个单独的用户访问,即使 URL 被共享,它们也会很快过期并且其他人无法访问。
Have a look at using Signed URLs in CloudFront. Each time a user logs in, you generate short-lived URLs for each of the assets the user needs to access on the page. Or if you want it to be dynamic, you can do the same server-side by redirecting logged in users from normal URLs to a dynamically generated signed URLs; users that are not logged in will receive a 403). This ensures they are only accessible to each individual user, and even if the URL is shared they will expire quickly and be inaccessible to others.