通过sqlalchemy,psycopg2连接到postgres时,如何不以明文显示密码?

时间:2016-05-10 07:03:52

标签: python postgresql sqlalchemy psycopg2

我目前正从Python脚本连接到Postgres数据库,我正在使用sqlalchemy with psycopg2

postgresql+psycopg2://user:password@host:port/dbname[?key=value&key=value...]

此Python脚本可供用户使用,密码以明文形式显示。如何使用加密密码?

1 个答案:

答案 0 :(得分:1)

通常,这可以通过几种不同的方式完成。

1。隐藏REST API背后的数据库

基本上,不要让用户直接访问数据库。提供类似REST API的界面或类似的东西,供用户与数据库交互。用户名和密码仅存储在服务器端。

2。创建另一个具有较少权限的数据库用户,并仅分发该用户。

您的postgres数据库可以有多个用户。不要为他们提供db所有者的用户名和密码。只需创建一个权限较少的用户(可能只读?)并分发该用户和密码。