當指定 trust
認證時,PostgreSQL 假設任何能連線到伺服器的人都被授權使用他們指定的任何資料庫使用者名稱(包括超級使用者名稱稱)訪問資料庫。當然,database
和 user
列中的限制仍然適用。此方法僅應用於對伺服器連線有足夠作業系統級別保護的情況下。
trust
認證對於單使用者工作站上的本地連線是合適且非常方便的。它通常 不 適用於多使用者機器上。但是,如果您透過檔案系統許可權限制對伺服器的 Unix-domain socket 檔案的訪問,則可能可以在多使用者機器上使用 trust
。為此,請按照第 19.3 節中的描述設定 unix_socket_permissions
(以及可能的 unix_socket_group
)配置引數。或者,您可以設定 unix_socket_directories
配置引數,將 socket 檔案放在適當受限制的目錄中。
僅設定檔案系統許可權對 Unix-socket 連線有幫助。本地 TCP/IP 連線不受檔案系統許可權的限制。因此,如果您想為本地安全使用檔案系統許可權,請從 pg_hba.conf
中刪除 host ... 127.0.0.1 ...
行,或將其更改為非 trust
認證方法。
trust
認證僅適用於 TCP/IP 連線,前提是您信任 pg_hba.conf
中指定 trust
的所有允許連線到伺服器的機器上的所有使用者。除了從 localhost (127.0.0.1) 連線之外,很少有合理的情況會為任何 TCP/IP 連線使用 trust
。
如果您在文件中看到任何不正確、與您對特定功能的實際經驗不符或需要進一步說明的內容,請使用此表格報告文件問題。