支援的版本:目前 (17) / 16 / 15 / 14 / 13
開發版本:devel
不支援的版本:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2 / 7.1

第 20 章 客戶端認證

當客戶端應用程式連線到資料庫伺服器時,它會指定要以哪個 PostgreSQL 資料庫使用者名稱連線,這與以特定使用者身分登入 Unix 電腦非常相似。 在 SQL 環境中,活動的資料庫使用者名稱決定了對資料庫物件的存取權限 — 有關更多資訊,請參閱第 21 章。 因此,限制哪些資料庫使用者可以連線至關重要。

注意

第 21 章中所述,PostgreSQL 實際上是根據角色進行權限管理。在本章中,我們始終使用資料庫使用者來表示具有 LOGIN 權限的角色

認證是資料庫伺服器建立客戶端身分,並進而確定是否允許客戶端應用程式(或執行客戶端應用程式的使用者)以請求的資料庫使用者名稱連線的過程。

PostgreSQL 提供多種不同的客戶端認證方法。 用於驗證特定客戶端連線的方法可以根據(客戶端)主機位址、資料庫和使用者來選擇。

PostgreSQL 資料庫使用者名稱在邏輯上與伺服器運行的作業系統的使用者名稱是分開的。 如果特定伺服器的所有使用者也都具有伺服器機器上的帳戶,那麼分配與其作業系統使用者名稱匹配的資料庫使用者名稱是有意義的。 但是,接受遠端連線的伺服器可能有很多沒有本機作業系統帳戶的資料庫使用者,在這種情況下,資料庫使用者名稱和作業系統使用者名稱之間不需要有任何關聯。

提交更正

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