Postgresql
Postgresql 無法使用 usermap 進行對等身份驗證(提供的使用者名 (^dbuser^) 和經過身份驗證的使用者名 (^sysuser^) 不匹配)
我正在嘗試使用 usermap 對某些使用者進行對等身份驗證。我正在嘗試做的是映射使用者 mailreader,如您所見:
postgres=# \du List of roles Role name | Attributes | Member of ------------+------------------------------------------------+----------- mailreader | | {} postgres | Superuser, Create role, Create DB, Replication | {}
進入系統的使用者root,dovecot,postfix。因此,我編輯了我的
pg_ident.conf
並放置了以下內容:mailmap dovecot mailreader mailmap postfix mailreader mailmap root mailreader
我還編輯了
pg_hba.conf
並附加了以下內容:local mail all peer map=mailmap
當我嘗試通過
sudo psql -U mailreader -d mail
命令連接時,我得到:psql:致命:使用者“mailreader”的對等身份驗證失敗
錯誤。
我還嘗試了以下配置:
local mail all ident map=mailmap
沒有任何進展。
我可以幫忙嗎?
編輯 1
有關錯誤的日誌是:
2017-06-27 19:10:10 UTC [1188-1] mailreader@mail LOG: provided user name (mailreader) and authenticated user name (root) do not match 2017-06-27 19:10:10 UTC [1188-2] mailreader@mail FATAL: Peer authentication failed for user "mailreader" 2017-06-27 19:10:10 UTC [1188-3] mailreader@mail DETAIL: Connection matched pg_hba.conf line 90: "local all all peer"
最後我不得不評論這一行:
local all all peer
或將其放在以下行下方:
local mail all ident map=mailmap