我开发了一个上传和播放的脚本删除图像。图像将保存到webroot / images等目录中。单击发布按钮时,与每个用户上载相关的文件名将保存在数据库中。在此之前,图像将按顺序上传,以便我可以显示预览。除了允许用户删除其他用户图像的安全漏洞外,一切似乎都能正常工作。例如:任何用户都可以复制图像的文件名。将它注入删除脚本。有没有任何机制来防止这个问题。
希望这个解释并不乏味,有点难以解释。
答案 0 :(得分:2)
在存储图像文件名的数据库表中,为拥有该图像的user_id
添加一个字段。
当调用删除操作时,在表中查找以查看当前登录用户是否与他们尝试删除的图像相关联。如果表中的user_id
与登录用户不匹配,则不允许删除。
答案 1 :(得分:1)
您必须在上传前更改图片的文件名。在这种情况下,时间戳最好。出于安全考虑,在删除图像时,您必须检查文件是否属于当前用户。