Khi sử dụng hệ thống xác thực bên ngoài như nhận dạng hoặc GSSAPI, tên của người kèo bóng đá pháp hệ điều hành bắt đầu kết nối có thể không giống như người kèo bóng đá pháp cơ sở dữ liệu (vai trò) sẽ được sử dụng. Trong trường hợp này, bản đồ tên người kèo bóng đá pháp có thể được áp dụng để ánh xạ tên người kèo bóng đá pháp hệ điều hành cho người kèo bóng đá pháp cơ sở dữ liệu.MAP
=kèo bóng đá pháp bản đồ
Trong trường Tùy chọn trongpg_hba.conf
. Tùy chọn này được hỗ trợ cho tất cả các phương thức xác thực nhận tên người kèo bóng đá pháp bên ngoài.kèo bóng đá pháp bản đồ
tham số trongpg_hba.conf
Để chỉ ra bản đồ nào sẽ sử dụng cho từng kết nối riêng lẻ.
Bản đồ tên người kèo bóng đá pháp được xác định trong tệp bản đồ nhận dạng, theo mặc định được đặt tênpg_ident.conf
và được lưu trữ trong thư mục dữ liệu của cụm. (Tuy nhiên, có thể đặt tệp bản đồ ở nơi khác; xemIndent_FileTham số cấu hình.) Tệp bản đồ nhận dạng chứa các dòng của các biểu mẫu chung:
kèo bóng đá pháp bản đồ
Hệ thống-người kèo bóng đá pháp
cơ sở dữ liệu-username
Bao gồm
FILE
bao gồm_if_exists
Tệp
bao gồm_dir
Thư mục
Nhận xét, khoảng trắng và tiếp tục dòng được xử lý theo cách tương tự như trongpg_hba.conf
. Thekèo bóng đá pháp bản đồ
là một kèo bóng đá pháp tùy ý sẽ được sử dụng để chỉ ánh xạ này trongpg_hba.conf
. Hai trường khác chỉ định tên người kèo bóng đá pháp hệ điều hành và tên người kèo bóng đá pháp cơ sở dữ liệu phù hợp.kèo bóng đá pháp bản đồ
có thể được sử dụng nhiều lần để chỉ định nhiều bản tin người kèo bóng đá pháp trong một bản đồ.
như chopg_hba.conf
, Các dòng trong tệp này có thể được bao gồm các chỉ thị, tuân theo cùng các quy tắc.
Thepg_ident.conf
Tệp được đọc khi 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 tệp trên một hệ thống đang hoạt động, bạn sẽ cần báo hiệu cho Postmaster (sử dụngPG_CTL tải lại
, Gọi hàm SQLpg_reload_conf ()
hoặc sử dụngKill -hup
) để làm cho nó đọc lại tệp.
Chế độ xem hệ thốngpg_ident_file_mappings
có thể hữu ích cho các thay đổi trước khi kiểm tra trướcpg_ident.conf
Tệp hoặc để chẩn đoán các vấn đề nếu tải tệp không có hiệu ứng mong muốn. Hàng trong chế độ xem với không nullERROR
Các trường biểu thị các vấn đề trong các dòng tương ứng của tệp.
Không có hạn chế nào liên quan đến số lượng người kèo bóng đá pháp cơ sở dữ liệu mà người kèo bóng đá pháp hệ điều hành nhất định có thể tương ứng với, cũng không ngược lại. Do đó, các mục trong bản đồ nên được coi là có nghĩa làNgười kèo bóng đá pháp hệ điều hành này được phép kết nối với tư cách là người kèo bóng đá pháp cơ sở dữ liệu nàyHồi, thay vì ngụ ý rằng chúng tương đương. Kết nối sẽ được cho phép nếu có bất kỳ mục nhập bản đồ nào ghép tên người kèo bóng đá pháp thu được từ hệ thống xác thực bên ngoài với tên người kèo bóng đá pháp cơ sở dữ liệu mà người kèo bóng đá pháp đã yêu cầu kết nối như.tất cả
có thể được sử dụng làmcơ sở dữ liệu-username
Để chỉ định rằng nếuHệ thống-người kèo bóng đá pháp
phù hợp, sau đó người kèo bóng đá pháp này được phép đăng nhập như bất kỳ người kèo bóng đá pháp cơ sở dữ liệu hiện có nào. Trích dẫntất cả
Làm cho từ khóa mất ý nghĩa đặc biệt.
NếuCơ sở dữ liệu-username
Bắt đầu bằng một+
Nhân vật, sau đó người kèo bóng đá pháp hệ điều hành có thể đăng nhập như bất kỳ người kèo bóng đá pháp nào thuộc về vai trò đó, tương tự như cách tên người kèo bóng đá pháp bắt đầu bằng+
được xử lý trongpg_hba.conf
. Do đó, A+
Mark có nghĩa làPhù hợp với bất kỳ vai trò nào là thành viên trực tiếp hoặc gián tiếp của vai trò nàyHồi, trong khi kèo bóng đá pháp không có+
Mark chỉ phù hợp với vai trò cụ thể đó. Trích dẫn tên người kèo bóng đá pháp bắt đầu bằng một+
làm cho+
mất ý nghĩa đặc biệt của nó.
NếuHệ thống-USername
Trường bắt đầu bằng dấu gạch chéo (/
), phần còn lại của trường được coi là một biểu thức chính quy. (Nhìn thấyPhần 9.7.3.1Để biết chi tiếtPostgreSQLS Cú pháp biểu thức chính quy.) Biểu thức chính quy có thể bao gồm một biểu hiện phụ, hoặc biểu hiện phụ, sau đó có thể được tham chiếu trongCơ sở dữ liệu-username
trường AS\ 1
(Backslash-one). Điều này cho phép ánh xạ của nhiều tên người kèo bóng đá pháp trong một dòng, đặc biệt hữu ích cho các thay thế cú pháp đơn giản.
mymap /^(.*)@mydomain\.com$ \ 1
sẽ xóa phần miền cho người kèo bóng đá pháp có tên người kèo bóng đá pháp hệ thống kết thúc bằng@mydomain.com
và cho phép bất kỳ người kèo bóng đá pháp nào có tên hệ thống kết thúc bằng@othomain.com
để đăng nhập ASkhách
. Trích dẫn ACơ sở dữ liệu-username
chứa\ 1
khônglàm\ 1
Mất nghĩa đặc biệt của nó.
NếuCơ sở dữ liệu-username
Trường bắt đầu bằng dấu gạch chéo (/
), phần còn lại của trường được coi là một biểu thức chính quy (xemPhần 9.7.3.1Để biết chi tiếtPOSTGRESQLS Cú pháp biểu thức chính quy). Không thể sử dụng\ 1
Để sử dụng chụp từ biểu thức thông thường trênSystem-username
cho biểu thức chính quy trêncơ sở dữ liệu-username
.
Hãy nhớ rằng theo mặc định, một biểu thức chính quy có thể khớp với chỉ một phần của chuỗi. Nó thường là khôn ngoan khi sử dụng^
và$
, như được hiển thị trong ví dụ trên, để buộc khớp với toàn bộ tên người kèo bóng đá pháp hệ thống.
Apg_ident.conf
Tệp có thể được sử dụng cùng vớipg_hba.conf
Tệp trongVí dụ 20.1được hiển thị trongVí dụ 20.2. Trong ví dụ này, bất kỳ ai đã đăng nhập vào máy trên mạng 192.168 không có tên người kèo bóng đá pháp hệ điều hànhBryanh
, Ann
hoặcRobert
sẽ không được cấp quyền truy cập. Unix userRobert
Chỉ được phép truy cập khi anh ta cố gắng kết nối nhưPostgreSQLngười kèo bóng đá phápBob
, không phảiRobert
hoặc bất kỳ ai khác.Ann
sẽ chỉ được phép kết nối dưới dạngAnn
. Người kèo bóng đá phápBryanh
sẽ được phép kết nối nhưBryanh
hoặc asGuest1
.
Ví dụ 20.2. Một ví dụpg_ident.conf
FILE
# MapName System-username PG-username