我试图从 Python生成postgres
使用密码。hashlib
>>> import hashlib
>>> hashlib.md5("psql123").hexdigest()
2636d1ddc54901f98d011ffe050c0eb7
但是postgresql需要md5
前缀,所以
sudo -u postgres psql
ALTER USER postgres PASSWORD 'md52636d1ddc54901f98d011ffe050c0eb7';
psql123
但是,如果我用作密码,身份验证将失败。
如果我使用passlib
,我很好。见http://pythonhosted.org/passlib/lib/passlib.hash.postgres_md5.html
psql123
使用密码执行以下操作是可以的。
ALTER USER postgres PASSWORD 'md556074e7318bd4cee558faab0678a2fad';
我不明白警告passlib
想说什么。可以为postgres
用户使用此哈希吗?此外,它在文档中的哪个位置说username
必须是输入的一部分?
我认为这就是为什么postgres
无法理解hashlib
. 作为 LDAP 用户,我可以在 shell 中生成密码。postgres 有内置命令吗?有吗psycopg2
?好像没有。