이 문서는 지원되지 않는 버전의 PostgreSQL을위한 것입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다젠 토토 PostgreSQL : 문서 : 17 : 20.1. pg_hba.conf 와이즈 토토버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

19.1. 그만큼PG_HBA.conf와이즈 토토

클라이언트 인증은 구성 와이즈 토토에 의해 제어됩니다. 전통적으로 명명 된PG_HBA.conf그리고 데이터베이스에 저장됩니다 클러스터의 데이터 디렉토리. (HBA호스트 기반 인증을 나타냅니다.) 기본값pg_hba.conf데이터가 설치 될 때 와이즈 토토이 설치됩니다 디렉토리는에 의해 초기화됩니다.initdb. 그것 인증 구성 와이즈 토토을 배치 할 수 있습니다 그러나 다른 곳에서는; 참조hba_file구성 매개 변수.

일반 형식pg_hba.conf와이즈 토토은 1 인당 레코드 세트입니다 선. 빈 줄은 무시됩니다. 이후의 텍스트와 마찬가지로#댓글 문자. 레코드가 구성됩니다 공백 및/또는 탭으로 분리되는 여러 필드 중 필드 값이 인용되면 필드에는 공백이 포함될 수 있습니다. 기록에 걸쳐 기록을 계속할 수 없습니다.

각 레코드는 연결 유형, 클라이언트 IP 주소를 지정합니다. 범위 (연결 유형과 관련된 경우), 데이터베이스 이름, 와이즈 토토 이름 및 사용할 인증 방법 이 매개 변수와 일치하는 연결. a.의 첫 번째 레코드 연결 유형, 클라이언트 주소, 요청 된 데이터베이스 및 일치합니다 와이즈 토토 이름은 인증을 수행하는 데 사용됩니다. 없음"낙상"또는"백업": 한 레코드가 선택된 경우 인증 실패, 후속 레코드는 고려되지 않습니다. 만약에 레코드 일치가없고 액세스가 거부됩니다.

레코드에 7 개의 형식 중 하나가있을 수 있습니다

local데이터베이스  와이즈 토토  Auth-Method[Auth-options]
주인데이터베이스  와이즈 토토  CIDR-ADDRESS  Auth-Method[Auth-options]
호스트데이터베이스  와이즈 토토  CIDR-ADDRESS  Auth-Method[Auth-options]
hostnossl데이터베이스  와이즈 토토  CIDR-ADDRESS  Auth-Method[Auth-options]
주인데이터베이스  와이즈 토토  ip-address  IP 마스크  Auth-Method[Auth-options]
호스트데이터베이스  와이즈 토토  ip-address  IP 마스크  Auth-Method[Auth-options]
hostnossl데이터베이스  와이즈 토토  ip-address  IP 마스크  Auth-Method[Auth-options]

필드의 의미는 다음과 같습니다.

Local

이 레코드는 연결 시도와 일치합니다 유닉스 도메인 소켓. 이 유형의 기록이 없으면 유닉스 도메인 소켓 연결은 허용되지 않습니다.

host

이 레코드는 사용한 연결 시도와 일치합니다 TCP/IP.host레코드 일치 중 하나SSL또는 비SSL연결 시도.

참고 :원격 TCP/IP 연결 서버가 an으로 시작되지 않는 한 가능합니다 에 적합한 가치Listen_Addresses구성 매개 변수는 기본 동작이므로 로컬에서만 TCP/IP 연결을 듣습니다 루프백 주소LocalHost.

hostssl

이 레코드는 사용한 연결 시도와 일치합니다 TCP/IP이지만 연결이 이루어질 때만SSL암호화.

이 옵션을 사용하려면 서버를 구축해야합니다.SSL지원. 뿐만 아니라,SSL를 설정하여 서버 시작 시간에 활성화SSL구성 매개 변수 (참조PostgreSQL : 문서자세한 내용은).

hostnossl

이 레코드 유형은 반대 논리를 가지고 있습니다hostssl: 연결 시도와 일치합니다 사용하지 않는 TCP/IP를 통해 제작SSL.

데이터베이스

