支援的版本:目前 (17) / 16 / 15 / 14 / 13
開發版本:devel
不支援的版本:12 / 11

20.4. 信任認證 #

當指定 trust 認證時,PostgreSQL 會假設任何可以連線到伺服器的人,都可以使用他們指定的任何資料庫使用者名稱(甚至是超級使用者名稱)來存取資料庫。 當然,databaseuser 欄位中設定的限制仍然適用。 只有在對伺服器的連線有足夠的作業系統層級保護時,才應使用此方法。

trust 認證適用於且非常方便於單使用者工作站上的本機連線。 在多使用者機器上,它通常適合單獨使用。 但是,如果您使用檔案系統權限限制對伺服器 Unix 網域 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 認證方法。

僅當您信任 pg_hba.conf 行指定 trust 所允許連線到伺服器的每台機器上的每個使用者時,trust 認證才適用於 TCP/IP 連線。 除了來自 localhost (127.0.0.1) 的連線外,對任何 TCP/IP 連線使用 trust 很少是合理的。

提交更正

如果您在文件中發現任何不正確、與您特定功能的使用經驗不符,或需要進一步闡明的地方,請使用此表單回報文件問題。