PostgreSQL技術大講堂 - Part 9:pg_hba.conf配置
PostgreSQL從小白到專家,是從入門逐漸能力提升的一個系列教程,內容包括對PG基礎的認知、包括安裝使用、包括角色許可權、包括維護管理、、等內容,希望對熱愛PG、學習PG的同學們有幫助,歡迎持續關注CUUG PG技術大講堂。
Part 9: 例項連線訪問控制
內容1:PG例項訪問控制概述
內容2:pg_hba.conf 檔案
內容3:pg_hba.conf 名單格式
內容4:pg_hba.conf 常見配置例項
9.1、PG例項訪問控制概述
例項訪問控制就像是一道防火牆,用它來控制來自於不同主機、不同使用者是否允許訪問指定的資料庫、以及驗證方式。
9.2、pg_hba.conf檔案
客戶端認證是由一個配置檔案(通常名為pg_hba.conf並被存放在資料目錄中)控制(HBA表示基於主機的認證)。
在initdb初始化資料目錄時,它會安裝一個預設的pg_hba.conf檔案。不過我們也可以把認證配置檔案放在其它地方。
pg_hba.conf檔案的常用格式是一組記錄,每行一條。空白行將被忽略, #註釋字元後面的任何文字也被忽略。記錄不能跨行。
一條記錄由若干用空格/或製表符分隔的域組成。如果域值用雙引號包圍,那麼它可以包含空格。在資料庫、使用者或地址域中 引用一個關鍵字(例如,all或replication) 將使該詞失去其特殊 含義,並且只是匹配一個有該名字的資料庫、使用者或主機。
9.3、pg_hba.conf名單格式
TYPE:指定連線型別
local:表示本地連線,只對Unix/Linux系統有效,使用socket方式登入
host:表示主機透過TCP/IP連線
hostssl:表示主機連線需要SSL加密方式連線
DATABASE:指定連線的資料庫
all:表示所有的資料庫
db_name:表示指定的資料庫
replication:表示主備複製時的連線
USER:指定連線的使用者
all:表有所有使用者 ? user_name:表示指定的使用者
+group_name:表示一組使用者
@file_name:表示檔案中包含的使用者列表
ADDRESS:指定連線的客戶端
127.0.0.1/32:表示本地客戶端主機
0.0.0.0/0:表示所有客戶端主機
host_name:表示指定的主機名(hosts檔案中包含)
ip_addr/net_mask:表示指定的ip地址或者網段
pg_hba.conf 示例:
host all +g1 0.0.0.0/0 md5 #g1組
host all u1 192.168.18.0/24 md5 #某個網段
METHOD:指定驗證方式
trust:信任客戶端連線,無需提供密碼
scram-sha-256:這是當前提供的方法中最安全的一種,但是舊的客戶端庫不支援這種方法。
md5:它能防止口令嗅探並且防止口令在伺服器上以明文儲存,但是無法保護攻擊者想辦法從伺服器上竊取了口令雜湊的情況。
password:方法password以明文形式傳送口令,因此它對於口令“嗅探”攻擊很脆弱。
ident:該模式下系統會將請求發起者的作業系統使用者對映為PostgesSQL資料庫內 部使用者,並以該內部使用者的許可權登入,且此時無需提供登入密碼。作業系統使用者 與資料庫內部使用者之間的對映關係會記錄在pg_ident.conf檔案中。
peer:該模式使用連線發起端的作業系統名進行身份驗證。僅限於Linux、BSD、 Mac OS X和Solaris,並且僅可用於本地伺服器發起的連線。
reject:該模式表示拒絕所有請求。
9.4、pg_hba.conf常見配置例項
常見配置例項
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all trust
# IPv4 local connections:
host all all 127.0.0.1/32 trust
# IPv6 local connections:
host all all ::1/128 trust
# Allow replication connections from localhost, by a user with the
# replication privilege.
local replication all trust
host replication all 127.0.0.1/32 trust
host replication all ::1/128 trust
host all +g1 192.168.18.0/24 md5
host all cuug 0.0.0.0/0 identmap=cuug
以上就是Part 9 - PostgreSQL例項連線訪問控制 的內容,歡迎進群一起探討交流,釘釘交流群:35,82,24,60,往期影片文件可以聯絡cuug諮詢老師
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31544987/viewspace-2938313/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- PostgreSQL技術大講堂 - Part 2:PostgreSQL原始碼安裝SQL原始碼
- PG技術大講堂 - Part 3:PostgreSQL建庫與使用SQL
- PG技術大講堂 - Part 10:PostgreSQL資料庫管理SQL資料庫
- PG技術大講堂 - Part 4:PostgreSQL例項結構SQL
- PostgreSQL技術大講堂 - Part 8:PG物件許可權管理SQL物件
- PostgreSQL技術大講堂 - Part 6:PG使用者與角色管理SQL
- PostgreSQL技術大講堂 - Part 7:PG使用者schema相互關係SQL
- PostgreSQL技術大講堂 - 第31講:SQL調優技巧SQL
- PostgreSQL技術大講堂 - 第33講:並行查詢管理SQL並行
- PostgreSQL技術大講堂 - 第45講:poc-tpcc測試SQL
- PostgreSQL技術大講堂 - 第46講:poc-tpch測試SQL
- 從小白到專家 PostgreSQL技術大講堂 - Part 5:PG資料庫結構SQL資料庫
- PostgreSQL技術大講堂 - 第34講:調優工具pgBagder部署SQL
- PostgreSQL技術大講堂 - 第32講:資料庫引數調整SQL資料庫
- PG技術大講堂 - 第13講:PostgreSQL Full-Page Writes 全頁寫SQL
- 從小白到專家 PG技術大講堂 - Part 2:PG原始碼安裝原始碼
- RUP大講堂(第四講)-業務建模技術實踐
- 7 大主題、9 位技術大咖!龍蜥大講堂7月硬核直播預告搶先看,今天見
- 沃趣微講堂 | Oracle叢集技術(一)Oracle
- 今天開講,6 大演講主題、5 位技術大咖!龍蜥大講堂 5 月精彩直播預告搶先看
- 工信部ICpower大講堂(南京)開班,特邀國際名家做核心技術分享
- 【新炬網路名師大講堂】oracle application server之核心技術opmnOracleAPPServer
- PostgreSQL-訪問策略配置檔案pg_hba.conf檔案(八)SQL
- 中美技術人才矽谷大講堂 | JTalk 掘金線下活動第六期
- 大資料測試技術——課堂測試大資料
- 沃趣微講堂 | Oracle叢集技術(二):GI與Oracle RACOracle
- 【新炬網路名師大講堂】TUXEDO的配置最佳化之路一UX
- 【新炬網路名師大講堂】TUXEDO的配置最佳化之路二UX
- 技術面試官的9大誤區面試
- PostgreSQL TOAST 技術解析SQLAST
- PHP 中 9 大快取技術總結PHP快取
- 【新炬網路名師大講堂】AIX上的配置網路調優引數AI
- 資料蔣堂|倍增分段技術
- 資料蔣堂 | 倍增分段技術
- 煥新啟航,「龍蜥大講堂」2023 年度招募來了!13 場技術分享先睹為快
- 不要跟我講技術
- postgresql學習-Part 1SQL
- 沃趣微講堂 | Oracle叢集技術(四):叢集初始化資源層Oracle