有沒有辦法從PostgreSQL服務器獲取登錄名單的加密密碼?獲取PostgreSQL登錄角色的加密密碼
爲了深入瞭解我的問題,我試圖通過Ansible管理postgres
用戶的密碼。爲此,我想檢查加密密碼的當前值(例如'md5...'
)以查看它是否是最新的。如果不是,我會執行相應的ALTER ROLL
命令來更新它。
我知道我可以使用pg_dumpall
到看到密碼,e.g:
$ pg_dumpall --roles-only
<snip>
CREATE ROLE postgres;
ALTER ROLE postgres WITH ... PASSWORD 'md5...';
但這似乎並不喜歡這樣做的一個非常可靠的方法。
將md5中的'pg_authid'中的密碼與encrypthion之前的用戶名連接在一起,因此將它與裸密碼的md5進行比較將不會有用。 (https://www.postgresql.org/docs/current/static/catalog-pg-authid.html) –