2012-01-04 71 views
0

我是网络开发新手。而目前,我正在使用GWT开发一个Web应用程序。我使用一个servlet来上传文件。然后该文件将写入\war中的目录。但我认为这是不安全的,因为我可以通过在浏览器中输入一些地址直接获取文件。谁能告诉我如何安全地在服务器上存储文件?提前致谢。如何安全地在服务器上存储文件

回答

1

您可以选择将文件存储在执行环境之外,而不是在文件系统上存储未加密的文件。

有许多的这个选项,如文件存储在数据库中,然后只允许访问是否提供了正确的凭据。

或者,你可以看看使用基于云的文件存储解决方案,如Amazon的S3,这很好地进行扩展,并允许您以确保文件并生成安全网址,在需要时检索文件。

存储您的执行环境之外的文件也有个好处,你可以扩展到多个执行环境,并且这些文件将横跨节点访问。

如果您真的想要或需要将文件存储在文件系统中,并且不希望增加执行环境的数量,那么您可以使用ServletFilter拦截访问文件的请求,并仅为它们提供服务如果提供了正确的凭证,则可以启动。

+0

感谢您的帮助。我有一些问题:你能告诉我如果我有一个pdf文件,我如何将它存储在数据库中?以及如何设置ServletFilter,你能否给我看一些关于ServletFilter的教程?谢谢。 – John 2012-01-05 00:01:31

+0

如果将其存储在war/WEB-INF目录中,则该文件将无法访问thro网址。 – 2012-01-05 02:28:52

+0

感谢您的建议。我试图将该文件存储在数据库的byte []中,并且它可以工作! – John 2012-01-05 03:28:16

相关问题