Joe*_*ann 49 html security image apache2 passenger
这是一个重要的安全问题,我相信这应该是可能的.
一个简单的例子:
您运行社区门户.用户已注册并上传他们的照片.只要允许显示图片,您的应用程序就会提供安全规则.例如,用户必须是系统各方的朋友,以便您可以查看其他人上传的图片.
问题出现了:有人可能会抓取您服务器的图像目录.但是您希望保护您的用户免受此类攻击.
如果可以将图像的二进制数据直接放入HTML标记中,则可以限制用户对用户的访问权限以及运行Web应用程序的组,并将图像数据直接传递给Apache用户和组. HTML.
那么唯一可能的弱点就是您的网络应用运行的用户的密码.
有可能吗?
bmb*_*bmb 86
在其他答案中描述了其他(更好)方法来保护您的文件,但是可以将图像嵌入到您的html中.
以<img>
这种方式使用标签:
<img src="data:image/gif;base64,xxxxxxxxxxxxx...">
Run Code Online (Sandbox Code Playgroud)
其中该xxxxx...
部分是gif图像数据的base64编码.
Not*_*tMe 12
如果我在images目录上需要安全性,我根本不会公开该目录.相反,我的img src属性将引用一个将userid和image id作为参数的页面.
该页面将验证该用户确实有权查看该图片.如果一切顺利,请将二进制文件发回.否则什么都不发
例如:
<img src="imgaccess.php?userid=1111&imgid=223423" />
Run Code Online (Sandbox Code Playgroud)
另外,我不会使用可猜测的id.而是坚持使用base 64编码guid的东西.