Phiên bản được hỗ trợ:hiện tại(17) /16 / 15 / 14 / 13
Phiên bản phát triển:18 / Devel
Phiên bản không được hỗ trợ:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2
Tài kèo bóng đá pháp này dành cho phiên bản không được hỗ trợ của PostgreSQL.
Bạn có thể muốn xem cùng một trang chohiện tạiPhiên bản hoặc một trong kèo bóng đá pháp phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

20.1. Thepg_hba.kèo bóng đá phápFILE

Xác thực máy khách được kiểm soát bởi kèo bóng đá pháp cấu hình, theo truyền thống nào được đặt tênpg_hba.kèo bóng đá phápvà được lưu trữ trong cơ sở dữ kèo bóng đá pháp Thư mục dữ kèo bóng đá pháp của cụm. (HBAlà viết tắt của xác thực dựa trên máy chủ.) Mặc địnhpg_hba.kèo bóng đá phápTệp được cài đặt khi dữ kèo bóng đá pháp thư mục được khởi tạo bởiinitDB. Nó có thể đặt kèo bóng đá pháp cấu hình xác thực Ở nơi khác, tuy nhiên; XemHBA_FILETham số cấu hình.

Định dạng chung củapg_hba.kèo bóng đá phápkèo bóng đá pháp là một tập hợp các bản ghi, một bản đường kẻ. Các dòng trống bị bỏ qua, như bất kỳ văn bản nào sau#Nhân vật bình luận. Một kỷ lục được tạo ra của một số trường được phân tách bằng không gian và/hoặc tab. kèo bóng đá pháp trường có thể chứa khoảng trắng nếu giá trị trường được trích dẫn. kèo bóng đá pháp bản ghi không thể được tiếp tục trên kèo bóng đá pháp dòng.

Mỗi bản ghi chỉ định loại kết nối, địa chỉ IP của máy khách phạm vi (nếu có liên quan cho loại kết nối), tên cơ sở dữ kèo bóng đá pháp, một Tên người dùng và phương thức xác thực sẽ được sử dụng cho Kết nối phù hợp với các tham số này. Bản ghi đầu tiên với một phù hợp với loại kết nối, địa chỉ máy khách, cơ sở dữ kèo bóng đá pháp được yêu cầu và Tên người dùng được sử dụng để thực hiện xác thực. Không có"Fall-qua"hoặc"Sao lưu": nếu một bản ghi được chọn và Xác thực thất bại, hồ sơ tiếp theo không được xem xét. Nếu như Không có bản ghi phù hợp, truy cập bị từ chối.

Một bản ghi có thể có một trong bảy định dạng

cục bộCơ sở dữ kèo bóng đá pháp  user  auth-method[auth-exption]
chủ nhàCơ sở dữ kèo bóng đá pháp  user  CIDR-ADDRESS  auth-method[auth-option]
hostsslCơ sở dữ kèo bóng đá pháp  user  CIDR-ADDRESS  auth-method[auth-option]
hostnosslCơ sở dữ kèo bóng đá pháp  user  CIDR-ADDRESS  auth-method[auth-option]
chủ nhàcơ sở dữ kèo bóng đá pháp  user  IP-ADDRESS  Mặt nạ IP  auth-method[auth-option]
hostsslcơ sở dữ kèo bóng đá pháp  user  IP-ADDRESS  Mặt nạ IP  auth-method[auth-option]
hostnosslCơ sở dữ kèo bóng đá pháp  user  IP-ADDRESS  Mặt nạ IP  auth-method[auth-option]

Ý nghĩa của kèo bóng đá pháp trường như sau:

cục bộ

Bản ghi này phù hợp với kèo bóng đá pháp lần thử kết nối bằng cách sử dụng Ổ cắm tên miền đơn vị. Không có một bản ghi của loại này, kèo bóng đá pháp kết nối ổ cắm tên miền Unix không được phép.

máy chủ

Bản ghi này phù hợp với kèo bóng đá pháp nỗ lực kết nối được thực hiện bằng cách sử dụng TCP/IP.hostBản ghi phù hợpSSLhoặc khôngSSLKết nối cố gắng.

