如何锁定,防止更改上传的文件

时间:2017-07-12 17:35:44

标签: php linux apache .htaccess

我正在开发一个跟踪文件上传和修订的Web应用程序。项目准备就绪后,将提交审批流程。我想,在“提交审批”时锁定所有项目附加文件以防止进一步更改。

文件上传由我自己的简单表单处理,文件在mySql数据库中进行跟踪。

是否有将文件设置为只读,因此无法删除,重命名,移动等等但仍然可以查看? (甚至通过FTP或cPanel文件管理器防止更改)

这个想法是为了保护已经批准的内容的完整性。至少我将使用.htaccess来阻止直接查看uploads文件夹。

显然,有人可以通过SSH连接到服务器和SUDO SU并做任何事情,但是,我正在考虑那些需要GUI的技术含量较低的人。

1 个答案:

答案 0 :(得分:0)

您需要应用程序级别控制,而不是操作系统级别控制。即,不要将文件设置为只读。相反,让您的应用程序识别项目处于“已提交”状态,并禁用允许用户更改它们的功能。

如果您担心有人在项目应用程序之外使用FTP或cPanel更改文件,那么您可能会遇到人事问题,而不是技术问题。我从不擅长使用技术解决人事问题。

也就是说,为了进一步确保没有发生操作系统级别的更改,您可以在项目提交时生成所有组件文件内容的哈希值,然后将这些哈希值与数据库一起存储在数据库中。项目数据。这将允许您在以后的任何日期确定文件是否已更改。