이 레코드가 일치하는 데이터베이스 이름을 지정합니다. 값all이를 지정합니다 모든 데이터베이스와 일치합니다. 값Sameuser레코드가 일치하도록 지정합니다 요청 된 데이터베이스가 요청 된 와이즈 토토. 값Samerole요청 된 와이즈 토토가 요청 된 데이터베이스와 동일한 이름의 역할. (SameGroup쓸모 없지만 여전히 받아 들여진 철자Samerole.) 그렇지 않으면 이것은 a의 이름입니다 특정한PostgreSQL데이터베이스. 여러 데이터베이스 이름을 제공 할 수 있습니다 쉼표로 분리. 포함 된 별도의 와이즈 토토 데이터베이스 이름은 와이즈 토토 이름 앞에서 지정할 수 있습니다. 와 함께@.

와이즈 토토

이 레코드가 어떤 데이터베이스 와이즈 토토 이름을 지정합니다 성냥. 값all지정 모든 와이즈 토토와 일치합니다. 그렇지 않으면 이것은 하나입니다 특정 데이터베이스 와이즈 토토의 이름 또는 이전 그룹 이름 에 의해+. (아니오가 없다는 것을 기억하십시오 와이즈 토토와 그룹의 실제 구별postgresql; 에이+마크는 정말 의미"직접 또는 직접적인 역할과 일치하십시오 간접적 으로이 역할의 구성원 "없이+마크는 그 일에만 일치합니다 특정 역할.) 여러 와이즈 토토 이름을 제공 할 수 있습니다 쉼표로 분리. 포함 된 별도의 와이즈 토토 와이즈 토토 이름은의 와이즈 토토 이름 앞에 지정할 수 있습니다.@.

CIDR-ADDRESS

클라이언트 시스템 IP 주소 범위를 지정합니다 기록 경기. 이 필드에는 IP 주소가 포함되어 있습니다 표준 점선 소수점 표기법 및 CIDR 마스크 길이. (IP 주소는 숫자로만 지정할 수 있습니다 도메인 또는 호스트 이름) 마스크 길이는 숫자를 나타냅니다. 클라이언트 IP 주소의 고차 비트 성냥. 오른쪽의 비트는 주어진 부분에서 0이어야합니다. IP 주소. 사이에 공백이 없어야합니다 IP 주소,/및 CIDR 마스크 길이.

A의 전형적인 예CIDR-ADDRESSare172.20.143.89/32단일 호스트의 경우172.20.143.0/24작은 네트워크 또는10.6.0.0/16a 더 큰 것. 단일 호스트를 지정하려면 32의 CIDR 마스크를 사용하십시오. IPv4 또는 IPv6의 경우. 네트워크 주소에서 생략하지 마십시오 후미 제로.

IPv4 형식으로 제공되는 IP 주소는 IPv6과 일치합니다. 해당 주소가있는 연결 예127.0.0.1와 일치합니다 IPv6 주소:: ffff : 127.0.0.1. an IPv6 형식으로 제공되는 항목은 IPv6 만 일치합니다 대표 주소가있는 경우에도 연결 IPv4-in-IPV6 범위. IPv6 형식의 항목은 다음과 같습니다 시스템의 C 라이브러리에 지원이 없으면 거부됩니다. IPv6 주소의 경우

이 필드는에만 적용됩니다.호스트, hostsslhostnossl레코드.

IP-Address
IP 마스크

이 필드는 대안으로 사용될 수 있습니다.CIDR-ADDRESS표기법. 마스크 길이를 지정하는 대신 실제 마스크는 다음과 같습니다. 별도의 열에 지정됩니다. 예를 들어,255.0.0.0IPv4 CIDR 마스크를 나타냅니다 8의 길이 및255.255.255.25532의 CIDR 마스크 길이를 나타냅니다.

이 필드는에만 적용됩니다host, hostsslhostnossl레코드

Auth-Method

a 연결은이 레코드와 일치합니다. 가능한 선택은입니다 여기에 요약되었습니다. 세부 사항은섹션 19.3.

신뢰

무조건 연결을 허용합니다. 이 방법 에 연결할 수있는 사람은 누구나 허용합니다PostgreSQLDatabase Server to 로그인postgresql원하는 와이즈 토토, 암호가 필요하지 않습니다. 보다섹션 19.3.1세부.

거부

무조건 연결을 거부하십시오. 이것은 유용한"필터링"그룹의 특정 호스트.

MD5

