在json / CPickle中存储配置文件的安全问题

时间:2012-03-05 13:37:41

标签: python json security configuration-files pickle

我试图找出它,这是一种最安全,最灵活的解决方案,用于在配置文件中存储一些数据库连接和其他私人信息的凭据。 这是一个python模块,用于登录系统中用户活动历史记录的不同处理程序(mongodb,mysqldb,文件等)。

这个日志记录模块附带了一个处理程序,我需要在那里为每个处理程序加载配置文件。 I.E.数据库,用户,通行证,表格等。

经过对Web和stackoverflow的一些研究后,我刚刚看到了Json和CPickle之间的安全风险比较,但是关于eval方法和类型限制,不仅仅是配置文件存储问题。

我想知道在json中存储凭据是否是一个好主意,因为在服务器中有一个.json配置文件(日志处理程序将从中读取数据)涉及安全风险。我知道这个.json文件可以通过http请求检索。如果参数存储在.py代码中的python对象中,我想有更多的安全性,因为服务器首先会解释该文件的任何请求,但是我失去了模块化和易修改的灵活性这些数据。

在将这种配置文件存储在服务器中并由某些Python类访问时,您对此类安全问题有何建议? 提前致谢, Luchux。

1 个答案:

答案 0 :(得分:0)

我考虑加密凭证文件。使用它的过程将需要一个密钥/密码来解密它,您可以将其存储在其他地方 - 甚至可以在服务器启动时以交互方式输入它。这样你就没有一点失败(当然,一个坚定的入侵者最终可能会将这些碎片放在一起)。

(当然,您也应该尝试保护服务器,以便您的凭据不能仅通过http请求获取)