|
|
1
37
图像加载器可以验证会话、检查凭据等,然后决定是否将请求的文件返回到浏览器。这将允许您将所有安全文件存储在可通过web访问的根目录之外,这样就不会有人只是“意外地”将它们下载或浏览到那里。 只需记住在PHP中返回正确的标题,并在PHP中执行readfile()之类的操作,即可将文件内容返回到浏览器。 我已经在几家大型安全网站上使用过这种设置,它的效果非常好。 编辑:我目前正在构建的系统使用这种方法加载Javascript、图像和视频,但我们并不十分担心CSS的安全性。 |
|
|
2
9
X-SendfileApache(和其他HTTP服务器)有一个模块,可以让您告诉HTTP服务器为您在php代码的头中指定的文件提供服务: 因此,您的php脚本应该如下所示:
2.可能出现的问题:
|
|
|
3
5
但我只是有一个 非常 有趣的想法是 可以
这样,我们就可以在mod_rewrite中进行准会话身份验证,只需进行一次“文件存在”检查! 我没有足够的例程来动态构建mod_rewrite语句,但它们应该很容易编写(我满怀希望地朝你的方向看(秋葵:) 注意事项和注意事项:
我是 对这方面的反馈感兴趣,我可能忽略的任何不足或不可能,以及任何成功的实现(我现在没有时间自己设置测试)。 |
|
|
4
3
创建一个 rewrite map |
|
|
5
2
维护htaccess文件的内容看起来是一场噩梦。此外,您声明的目标是防止未经身份验证 使用者 无法访问此内容-因此该方法不适用于以下目的: 多个用户可能来自同一IP地址 单个用户会话可能来自多个地址。
如果您想防止内容流失,并且不想使用HTTP AuthenitAction,那么将所有文件访问包装在附加的逻辑层中是唯一明智的选择。另外,您不知道使用PHP来实现这一点 是 一个问题-你测试过吗?我想你会惊讶于它能提供多大的吞吐量,特别是如果你使用操作码缓存的话。
C |
|
|
6
0
我编写了一个动态web应用程序并将其部署在WebSphere应用程序服务器上,下面是我保护静态文件的方法:
在web.xml中,它将告诉您的web服务器使用基于表单的身份验证(下面给出了使用登录名的代码)。
您可以声明您的安全资源,并且每当用户尝试访问这些资源时,容器都会自动检查用户是否经过身份验证。甚至您也可以使用安全资源附加角色。为此,我在web.xml中添加了以下代码
因此,在用户以角色role1和role2登录之前,此代码不会让用户看到任何静态文件(因为/*)。因此,通过这种方式,您可以保护您的资源。 |
|
|
7
0
如果您使用的是apache,则可以在.htaccess或httpd.conf文件中进行如下配置。下面是阻止访问*.inc文件的示例。这对我很有用。
http://www.ducea.com/2006/07/21/apache-tips-tricks-deny-access-to-certain-file-types/ . |
|
|
8
0
你所有的静态文件 你必须从服务器上发送它们 在webroot中 ,可以保护除HEAD之外的所有HTTP方法。 如果您获得授权,您可以发出一个head请求,通过header发送filecontent作为body。 当然,这是昂贵的,但你是受保护的,你有同样的行为。 |
|
9
0
我可能会有一个基于
1-使用PHP页面对用户进行身份验证
3-然后在htaccess中,您可以检查HTTP_REFERER中的密钥,如下所示:
4-最后,如果你想让它更具动态性,而不是每次都使用相同的键,你可以使用
但请记住,iframe+HTTP\u REFERER的行为可能会因浏览器会话和远程地址的不同而有所不同,因此它的有限性。。。 |