클라이언트가 MD5 암호화를 공급하도록 요구합니다 인증을위한 비밀번호. 보다섹션 19.3.2자세한 내용.

비밀번호

클라이언트가 암호화되지 않은 것을 공급하도록 요구합니다 인증을위한 비밀번호. 비밀번호이기 때문에 네트워크를 통해 명확한 텍스트로 전송되면 신뢰할 수없는 네트워크에서 사용됩니다. 보다섹션 19.3.2자세한 내용.

gss

GSSAPI를 사용하여 와이즈 토토를 인증합니다. 이것은 전혀입니다 TCP/IP 연결에 사용할 수 있습니다. 보다섹션 19.3.3자세한 내용.

SSPI

SSPI를 사용하여 와이즈 토토를 인증합니다. 이것은 전혀입니다 Windows에서 사용할 수 있습니다. 보다섹션 19.3.4세부.

KRB5

Kerberos v5를 사용하여 와이즈 토토를 인증합니다. 이것은 TCP/IP 연결에만 사용할 수 있습니다. 보다섹션 19.3.5자세한 내용.

ID

운영 체제 와이즈 토토 이름을 얻습니다 클라이언트 (TCP/IP 연결 용 로컬 연결을 위해 클라이언트의 ID 서버 운영 체제에서 가져 와서) 요청 된 데이터베이스 와이즈 토토 이름과 일치합니다. 보다섹션 19.3.6자세한 내용.

LDAP

LDAP 서버를 사용하여 인증. 보다섹션 19.3.7세부.

cert

SSL 클라이언트 인증서를 사용하여 인증. 보다섹션 19.3.8자세한 내용.

PAM

플러그 가능한 인증을 사용하여 인증 운영이 제공하는 모듈 (PAM) 서비스 체계. 보다섹션 19.3.9세부.

Auth-options

이후Auth-Method필드, 양식의 필드가있을 수 있습니다이름=value인증 방법에 대한 옵션을 지정하십시오. 세부 어떤 옵션이 어떤 인증을 사용할 수 있는지에 대해 메소드는 아래에 나타납니다.

와이즈 토토 포함@구조물입니다 이름의 목록으로 읽고, 어느 쪽로도 분리 할 수 있습니다. 공백 또는 쉼표. 댓글은에 의해 소개됩니다.#pg_hba.conf및 중첩@구성이 허용됩니다. 와이즈 토토 이름이 아니라면 수행원@는 절대적인 경로입니다 참조가 포함 된 디렉토리와 관련이있는 와이즈 토토.

이후pg_hba.conf레코드는입니다 각 연결 시도, 순서에 대해 순차적으로 검사했습니다 기록은 중요합니다. 일반적으로 이전 기록에는 있습니다 단단한 연결 일치 매개 변수 및 약한 인증 방법, 나중에 레코드에는 느슨한 일치 매개 변수가 있습니다 더 강력한 인증 방법. 예를 들어, 원할 수도 있습니다 사용하려면신뢰로컬 인증 TCP/IP 연결이지만 원격 TCP/IP에 대한 비밀번호가 필요합니다 사이. 이 경우 레코드를 지정신뢰연결에 대한 인증 127.0.0.1은 암호를 지정하는 레코드 앞에 나타납니다 더 넓은 범위의 허용 클라이언트 IP에 대한 인증 구애.

thepg_hba.conf와이즈 토토을 읽습니다 시작 및 기본 서버 프로세스가 A를받는 경우Sighup신호. 활성 시스템에서 와이즈 토토을 편집하면 필요합니다. 서버에 신호를 보내려면 (사용PG_CTL Reload또는kill -hup) 와이즈 토토을 다시 읽으십시오.

팁 :특정 데이터베이스에 연결하려면 와이즈 토토 통과해야 할뿐만 아니라pg_hba.conf수표이지만가 있어야합니다.Connect데이터베이스의 권한. 당신이 그것을 제한하고 싶다면 와이즈 토토는 어떤 데이터베이스를 연결할 수 있으므로 일반적으로 더 쉽습니다. 부여/취소함으로써 이것을 제어Connect규칙을 넣는 것보다pg_hba.conf항목.

의 일부 예pg_hba.conf항목 에 표시됩니다.예 19-1. 보다 다른 인증에 대한 자세한 내용은 다음 섹션입니다 행동 양식.