Lưu ý:Kết nối TCP/IP từ xa sẽ không được có thể trừ khi máy chủ được bắt đầu với một Giá trị phù hợp choListen_addressestham số cấu hình, vì hành vi mặc định là Chỉ nghe kèo bóng đá pháp kết nối TCP/IP chỉ trên cục bộ địa chỉ loopbackLocalhost.

hostssl

Bản ghi này phù hợp với kèo bóng đá pháp lần thử kết nối được thực hiện bằng cách sử dụng TCP/IP, nhưng chỉ khi kết nối được tạo bằngSSLMã hóa.

Để sử dụng tùy chọn này, máy chủ phải được xây dựng bằngSSLHỗ trợ. Hơn nữa,SSLPhải là được bật tại máy chủ thời gian bắt đầu bằng cách đặtSSLtham số cấu hình (xemPostgreSQL: TàĐể biết thêm thông tin).

hostnossl

Loại bản ghi này có logic ngược lại vớihostssl: Nó chỉ phù hợp với kèo bóng đá pháp lần thử kết nối được thực hiện qua TCP/IP không sử dụngSSL.

Cơ sở dữ kèo bóng đá pháp

Chỉ định tên cơ sở dữ kèo bóng đá pháp nào mà bản ghi này phù hợp. Các giá trịtất cảChỉ định rằng nó phù hợp với tất cả các cơ sở dữ kèo bóng đá pháp. Giá trịSoriluSerChỉ định rằng bản ghi khớp với Nếu cơ sở dữ kèo bóng đá pháp được yêu cầu có cùng tên với Người dùng được yêu cầu. Giá trịSameroleChỉ định rằng người dùng được yêu cầu phải là thành viên của Vai trò cùng tên với cơ sở dữ kèo bóng đá pháp được yêu cầu. (giống nhaulà một lỗi thời nhưng vẫn được chấp nhận chính tảSamerole.) Nếu không, đây là tên của một cụ thểkèo bóng đá phápCơ sở dữ kèo bóng đá pháp. Nhiều tên cơ sở dữ kèo bóng đá pháp có thể được cung cấp bởi tách chúng với dấu phẩy. Một tệp riêng biệt chứa Tên cơ sở dữ kèo bóng đá pháp có thể được chỉ định bằng cách trước tên tệp với@.

người dùng

Chỉ định tên người dùng cơ sở dữ kèo bóng đá pháp nào có thể khớp với bản ghi này. Giá trịtất cảChỉ định rằng nó phù hợp với tất cả người dùng. Nếu không, đây là tên của một Người dùng cơ sở dữ kèo bóng đá pháp cụ thể hoặc tên nhóm đi trước+. (Nhớ lại rằng không có thật Sự khác biệt giữa người dùng và nhóm trongkèo bóng đá pháp; Một+Mark thực sự có nghĩa là"Kết hợp bất kỳ vai trò nào trực tiếp hoặc kèo bóng đá pháp thành viên gián tiếp của vai trò này ", trong khi một tên không có a+Mark chỉ phù hợp với điều đó Vai trò cụ thể.) Nhiều tên người dùng có thể được cung cấp bởi tách chúng với dấu phẩy. Một kèo bóng đá pháp riêng biệt chứa Tên người dùng có thể được chỉ định bằng cách trước tên kèo bóng đá pháp với@.

CIDR-ADDRESS

Chỉ định phạm vi địa chỉ IP của máy khách mà điều này ghi lại kèo bóng đá pháp trận đấu. Nó chứa một địa chỉ IP trong tiêu chuẩn ký hiệu thập phân chấm và chiều dài mặt nạ CIDR. (IP Địa chỉ chỉ có thể được chỉ định bằng số, không phải là miền hoặc tên máy chủ.) Độ dài mặt nạ cho biết số lượng kèo bóng đá pháp bit bậc cao của địa chỉ IP máy khách phải khớp. Bit ở bên phải của điều này phải bằng không trong IP đã cho Địa chỉ. Không được có bất kỳ khoảng trắng nào giữa IP Địa chỉ, The/và Mặt nạ CIDR chiều dài.

