在我的开发网站上,我使用独立的SQL数据库文件users.db来存储用户登录详细信息。
我很想知道:我是否应该像PHPMyAdmin一样使用完整的MySQL集成到服务器?我现在的“解决方案”是否像我想的那样有风险?
我正在以这种方式处理它,因为这意味着可以通过SQLite3轻松访问许多实用程序,包括独立的桌面Python程序,但这是不安全的?该文件位于我的安全cgi-bin中,但有人可以自己动手并只下载整个数据库吗?
任何及所有建议或澄清表示赞赏, Ilmiont
答案 0 :(得分:2)
SQLite和MySQL都将数据存储在某些文件中。 如果允许HTTP用户访问这些文件,则两者都不安全。
通常,MySQL的默认配置会将数据库文件放入单独的非公共目录,而SQLite没有默认值,并允许您将文件放在任何位置。 但是当你意识到可能存在的问题时,SQLite就像MySQL一样安全。 (检查很简单;只需测试http://www.example.com/cgi-bin/users.db是否在外部工作。)
答案 1 :(得分:0)
首先,如果您使用的是Linux机器,不确定Windows,您可以设置允许访问该文件的用户和文件权限,但是您应该知道在权限方面您正在做什么。您要确定的另一件事是文件位置。不要将文件放在Web根目录中,将其放在无法从Web访问的其他位置,但可以访问您的应用程序。