예 19-1. 예pg_hba.conf출품작

# 로컬 시스템의 모든 와이즈 토토가 아래의 데이터베이스에 연결하도록 허용
# Unix-Domain 소켓을 사용하는 모든 데이터베이스 와이즈 토토 이름 (로컬의 기본값
# 연결).
틀
# 데이터베이스 유형 와이즈 토토 CIDR-ADDRESS 메소드
모든 신뢰

# 로컬 루프백 TCP/IP 연결을 사용하여 동일합니다.
틀
# 데이터베이스 유형 와이즈 토토 CIDR-ADDRESS 메소드
모든 127.0.0.1/32 신탁을 모두 호스트하십시오

# 이전 줄과 동일하지만 별도의 Netmask 열을 사용합니다.
틀
# 데이터베이스 유형 와이즈 토토 IP-Dress IP-MASK 메소드
모든 127.0.0.1 255.255.255.255 신탁을 모두 호스트하십시오

# IP 주소가있는 호스트의 모든 와이즈 토토가 192.168.93.x를 연결하도록 허용합니다.
# "postgres"로 # 보고서를 확인하는 동일한 와이즈 토토 이름과
# 연결 (일반적으로 Unix 와이즈 토토 이름).
틀
# 데이터베이스 유형 와이즈 토토 CIDR-ADDRESS 메소드
호스트 Postgres 모든 192.168.93.0/24 ID

# Host 192.168.12.10의 모든 와이즈 토토가 데이터베이스에 연결하도록 허용합니다.
# "Postgres"와이즈 토토의 암호가 올바르게 제공되는 경우.
틀
# 데이터베이스 유형 와이즈 토토 CIDR-ADDRESS 메소드
호스트 Postgres 모든 192.168.12.10/32 MD5

# 앞의 "호스트"라인이없는 경우이 두 줄은
# 192.168.54.1에서 모든 연결을 거부합니다 (그 항목은
# 첫 번째 일치) 그러나 다른 곳에서 Kerberos 5 연결을 허용합니다.
# 인터넷에서.  제로 마스크는 호스트 IP의 비트가 없음을 의미합니다.
# 주소는 모든 호스트와 일치하도록 고려됩니다.
틀
# 데이터베이스 유형 와이즈 토토 CIDR-ADDRESS 메소드
모든 192.168.54.1/32 모두 거부하십시오
모든 0.0.0.0/0 KRB5를 모두 호스트하십시오

# 192.168.x.x 와이즈 토토가 데이터베이스에 연결할 수 있도록 허용합니다.
# 그들은 신원 확인을 통과합니다.  예를 들어 Ident가 와이즈 토토가 있다고 말하면
# "Bryanh"및 그는 PostgreSQL 와이즈 토토 "Guest1"으로 연결하도록 요청합니다.
# MAP의 PG_INDENT.CONF 항목이 있으면 연결이 허용됩니다.
# "Bryanh"라는 "Omicron"은 "Guest1"으로 연결할 수 있습니다.
틀
# 데이터베이스 유형 와이즈 토토 CIDR-ADDRESS 메소드
모든 192.168.0.0/16 모두를 호스트합니다. ID MAP = OMICRON

# 이것이 로컬 연결을위한 유일한 세 줄인 경우
# 로컬 와이즈 토토가 자신의 데이터베이스 (데이터베이스)에만 연결하도록 허용합니다.
# 데이터베이스 와이즈 토토 이름과 동일한 이름을 가진) 관리자를 제외하고
# 및 모든 데이터베이스에 연결할 수있는 역할 "지원"멤버.  와이즈 토토
# $ pgdata/Admins에는 관리자 이름 목록이 포함되어 있습니다.  비밀번호
# 모든 경우에 필요합니다.
틀
# 데이터베이스 유형 와이즈 토토 CIDR-ADDRESS 메소드
로컬 동일한 사람 모두 MD5
로컬 모든 @admins md5
로컬 all +지원 MD5

# 위의 마지막 두 줄은 한 줄로 결합 할 수 있습니다.
Local All @Admins,+지원 MD5

# 데이터베이스 열은 목록 및 와이즈 토토 이름도 사용할 수도 있습니다.
로컬 db1, db2,@demodbs all md5