如何在Python中安全地存储数据库密码?

时间:2013-06-26 15:37:27

标签: python database security passwords

在PHP中,保护数据库登录凭据的可接受方法是将它们存储在Web根目录之外,并将include()文件与密码存储在一起。 MySQL数据库登录凭据如何安全地存储在Python应用程序中?

1 个答案:

答案 0 :(得分:5)

嗯,这样做的一种方法是将密码放在一个单独的config / ini文件中,该文件部署在项目中。然后,将此文件的路径传递给应用程序的主条目,例如:

python main.py --config=/path/to/config.ini

请注意,您需要解析此--config参数(请参阅argparse),然后阅读并解析config.ini文件。

<强>更新: 由于您提到了Web应用程序,还有另一种传递配置信息的方法 - 通过environ。例如,如果您使用mod_wsgi,则可以将其推送到wsgi指令中:

SetEnv my_namespace.some_param some_value

然后,可以通过os.environ

在应用程序中访问此值
import os
os.environ['my_namespace.some_param']