Ví dụ điển hình của ACIDR-ADDRESS172.20.143.89/32cho một máy chủ hoặc172.20.143.0/24cho một nhỏ Mạng hoặc10.6.0.0/16cho a lớn hơn. Để chỉ định một máy chủ duy nhất, hãy sử dụng mặt nạ CIDR là 32 cho IPv4 hoặc 128 cho IPv6. Trong một địa chỉ mạng, không bỏ qua Trailing Zeroes.

Một địa chỉ IP được đưa ra ở định dạng IPv4 sẽ khớp với IPv6 kèo bóng đá pháp kết nối có địa chỉ tương ứng, cho ví dụ127.0.0.1sẽ phù hợp với Địa chỉ IPv6:: FFFF: 127.0.0.1. MỘT Mục nhập được đưa ra ở định dạng IPv6 sẽ chỉ khớp với IPv6 kết nối, ngay cả khi địa chỉ được đại diện nằm trong Phạm vi IPv4-in-IPv6. Lưu ý rằng kèo bóng đá pháp mục ở định dạng IPv6 sẽ bị từ chối nếu thư viện C của hệ thống không có hỗ trợ cho địa chỉ IPv6.

Trường này chỉ áp dụng chomáy chủ, hostsslhostnosslRecords.

IP-ADDRESS
Mặt nạ IP

Những trường này có thể được sử dụng thay thế choCIDR-ADDRESSKý hiệu. Thay vì chỉ định chiều dài mặt nạ, mặt nạ thực tế là được chỉ định trong một cột riêng biệt. Ví dụ,255.0.0.0đại diện cho mặt nạ CIDR IPv4 Chiều dài 8 và255.255.255.255đại diện cho chiều dài mặt nạ CIDR là 32.

Những trường này chỉ áp dụng chomáy chủ, hostsslhostnosslRecords.

auth-method

Chỉ định phương thức xác thực để sử dụng khi Kết nối thông qua hồ sơ này. kèo bóng đá pháp lựa chọn có thể là tóm tắt ở đây; Chi tiết trongPhần 20.2.

Trust

Cho phép kết nối vô điều kiện. Phương pháp này Cho phép bất cứ ai có thể kết nối vớikèo bóng đá phápMáy chủ cơ sở dữ kèo bóng đá pháp đến Đăng nhập như bất kỳkèo bóng đá phápNgười dùng họ thích, mà không cần mật khẩu. Nhìn thấyPhần 20.2.1cho chi tiết.

từ chối

Từ chối kết nối vô điều kiện. Đây là hữu ích cho"Lọc ra"Một số máy chủ nhất định từ một nhóm.

MD5

Yêu cầu khách hàng cung cấp một MD5 được mã hóa mật khẩu để xác thực. Nhìn thấyPhần 20.2.2Để biết chi tiết.

Crypt

Lưu ý:Tùy chọn này chỉ được khuyến nghị để giao tiếp với máy khách trước 7.2.

Yêu cầu khách hàng cung cấp ACrypt ()-encrypted Mật ​​khẩu cho xác thực.MD5bây giờ là được đề xuất trênCrypt. Nhìn thấyPhần 20.2.2Để biết chi tiết.

Mật khẩu

Yêu cầu khách hàng cung cấp một mật khẩu để xác thực. Vì mật khẩu là được gửi trong văn bản rõ ràng qua mạng, điều này không nên được sử dụng trên kèo bóng đá pháp mạng không tin cậy. Nó cũng không Thường làm việc với kèo bóng đá pháp ứng dụng khách hàng có ren. Nhìn thấyPhần 20.2.2Để biết chi tiết.

KRB5

Sử dụng Kerberos V5 để xác thực người dùng. Đây là Chỉ có sẵn cho kèo bóng đá pháp kết nối TCP/IP. Nhìn thấyPhần 20.2.3Để biết chi tiết.

Nhận dạng

lấy tên người dùng hệ điều hành của người dùng của máy khách (cho kết nối TCP/IP bằng cách liên hệ với xác định máy chủ trên máy khách, cho các kết nối cục bộ bằng cách lấy nó từ hệ điều hành) và kiểm tra xem có người dùng được phép kết nối như được yêu cầu Người dùng cơ sở dữ kèo bóng đá pháp bằng cách tham khảo bản đồ được chỉ định sau TheNhận dạngTừ khóa. Nhìn thấyPhần 20.2.4Để biết chi tiết.

