【问题标题】:How to store sensitive files and only allow access to certain users如何存储敏感文件并只允许某些用户访问
【发布时间】:2012-12-11 23:03:56
【问题描述】:

我有一个网络应用程序,可让用户存储包含敏感信息的文件。 到目前为止,我已经编写了代码,以便如果他们查看文件,他们会通过 view.php?id=xx 并通过数据库进行检查以确认允许他们查看在所述文件中。例如,John 将 "information.pdf" 上传到文件夹 "uploads",该文件夹位于 "www.mysite.com/uploads" >,所以文件的确切路径是 "http://www.mysite.com/uploads/information.pdf",并且在数据库中,该文件的 id 为 2,所以他会通过 view.php?id=2.

问题

我如何阻止任何人直接进入确切路径并查看他的敏感文件?

我做了什么

编写代码只允许用户通过我的网站访问文件,而不是直接访问。

我已经查看了相同标题的推荐问题,但是没有运气。

任何帮助将不胜感激。

【问题讨论】:

    标签: php mysql database security directory


    【解决方案1】:

    请勿将其置于可公开访问的路径中,例如 http://www.mysite.com/uploads/。将其放在 htdocs 之外,并且只允许通过您的 view.php 访问

    如果您想为所有者提供下载工具,只需创建一个download.php,它检查权限的方式与view.php 相同,但不是查看它,而是让用户下载。

    【讨论】:

    • 我会试试的,谢谢!我需要给那个文件夹 777 权限吗?
    • 另外,如果文件在公共目录之外,我如何通过view.php 访问该文件?以前我会直接通过http://www.mysite.com/uploads/file.pdf 进行处理?我是否改为告诉它在/home/upload_directory 找到位于/home/public_html/ 目录之外的文件?
    • /home/upload_dir 很好。在view.php 中,您肯定通过文件路径而不是http URL 访问。如果需要,请使用权限 777。先试试低调的。
    猜你喜欢
    • 2012-05-26
    • 1970-01-01
    • 1970-01-01
    • 2022-01-15
    • 2017-01-07
    • 2014-06-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多