我正在创建一个基于浏览器的图像云服务,每个用户都有自己的图片文件夹。
我的问题是如何确保,其他用户或黑客无法访问外部文件夹。 需要考虑什么?
是的,例如足以检查会话变量?提前致谢!
答案 0 :(得分:0)
我只是通过检查会话变量来确定你的意思。
我会创建一个这样的设置:
\root
\userImages
\user1
\img1.png
\img2.png
\user2
\img1.png
\img2.png
\public
\index.php
我假设您将使用PHP或ASP.NET或类似的使用某种类型的服务器,如nginx或apahce。您可以将服务器根目录设置为公用文件夹。这意味着只有您的代码才能访问用户图像。
您可以使用PHP或其他语言查看会话信息,并查看用户是否经过身份验证。如果可以,我建议使用Mycrypt加密cookie数据。检查完身份验证后,您可以使用脚本获取文件并发回标头信息。这是一篇非常深入的文章,如果您真的想要一个操作方法,我认为它会对您有所帮助。 Protecting Images with PHP
如果您使用的是PHP,Laravel可以很好地处理会话和保护图像。