LDAP

Xác thực bằng LDAP cho máy chủ trung tâm. Nhìn thấyPhần 20.2.5để biết chi tiết.

PAM

Xác thực bằng cách sử dụng xác thực có thể cắm được Dịch vụ mô -đun (PAM) được cung cấp bởi hoạt động hệ thống. Nhìn thấyPhần 20.2.6cho chi tiết.

auth-option

Ý nghĩa của trường tùy chọn này phụ thuộc vào được chọn Phương pháp xác thực. Chi tiết xuất hiện bên dưới.

Các kèo bóng đá pháp được bao gồm bởi@Cấu trúc là đọc dưới dạng danh sách kèo bóng đá pháp tên, có thể được phân tách bằng một trong hai khoảng trắng hoặc dấu phẩy. Nhận xét được giới thiệu bởi#, giống như trongpg_hba.kèo bóng đá phápvà lồng nhau@Cấu trúc được cho phép. Trừ khi tên kèo bóng đá pháp tiếp theo@là một con đường tuyệt đối, nó là được coi là liên quan đến thư mục có chứa tham chiếu tài kèo bóng đá pháp.

kể từpg_hba.kèo bóng đá phápBản ghi là được kiểm tra tuần tự cho mỗi lần thử kết nối, thứ tự của kèo bóng đá pháp hồ sơ là đáng kể. Thông thường, kèo bóng đá pháp hồ sơ trước đó sẽ có kèo bóng đá pháp tham số khớp kết nối chặt chẽ và xác thực yếu hơn kèo bóng đá pháp phương thức, trong khi kèo bóng đá pháp bản ghi sau này sẽ có kèo bóng đá pháp tham số khớp lỏng hơn và phương pháp xác thực mạnh hơn. Ví dụ, người ta có thể ước sử dụngTrustXác thực cho cục bộ Kết nối TCP/IP nhưng yêu cầu mật khẩu cho TCP/IP từ xa kết nối. Trong trường hợp này, một bản ghi chỉ địnhTrustXác thực cho kèo bóng đá pháp kết nối từ 127.0.0.1 sẽ xuất hiện trước một bản ghi chỉ định mật khẩu Xác thực cho phạm vi rộng hơn của IP máy khách được phép địa chỉ.

Thepg_hba.kèo bóng đá phápkèo bóng đá pháp được đọc trên Khởi động và khi quá trình máy chủ chính nhận đượcSIGHUPTín hiệu. Nếu bạn chỉnh sửa kèo bóng đá pháp trên một hệ thống hoạt động, bạn sẽ cần Để báo hiệu máy chủ (sử dụngpg_ctl Tải lạihoặcKill -hup) để làm cho nó đọc lại kèo bóng đá pháp.

Tip:Để kết nối với cơ sở dữ kèo bóng đá pháp cụ thể, người dùng không chỉ vượt quapg_hba.kèo bóng đá phápKiểm tra, nhưng phải cóKết nốiĐặc quyền cho cơ sở dữ kèo bóng đá pháp. Nếu bạn muốn hạn chế Người dùng có thể kết nối với cơ sở dữ kèo bóng đá pháp nào, thường dễ dàng hơn Kiểm soát điều này bằng cách cấp/thu hồikết nốiĐặc quyền hơn là đặt kèo bóng đá pháp quy tắc vàopg_hba.kèo bóng đá phápMục nhập.

Một số ví dụ vềpg_hba.kèo bóng đá phápmục được hiển thị trongVí dụ 20-1. Nhìn thấy Phần tiếp theo để biết chi tiết về xác thực khác nhau Phương thức.

Ví dụ 20-1. Ví dụpg_hba.kèo bóng đá phápMục nhập

# Cho phép bất kỳ người dùng nào trên hệ thống cục bộ kết nối với bất kỳ cơ sở dữ liệu nào
# Bất kỳ tên người dùng cơ sở dữ liệu nào sử dụng ổ cắm tên miền Unix (mặc định cho cục bộ
# kết nối).
#
# Nhập phương thức sử dụng CIDR-Sunddress cơ sở dữ liệu
Địa phương tất cả sự tin tưởng

