我的配置中有一条路线,说一个页面,比如/secure
,需要登录(通过authlogic完成)。我的控制器中的before_filter负责处理这个问题。这工作正常,页面及其资源限制了访问 - 通过应用程序。AWS S3/Ruby on Rails/heroku:我的应用程序中的安全漏洞
问题是,我们正在使用Amazon S3在这个应用程序上存储(基于refinerycms)部署到heroku。我有一个桶,它工作正常。
但是,通过浏览器可以直接访问插入应用程序安全部分的任何资源。换句话说,/secure
页面包含PDF文件等项目。虽然通过应用程序的资源是安全的,这些PDF文件可以从互联网上的任何地方访问(例如URL):http://s3.amazonaws.com/my_bucket/images/1234/the_file_which_should_be_secure.pdf
我可以在S3上进行细粒度的访问控制吗?我需要创建一个新的桶吗?理想情况下,我想在资源上设置一个标志,使其在互联网中不可见 - 不知道。
欢迎任何建议。
P.S. openid.org有一个过期的ssl证书,因此需要创建一个新的空帐户,因为我无法登录
有趣的方法,谢谢。我在AWS论坛上得到了回应,尝试了他们的ACL文档......如果这会显示出自己很多工作,我可能会这样! – faboolous 2010-10-24 00:42:07
不客气。根据我对AWS ACL的了解,它们并不适合这种用途,但您应该调查它们。不要忘了回来接受这个答案,如果它帮助你。 – tfe 2010-10-24 01:08:25
由于客户的预算紧张,我决定选择这个解决方案,因为它是最快的... – faboolous 2010-12-06 12:59:15