我有一个用于在Nodejs中编码的移动应用程序的服务器。 用户可以上传一些只有他可以访问的照片。 为此,我通过快速静态路由提供照片,检查令牌。
用户通过表格在服务器快速路线上传照片
$http.post('myserver.it/user/:iduser/photo', {'photo':blob})
Nodejs服务器加载图像并将其保存在
下的文件系统中 ./photos/user/:iduser/photos
然后用户的图像可以
http://myserver.it/user/:iduser/photo/:idphoto?token=######
服务器检查令牌,如果用户获得授权,则获取照片。
效果很好,但我想知道它是否是一个很好的解决方案。
现在我使用免费计划将它部署在heroku上。这是实现此功能的好方法吗? 谢谢
答案 0 :(得分:0)
取决于你对“好”和“安全”的定义,但通常没有。您在URL中公开了令牌,因此拥有该URL的任何人都可以获取该用户的照片。其次,您是通过HTTP进行的,因此即使您将令牌移至标头或Cookie,同一网络上的任何人都可以窃取该令牌。
我的第一个想法是移动应用程序,不要在单个用户的服务器上放置东西。只需在当地存储。
如果必须将其放在服务器上,请将其保存到更大容量的位置,例如S3或类似服务。 Heroku文件系统经常消失,因此您无法在那里保存并期望它保留。