# Tương tự bằng cách sử dụng các kết nối TCP/IP loopback cục bộ.
#
# Nhập phương thức sử dụng CIDR-Sunddress cơ sở dữ liệu
Lưu trữ tất cả 127.0.0.1/32 Trust     

# Giống như dòng cuối cùng nhưng sử dụng cột netmask riêng biệt
#
# Nhập phương thức Mask IP-iddress của cơ sở dữ liệu cơ sở dữ liệu
Lưu trữ tất cả 127.0.0.1 255.255.255.255 Trust     

# Cho phép bất kỳ người dùng nào từ bất kỳ máy chủ nào có địa chỉ IP 192.168.93.x để kết nối
# đến cơ sở dữ liệu "postgres" dưới dạng cùng tên người dùng xác định các báo cáo cho
# Kết nối (thường là tên người dùng UNIX).
# 
# Nhập phương thức sử dụng CIDR-Sunddress cơ sở dữ liệu
Máy chủ Postgres Tất cả

# Cho phép người dùng từ máy chủ 192.168.12.10 để kết nối với cơ sở dữ liệu
# "Postgres" nếu mật khẩu của người dùng được cung cấp chính xác.
# 
# Nhập phương thức sử dụng CIDR-Sunddress cơ sở dữ liệu
Máy chủ Postgres Tất cả 192.168.12.10/32 MD5

# Trong trường hợp không có các dòng "máy chủ" trước đó, hai dòng này sẽ
# Từ chối tất cả các kết nối từ 192.168.54.1 (vì mục nhập đó sẽ là
# khớp trước), nhưng cho phép kết nối Kerberos 5 từ mọi nơi khác
# trên Internet.  Mặt nạ không có nghĩa là không có bit nào của IP máy chủ
# Địa chỉ được coi là để nó phù hợp với bất kỳ máy chủ.
# 
# Nhập phương thức sử dụng CIDR-Sunddress cơ sở dữ liệu
lưu trữ tất cả 192.168.54.1/32 từ chối
lưu trữ tất cả 0,0.0.0/0 krb5

# Cho phép người dùng từ máy chủ 192.168.x.x kết nối với bất kỳ cơ sở dữ liệu nào, nếu
# Họ vượt qua kiểm tra nhận dạng.  Nếu, ví dụ, nhận dạng nói rằng người dùng là
# "Bryanh" và anh ấy yêu cầu kết nối với tư cách là người dùng PostgreSQL "Guest1",
# Kết nối được cho phép nếu có một mục nhập trong pg_ident.kèo bóng đá pháp cho bản đồ
# "Omicron" nói rằng "Bryanh" được phép kết nối là "Guest1".
#
# Nhập phương thức sử dụng CIDR-Sunddress cơ sở dữ liệu
Lưu trữ tất cả 192.168.0.0/16 Nhận dạng Omicron

# Nếu đây là ba dòng duy nhất cho các kết nối cục bộ, chúng sẽ
# Cho phép người dùng cục bộ chỉ kết nối với cơ sở dữ liệu của riêng họ (cơ sở dữ liệu
# có cùng tên với tên người dùng cơ sở dữ liệu của họ) ngoại trừ quản trị viên
# và các thành viên của "hỗ trợ", người có thể kết nối với tất cả các cơ sở dữ liệu.  Các tập tin
# $ Pgdata/quản trị viên chứa một danh sách tên của quản trị viên.  Mật khẩu
# được yêu cầu trong mọi trường hợp.
#
# Nhập phương thức sử dụng CIDR-Sunddress cơ sở dữ liệu
Local SakeUser tất cả MD5
cục bộ tất cả @Admins md5
Local All +Hỗ trợ MD5

# Hai dòng cuối cùng ở trên có thể được kết hợp thành một dòng:
cục bộ tất cả @quản trị viên,+hỗ trợ md5

# Cột cơ sở dữ liệu cũng có thể sử dụng danh sách và tên tệp:
DB1, DB2,@demodbs tất cả MD5