我是网络开发的新手。目前,我正在使用GWT开发Web应用程序。我使用servlet上传文件。然后该文件将写入\war
中的目录。但我认为这不安全,因为我可以通过在浏览器中输入一些地址直接获取文件。谁能告诉我如何在服务器上安全地存储文件?提前谢谢。
答案 0 :(得分:1)
您可以选择将文件存储在执行环境之外,而不是将未加密的文件存储在文件系统中。
有许多选项,例如将文件存储在数据库中,然后只有在提供正确的凭据时才允许访问。
或者,您可以考虑使用基于云的文件存储解决方案,例如Amazon S3,它可以很好地扩展,并允许您保护文件并生成安全URL以在需要时检索文件。
将文件存储在执行环境之外还有一个优点,即您可以扩展到多个执行环境,并且可以跨节点访问这些文件。
如果您真的想要或者需要将文件存储在文件系统上,并且预计不会增加执行环境的数量,那么您可以使用ServletFilter来拦截访问文件的请求,并且只提供它们如果提供了正确的凭证。