使用密码创建用户
通常,你应该避免在应用程序中使用默认数据库角色(通常为 postgres
)。你应该创建一个具有较低权限级别的用户。在这里我们制作一个名为 niceusername
并给它一个密码 very-strong-password
CREATE ROLE niceusername with PASSWORD 'very-strong-password' LOGIN;
问题在于,输入到 psql
控制台的查询会保存在用户主目录的历史文件 .psql_history
中,并且可能会记录到 PostgreSQL 数据库服务器日志中,从而暴露密码。
要避免这种情况,请使用\password
命令设置用户密码。如果发出该命令的用户是超级用户,则不会询问当前密码。 (必须是超级用户才能更改超级用户的密码)
CREATE ROLE niceusername with LOGIN;
\password niceusername