2012-12-10 94 views
2

我正在构建一个便于上传文件的应用程序。应用程序将具有分配给文件并将用户分配给案例的情况。整个应用程序只能通过登录用户访问。保护通过PHP上传到服务器的文件

现在我的想法是为每个案例创建一个文件夹结构。显然,文件只能通过脚本提供,因此不需要公共下载。这些文件可能具有各种内容,主要是因为它是一个基于取证的应用程序。

我唯一的问题是,我不知道是否有可能阻止本地访问这些上传的文件。例如,阻止某人访问其托管的服务器并修改文件或仅访问文件。我可以加密文件并将密钥存储在数据库中吗?我知道如果数据库被占用,那么加密将是无用的?

有没有更好的方法来实现这个功能?有没有人有任何反馈,如何可以完成?

我有一个使用Zend Framework 2构建的基础应用程序,但是我正在制作一篇研究论文,而我在这里决定的将会大大影响我的研究。谢谢

+0

将加密文件和密钥存储在单独的物理服务器上的数据库中可提高安全性,因为攻击者现在需要破坏这两个服务器。 – xbonez

+1

您的代码库可能在某处存在数据库凭据。 –

+0

这是非常真实的。没有想到 –

回答

2

就像你说的那样,可以对文件进行加密,但最好先阻止访问服务器。一旦他们攻击你的Web服务器,是什么让你认为他们不能破解你的数据库?

此外,如果他们获得访问Web服务器,他们有权访问服务于加密文件的脚本。由于该脚本已具有解密文件的功能,因此获得访问权限将是小菜一碟。

长话短说:保护网络服务器本身。

+0

好了,基本上,忘记加密,只是提供最小的帐户访问网络服务器? –

+0

确实。每个有权访问您的脚本的人都可以读取解密它们所需的密码和代码,因此它将毫无用处。 – GolezTrol

+0

这个问题似乎指出了一些有趣的配置,可以帮助保护Ubuntu服务器:http://askubuntu.com/questions/146775/what-c​​an-be-done-to-secure-ubuntu-server –

相关问题