ID 또는 GSSAPI와 같은 외부 인증 시스템을 사용할 때 연결을 시작한 운영 체제 토토 핫의 이름은 사용될 데이터베이스 토토 핫 (역할)와 같지 않을 수 있습니다. 이 경우 토토 핫 이름 맵을 적용하여 운영 체제 토토 핫 이름을 데이터베이스 토토 핫에 매핑 할 수 있습니다.Map
=Map-name
옵션 필드에서pg_hba.conf
. 이 옵션은 외부 사용자 이름을받는 모든 인증 방법에 대해 지원됩니다.Map-name
매개 변수pg_hba.conf
각 개별 연결에 사용할 맵을 표시하려면
토토 핫 이름 맵은 기본적으로 이름이 지정된지 맵 파일에 정의되어 있습니다.pg_ident.conf
그리고 클러스터의 데이터 디렉토리에 저장됩니다. (그러나 다른 곳에지도 파일을 배치 할 수 있습니다. 참조Ident_File구성 매개 변수.) ID 맵 파일에는 일반 양식의 줄이 포함되어 있습니다.
Map-name
System-Username
database-username
댓글과 공백은와 같은 방식으로 처리됩니다.pg_hba.conf
. 그만큼Map-name
이 매핑을 참조하는 데 사용될 임의의 이름입니다.pg_hba.conf
. 다른 두 필드는 운영 체제 토토 핫 이름과 일치하는 데이터베이스 토토 핫 이름을 지정합니다.Map-name
단일 맵 내에서 여러 토토 핫 매핑을 지정하는 데 반복적으로 사용될 수 있습니다.
주어진 운영 체제 토토 핫가 해당 할 수있는 데이터베이스 토토 핫 수에 대한 제한이 없습니다. 따라서지도의 항목은 의미로 생각되어야합니다“이 운영 체제 토토 핫는이 데이터베이스 토토 핫로 연결할 수 있습니다”, 그것들이 동등하다는 것을 암시하기보다는. 외부 인증 시스템에서 얻은 토토 핫 이름을 a as.
System-Username
필드는 슬래시로 시작합니다 (/
), 나머지 필드는 정규 표현으로 취급됩니다. (보다섹션 9.7.3.1자세한 내용PostgreSQL의 정규식 표현 구문.) 정규 표현식에는 단일 캡처 또는 괄호 화 된 하위 표현이 포함될 수 있으며, 이는에서 참조 할 수 있습니다database-username
필드 AS\ 1
(Backslash-one). 이를 통해 한 줄로 여러 토토 핫 이름을 매핑 할 수 있으며, 이는 간단한 구문 치환에 특히 유용합니다.
mymap /^(.*)@mydomain\.com$ \ 1
|@mydomain.com
, 시스템 이름이 끝나는 토토 핫가를 허용합니다.@otherdomain.com
로그인하여게스트
.
기본적으로 정규 표현식은 문자열의 일부만 일치 할 수 있습니다. 일반적으로 사용하는 것이 현명합니다^
and$
, 위의 예에서 볼 수 있듯이 일치가 전체 시스템 토토 핫 이름에 맞게 강요합니다.
thepg_ident.conf
파일은 시작시 및 기본 서버 프로세스가 a를받을 때 읽습니다.Sighup신호. 활성 시스템에서 파일을 편집하면 우체국 장에 신호를 보내야합니다 (사용PG_CTL Reload
, SQL 기능 호출pg_reload_conf ()
또는 사용kill -hup
) 파일을 다시 읽게하려면
A pg_ident.conf
와 함께 사용할 수있는 파일pg_hba.conf
파일에서예 20.1예 20.2. 이 예에서는 운영 체제 토토 핫 이름이없는 192.168 네트워크의 컴퓨터에 로그인 한 사람이라면 누구나Bryanh
, ann
또는Robert
액세스 권한이 부여되지 않습니다. 유닉스 토토 핫Robert
그가 연결하려고 할 때만 액세스 할 수 있습니다PostgreSQLuserbob
Robert
또는 다른 사람.ann
|ann
. 토토 핫Bryanh
Bryanh
또는 asGuest1
.
예 20.2. 예pg_ident.conf
파일
# MapName System-Username PG-Username