20.1. pg_hba.confÆÄÀÏ

Ŭ¶óÀÌ¾ðÆ® ÀÎÁõÀº ÀüÅëÀûÀ¸·Î µ¥ÀÌÅͺ£À̽º Ŭ·¯½ºÅÍÀÇ µ¥ÀÌÅÍ µð·ºÅ丮 ³»ÀÇ pg_hba.conf¶ó´Â ¼³Á¤ ÆÄÀÏ·Î °ü¸®µÇ°í ÀÖ½À´Ï´Ù (HBA¶õ, host-based authentication: È£½ºÆ® º£À̽º ÀÎÁõÀÇ ¾à¾îÀÔ´Ï´Ù). µðÆúÆ® pg_hba.confÆÄÀÏÀº, µ¥ÀÌÅÍ µð·ºÅ丮°¡ initdb·Î ÃʱâÈ­µÉ ¶§¿¡ ¼³Ä¡µË´Ï´Ù. ±×·¯³ª, ÀÌ ÀÎÁõ ¼³Á¤ ÆÄÀÏÀ» ´Ù¸¥ Àå¼Ò¿¡ ¼³Ä¡ÇÒ ¼ö ÀÖ½À´Ï´Ù.hba_file ¼³Á¤ ÆÄ¶ó¹ÌÅ͸¦ ÂüÁ¶ÇØ ÁÖ¼¼¿ä.

pg_hba.confÆÄÀÏÀÇ ÀϹÝÀûÀÎ ¼­½ÄÀº 1Çà¿¡ ´ëÇÑ ÇϳªÀÇ ·¹ÄÚµå ÁýÇÕÀÔ´Ï´Ù. ºñ¾îÀÖ´Â ÇàÀº ÄÚ¸àÆ® ¹®ÀÚ# ÀÌÈÄÀÇ ¹®ÀÚ¿Í ÇÔ²² ¹«½ÃµÇ¾îÁý´Ï´Ù. ·¹ÄÚµå´Â ½ºÆäÀ̽º³ª ÅÇ ¶Ç´Â ±× ¸ðµÎ·Î ºÐ¸®µÇ¾îÁø º¹¼öÀÇ Çʵå·Î ±¸¼ºµÇ¾î ÀÖ½À´Ï´Ù. Çʵå´Â ÇÊµå °ªÀÌ ÀοëºÎȣȭµÉ °æ¿ì °ø¹é ¹®ÀÚ¸¦ Æ÷ÇÔÇÒ ¼ö ÀÖ½À´Ï´Ù. ·¹ÄÚµå´Â ÇàÀ» ¶Ç ÀÖ°í °è¼Ó ³ª¿Ã ¼ö ¾ø½À´Ï´Ù.

°¢°¢ÀÇ ·¹ÄÚµå´Â Á¢¼Ó Çü½Ä, (Á¢¼Ó Çü½Ä¿¡ ´ëÇØ¼­ Àǹ̸¦ °¡Áø´Ù¸é) Ŭ¶óÀ̾ðÆ®ÀÇ IPÁÖ¼Ò ¹üÀ§, µ¥ÀÌÅͺ£À̽ºÀÇ À̸§, À¯Àú¸íÀ» ÁöÁ¤ÇÕ´Ï´Ù. ±×¸®°í ÀÎÁõ ¹æ¹ýÀº Á¢¼Ó¿¡¼­ ÀÌ·¯ÇÑ ÆÄ¶ó¹ÌÅÍ¿Í ÀÏÄ¡½ÃÅ´À¸·Î½á °¡´ÉÇÕ´Ï´Ù. Á¢¼Ó Çü½Ä, Ŭ¶óÀÌ¾ðÆ® ÁÖ¼Ò, ¿ä±¸µÈ µ¥ÀÌÅͺ£À̽º¿Í À¯Àú¸í¿¡ ÀÏÄ¡ÇÏ´Â ÃÖÃÊÀÇ ·¹ÄÚµå´Â ÀÎÁõ 󸮿¡ »ç¿ëµË´Ï´Ù."½ÇÆÐ½ÃÀÇ °è¼Ó"À̳ª "¹é¾÷"Àº ¾ø½À´Ï´Ù. À̰ÍÀº ¸¸¾à ÇϳªÀÇ ·¹Äڵ尡 ¼±ÅõǾî ÀÎÁõ¿¡ ½ÇÆÐÇßÀ» °æ¿ì, ÈļÓÀÇ ·¹ÄÚµå´Â °í·ÁµÇÁö ¾Ê´Â´Ù°í ÇÏ´Â °ÍÀÔ´Ï´Ù.¾î´À ·¹Äڵ嵵 ÀÏÄ¡ÇÏÁö ¾ÊÀ» ¶§´Â ¾×¼¼½º°¡ °ÅºÎµË´Ï´Ù.

·¹ÄÚµå´Â 7°³ÀÇ ¼­½Ä °¡¿îµ¥ ÇϳªÀÇ Çü½ÄÀ» ÃëÇÕ´Ï´Ù.

local      
database
  
user
  
auth-method
  [

auth-option

]
host       
database
  
user
  
CIDR-address
  
auth-method
  [

auth-option

]
hostssl    
database
  
user
  
CIDR-address
  
auth-method
  [

auth-option

]
hostnossl  
database
  
user
  
CIDR-address
  
auth-method
  [

auth-option

]
host       
database
  
user
  
IP-address
  
IP-mask
  
auth-method
  [

auth-option

]
hostssl    
database
  
user
  
IP-address
  
IP-mask
  
auth-method
  [

auth-option

]
hostnossl  
database
  
user
  
IP-address
  
IP-mask
  
auth-method
  [

auth-option

]

ÇʵåÀÇ Àǹ̴ ÀÌÇÏ¿Í °°½À´Ï´Ù.

local

ÀÌ ·¹ÄÚµå´Â Unix µµ¸ÞÀÎ ¼ÒÄÏÀ» »ç¿ëÇÏ´Â Á¢¼Ó¿¡ ´ëÀÀÇÕ´Ï´Ù. ÀÌ Á¾·ùÀÇ ·¹Äڵ带 »ç¿ëÇÏÁö ¾ÊÀ¸¸é Unix µµ¸ÞÀÎ ¼ÒÄÏ °æÀ¯ÀÇ Á¢¼ÓÀº °ÅºÎµË´Ï´Ù.

host

ÀÌ ·¹ÄÚµå´Â TCP/IP¸¦ »ç¿ëÇÑ Á¢¼Ó¿¡ ´ëÀÀÇÕ´Ï´Ù. host·¹Äڵ带 SSL³ª SSLÀÌ ¾Æ´Ñ Á¢¼ÓÀÇ ½Ãµµ¿Í ÀÏÄ¡½Ãŵ´Ï´Ù.

Note: ¼­¹öÀÇ µðÆúÆ®ÀÇ µ¿ÀÛÀº ·ÎÄà loopback ÁÖ¼ÒÀÎ localhost¿¡¼­ TCP/IPÁ¢¼ÓÀ» °¨½ÃÇϰí ÀÖ½À´Ï´Ù. µû¶ó¼­ listen_addresses ¼³Á¤ ÆÄ¶ó¹ÌÅͰ¡ ÀûÀýÇÑ °ªÀ¸·Î ½ÃÀÛµÇÁö ¾Ê´Â ÇÑ, ¿ø°Ý TCP/IP Á¢¼ÓÀº ÇÒ ¼ö ¾ø½À´Ï´Ù.

hostssl

ÀÌ ·¹ÄÚµå´Â Á¢¼ÓÀÌSSL·Î ¾ÏȣȭµÈ °æ¿ì¿¡¸¸ TCP/IP ³×Æ®¿öÅ©¸¦ »ç¿ëÇÏ´Â Á¢¼Ó¿¡ ´ëÀÀÇÕ´Ï´Ù.

ÀÌ ¿É¼ÇÀ» »ç¿ëÇϱâ À§Çؼ­ ¼­¹ö´ÂSSL Áö¿ø ÇÒ ¼ö ÀÖµµ·Ï±¸ÃàµÇ¾î ÀÖÁö ¾ÊÀ¸¸é ¾ÈµË´Ï´Ù. ¶Ç, SSL´Â ssl ¼³Á¤ ÆÄ¶ó¹ÌÅ͸¦ ¼³Á¤ÇÏ¿© ¼­¹ö ½ÃÀ۽ÿ¡ »ç¿ëÇÒ ¼ö ÀÖµµ·Ï µÇ¾î¾ß ÇÕ´Ï´Ù.(ÀÚ¼¼ÇÑ °ÍÀºSection 16.7À» ÂüÁ¶ÇØ ÁÖ¼¼¿ä).

hostnossl

ÀÌ ·¹ÄÚµå´Â hostssl¿Í ¹Ý´ëµÇ´Â ·ÎÁ÷À¸·Î SSL¸¦ »ç¿ëÇϰí ÀÖÁö ¾Ê´Â TCP/IPÀÇ Á¢¼Ó¿¡¸¸ ´ëÀÀÇÕ´Ï´Ù.

database

ÀÌ ·¹ÄÚµå·Î ´ëÀÀÇÏ´Â µ¥ÀÌÅͺ£À̽º¸íÀ» ÁöÁ¤ÇÕ´Ï´Ù. allÀº ¸ðµç µ¥ÀÌÅͺ£À̽º¿Í ÀÏÄ¡µÇ´Â °ÍÀ» ÁöĪÇÕ´Ï´Ù. sameuserÀº ¿ä±¸µÈ µ¥ÀÌÅͺ£À̽º°¡ ¿äûÇÑ À¯Àú¿Í °°Àº À̸§À» °¡Áö´Â °æ¿ì¿¡ ·¹Äڵ尡 ÀÏÄ¡ÇÏ´Â °ÍÀ» ÁöĪÇÕ´Ï´Ù. sameroleÀº ¿äûÇÑ À¯Àú°¡ ¿ä±¸µÈ µ¥ÀÌÅͺ£À̽º¿Í °°Àº À̸§ÀÇ ·ÑÀÇ ¸â¹ö°¡ ¾Æ´Ï¸é ¾ÈµÈ´Ù´Â °ÍÀ» ÀÏĽÀ´Ï´Ù. (ÀÌÀü¿¡´Â samegroup¶ó°í ¾²¿´Áö¸¸, samerole¶ó°í ±â¼úÇØ ÁÖ¼¼¿ä) ±× ÀÌ¿ÜÀÇ °æ¿ì¿¡´Â ƯÁ¤ÇÑ PostgreSQLµ¥ÀÌÅͺ£À̽ºÀÇ À̸§ÀÌ µË´Ï´Ù. µ¥ÀÌÅͺ£À̽ºÀÇ À̸§Àº ÄÞ¸¶·Î ´Ü¶ôÁö¾î¼­ º¹¼ö·Î ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. µ¥ÀÌÅͺ£À̽º¸íÀ» Æ÷ÇÔÇÑ ´Ù¸¥ ÆÄÀÏÀ» ÆÄÀϸíÀÇ ÀÌÀü¿¡ @»ç¿ëÇÏ¿© ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.

user

ÀÌ ·¹ÄÚµå·Î ´ëÀÀÇÏ´Â µ¥ÀÌÅͺ£À̽º À¯Àú¸¦ ÁöÁ¤ÇÕ´Ï´Ù. allÀº ¸ðµç À¯Àú°¡ ÀÏÄ¡ÇÏ´Â °ÍÀ» ³ªÅ¸³À´Ï´Ù. ±× ÀÌ¿ÜÀÇ °æ¿ì¿¡´Â ƯÁ¤ÀÇ µ¥ÀÌÅͺ£À̽º À¯Àú¸íÀ̳ª +À¸·Î ½ÃÀ۵Ǵ ±×·ì¸íÀÌ µË´Ï´Ù. (PostgreSQL¿¡¼­´Â À¯Àú¿Í ±×·ìÀÇ ¸íÈ®ÇÑ ±¸º°ÀÌ ¾ø´Ù´Â °ÍÀ» »ó±âÇØº¸½Ê½Ã¿ä.) +ÀÇ ¸¶Å©´Â"´Â ÀÌ ·ÑÀÌ Á÷Á¢Àû ȤÀº °£Á¢ÀûÀÎ ¸â¹öÀÇ ¾îµò°¡¿¡ ÀÏÄ¡Çϰí ÀÖ´Â °ÍÀ» ÀǹÌÇϰí ÀÖ½À´Ï´Ù. " + ¸¶Å©°¡ ¾ø´Â À̸§Àº ƯÁ¤ÇÑ ·Ñ¸¸ ´ëÀÀµË´Ï´Ù.) ´Ù¼öÀÇ À¯Àú À̸§Àº ÄÞ¸¶¸¦ »ç¿ëÇÏ¿© ºÐ¸®µÇ¾î »ç¿ëµË´Ï´Ù. À¯Àú¸íÀ» Æ÷ÇÔÇÑ ´Ù¸¥ ÆÄÀÏÀº ÆÄÀϸíÀÇ Àü¿¡@¸¦ ºÙÀÓÀ¸·Î½á ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.

CIDR-address

ÀÌ ·¹ÄÚµå¿Í ÀÏÄ¡Çϴ Ŭ¶óÀÌ¾ðÆ® ¸Ó½ÅÀÇ IPÁÖ¼ÒÀÇ ¹üÀ§¸¦ ÁöÁ¤ÇÕ´Ï´Ù. À̰ÍÀº Ç¥ÁØÀÇ ¼Ò¼öÇ¥±â¹ý(dotted decimal notation)ÀÇ IPÁÖ¼Ò¿Í CIDR ¸¶½ºÅ©ÀÇ ±æÀ̸¦ Æ÷ÇÔÇϰí ÀÖ½À´Ï´Ù (IPÁÖ¼Ò´Â ¼ýÀڷθ¸ Ç¥±âµÉ ¼ö ÀÖÀ¸¸ç, µµ¸ÞÀθíÀ̳ª È£½ºÆ®¸í¿¡¼­´Â ³ªÅ¸³ªÁö ¾Ê½À´Ï´Ù). CIDR ¸¶½ºÅ© ±æÀ̶õ ¹Ýµå½Ã ÀÏÄ¡ÇØ¾ß Çϴ Ŭ¶óÀÌ¾ðÆ® IPÁÖ¼ÒÀÇ °íÀ§ ºñÆ® ¼ö¸¦ ³ªÅ¸³À´Ï´Ù. ÁÖ¾îÁø IPÁÖ¼Ò¿¡¼­ ¿À¸¥ÂÊÀÇ ºñÆ®´Â 0ÀÌ¿©¾ß ÇÕ´Ï´Ù. IPÁÖ¼Ò¿Í/±×¸®°í CIDR ¸¶½ºÅ© ±æÀÌ »çÀÌ¿¡´Â °ø¹éÀÌ À־´Â ¾ÈµË´Ï´Ù.

ÀüÇüÀûÀÎ CIDR-address ÀÇ ¿¹´Â ´ÜÀÏÀÇ È£½ºÆ®¿¡¼­´Â 172.20. 143.89/32, ¼Ò±Ô¸ð ³×Æ®¿öÅ©¿¡¼­´Â172.20. 143.0/24, ´ë±Ô¸ð ³×Æ®¿öÅ©¿¡¼­´Â10.6. 0.0/16°ú °°Àº °ÍÀÔ´Ï´Ù. ´ÜÀÏ È£½ºÆ®¸¦ ÁöÁ¤ÇÏ·Á¸é IPv4¿¡¼­´Â 32ÀÇ CIDR ¸¶½ºÅ©¸¦, IPv6¿¡¼­´Â 128À» »ç¿ëÇØ ÁÖ¼¼¿ä. ³×Æ®¿öÅ© ÁÖ¼Ò¿¡¼­´Â ¸¶Áö¸·ÀÇ 0À» »ý·« ÇÒ ¼ö ¾ø½À´Ï´Ù.

IPv4 ¼­½Ä¿¡¼­ ÁÖ¾îÁø IPÁÖ¼Ò´Â »óÀÀÇÏ´Â ÁÖ¼Ò¸¦ °¡Áö´Â IPv6 Á¢¼Ó¿¡ ´ëÇØ¼­µµ ´ëÀÀÇÕ´Ï´Ù. ¿¹¸¦ µé¸é, 127.0. 0.1Àº ::ffff:127. 0.0. 1 IPv6 ÁÖ¼Ò¿¡ ´ëÀÀÇÕ´Ï´Ù. IPv6 ¼­½Ä¿¡¼­ ÁÖ¾îÁø Ç׸ñÀº ÁÖ¼Ò°¡ IPv4-in-IPv6 ¹üÀ§ ³»¿¡ ÀÖ´õ¶óµµ IPv6 Á¢¼Ó¿¡¸¸ ´ëÀÀÇÕ´Ï´Ù. IPv6 ¼­½Ä Ç׸ñÀº ½Ã½ºÅÛÀÇ C¶óÀ̺귯¸®°¡ IPv6 ÁÖ¼Ò¸¦ Áö¿øÇÏÁö ¾Ê´Â °æ¿ì¿¡´Â °ÅÀýµÈ´Ù´Â °ÍÀ» ÁÖÀÇÇØ ÁÖ¼¼¿ä.

ÀÌ·¯ÇÑ Çʵå´Â host¿Í hostssl,hostnossl·¹Äڵ忡¸¸ Àû¿ëµË´Ï´Ù.

IP-address
IP-mask

ÀÌ Çʵå´Â CIDR-address Ç¥±âÀÇ ´ëü·Î¼­ »ç¿ë °¡´ÉÇÕ´Ï´Ù. ¸¶½ºÅ© ±æÀ̸¦ ¸í½ÃÇÏ´Â ´ë½Å¿¡, ½ÇÁ¦ ¸¶½ºÅ©¸¦ ºÐ¸®ÇÑ ¿­·Î ÁöÁ¤ÇÕ´Ï´Ù. ¿¹¸¦ µé¸é, 255.0. 0.0Àº 8ÀÇ IPv4 CIDR ¸¶½ºÅ© ±æÀ̸¦ ÀǹÌÇϰí, 255.255. 255.255´Â 32ÀÇ CIDR ¸¶½ºÅ© ±æÀ̸¦ ÀǹÌÇϰí ÀÖ½À´Ï´Ù.

ÀÌ Çʵå´Âhost¿Í hostssl, ±×¸®°íhostnossl·¹Äڵ忡¸¸ Àû¿ëµË´Ï´Ù.

auth-method

ÀÌ ·¹Äڵ带 ÅëÇØ Á¢¼ÓÇÒ ¶§ »ç¿ëÇÏ´Â ÀÎÁõ ¹æ½ÄÀ» ÁöÁ¤ÇÕ´Ï´Ù. »ç¿ëÇÒ ¼ö ÀÖ´Â ¼±ÅûçÇ×Àº ÀÌÇÏ¿¡ Á¤¸®µÇ¾î ÀÖÁö¸¸, ÀÚ¼¼ÇÑ »çÇ×Àº Section 20.2À» ÂüÁ¶ÇØ ÁÖ¼¼¿ä.

trust

Á¢¼ÓÀ» ¹«Á¶°ÇÀûÀ¸·Î Çã°¡ÇÕ´Ï´Ù. ÀÌ ¹æ½ÄÀº PostgreSQLµ¥ÀÌÅͺ£À̽º ¼­¹ö¿¡ Á¢¼ÓÇÒ ¼ö ÀÖ´Â ¸ðµç À¯Àú¸¦ ÀÓÀÇÀÇPostgreSQLÀ¯Àú·Î¼­ ÆÐ½º¿öµå ¾øÀÌ ·Î±×ÀÎÇÏ´Â °ÍÀ» Çã¶ôÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº Section 20.2.1À» ÂüÁ¶ÇØ ÁÖ¼¼¿ä.

reject

Á¢¼ÓÀ» ¹«Á¶°ÇÀûÀ¸·Î °ÅºÎÇÕ´Ï´Ù. ±×·ìÀ¸·ÎºÎÅÍÀÇ Æ¯Á¤ È£½ºÆ®¸¦ "Á¦¿Ü"ÇÒ ¶§ À¯¿ëÇÕ´Ï´Ù.

md5

Ŭ¶óÀÌ¾ðÆ®¿¡ ´ëÇØ¼­ ÀÎÁõ½Ã¿¡ MD5 ¾Ïȣȭ ÆÐ½º¿öµå¸¦ ¿ä±¸ÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀºSection 20.2.2À» ÂüÁ¶ÇØ ÁÖ¼¼¿ä.

crypt

Note: ÀÌ ¿É¼ÇÀº pre-7.2 Ŭ¶óÀÌ¾ðÆ®¿Í Åë½ÅÇÒ ¶§¸¸ ÃßõµË´Ï´Ù.

Ŭ¶óÀÌ¾ðÆ®¿¡ ´ëÇØ¼­ ÀÎÁõ½Ã¿¡ crypt() ¾Ïȣȭ ÆÐ½º¿öµå¸¦ ¿ä±¸ÇÕ´Ï´Ù. cryptº¸´Ù md5¿¡°Ô ÃßõµË´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀºSection 20.2.2À» ÂüÁ¶ÇØ ÁÖ¼¼¿ä.

password

Ŭ¶óÀÌ¾ðÆ®¿¡ ´ëÇØ¼­ ÀÎÁõ½Ã¿¡ ¾ÏȣȭµÇÁö ¾ÊÀº ÆÐ½º¿öµå¸¦ ¿ä±¸ÇÕ´Ï´Ù. ÆÐ½º¿öµå´Â ³×Æ®¿öÅ©¸¦ ÅëÇØ¼­ º¸Åë ÅØ½ºÆ® Çü½Ä¿¡¼­ º¸³»Áö±â ¶§¹®¿¡, ½Å·ÚµÇÁö ¾Ê´Â ³×Æ®¿öÅ©¿¡¼­´Â »ç¿ëÇÏÁö ¸»¾Æ ÁÖ¼¼¿ä. ¶Ç ¸¹Àº °æ¿ì, threadµÈ Ŭ¶óÀÌ¾ðÆ® ¾îÇø®ÄÉÀ̼ǿ¡¼­´Â µ¿ÀÛÇÏÁö ¾Ê½À´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº Section 20.2.2À» ÂüÁ¶ÇØ ÁÖ¼¼¿ä.

krb5

À¯Àú¸¦ ÀÎÁõÇϱâ À§ÇØ Kerberos V5¸¦ »ç¿ëÇÕ´Ï´Ù. TCP/IPÁ¢¼Ó¶§¸¸ À¯È¿ÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº Section 20.2.3À» ÂüÁ¶ÇØ ÁÖ¼¼¿ä.

ident

Ŭ¶óÀ̾ðÆ®ÀÇ operating system¿¡ À־ÀÇ À¯Àú¸íÀ»(TCP/IPÁ¢¼Ó¿¡¼­´Â Ŭ¶óÀÌ¾ðÆ®»óÀÇ ident ¼­¹ö¿¡°Ô ¹¯´Â °ÍÀ¸·Î, ·ÎÄà Á¢¼Ó¿¡¼­´Â operating system·ÎºÎÅÍ) ÃëµæÇϰí, identŰ¿öµå µÚ¿¡ ÁöÁ¤µÈ ¸ÊÀ» Á¶»çÇÏ´Â °ÍÀ¸·Î, À¯Àú°¡ ¿äûÇÑ µ¥ÀÌÅͺ£À̽ºÀÇ À¯Àú·Î¼­ Á¢¼ÓÀÌ Çã°¡µÇ´ÂÁö¸¦ °Ë»çÇÕ´Ï´Ù.

ldap

LDAP¸¦ »ç¿ëÇØ Áß¾Ó ¼­¹ö·Î ÀÎÁõÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀºSection 20.2.5À» ÂüÁ¶ÇØ ÁÖ¼¼¿ä.

pam

operating system¿¡ ÀÇÇØ Á¦°øµÇ´Â PAM(Pluggable Authentication Modules) ¼­ºñ½º¸¦ »ç¿ëÇÑ ÀÎÁõÀÔ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀºSection 20.2.6À» ÂüÁ¶ÇØ ÁÖ¼¼¿ä.

auth-option

ÀÌ ¿É¼Ç ÇʵåÀÇ Àǹ̴ ¼±ÅÃµÈ ÀÎÁõ ¹æ½Ä¿¡ µû¶ó¼­ ´Ù¸¨´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº ÀÌÇÏ·Î ¼³¸íÇÕ´Ï´Ù.

@¸¦ Æ÷ÇÔÇÏ´Â ÆÄÀÏÀº °ø¹é ¹®ÀÚ³ª ÄÞ¸¶, ÀÌ µÑ¿¡ ÀÇÇØ ºÐ¸®µÇ¾î Áú¼ö ÀÖ½À´Ï´Ù. ÄÚ¸àÆ®´Â pg_hba.conf¿Í °°ÀÌ #·Î ½ÃÀ۵˴ϴÙ. ¶Ç, Æ÷ÇԵǴ @µµ °¡´ÉÇÕ´Ï´Ù. @À» µû¸£´Â ÆÄÀϸíÀÌ Àý´ëÀûÀÎ °æ·Î°¡ ¾Æ´Ñ ÇÑ, °æ·Î´Â ÂüÁ¶ÇÏ´Â ÆÄÀÏÀ» Æ÷ÇÔÇÏ´Â µð·ºÅ丮¿Í ¿¬°üµÈ´Ù°í º¾´Ï´Ù.

pg_hba.conf ·¹ÄÚµå´Â Á¢¼ÓÀÌ ½ÃµµµÉ ¶§, Â÷·Ê·Î °Ë»çµÇ±â ¶§¹®¿¡ ·¹ÄÚµåÀÇ ¼ø¼­°¡ ¸Å¿ì Áß¿äÇÕ´Ï´Ù. ÀüÇüÀûÀ¸·Î ÃʹÝÀÇ ·¹ÄÚµå´Â ¾î·Á¿î Á¢¼Ó Á¶ÇÕ ÆÄ¶ó¹ÌÅÍ¿Í ´À½¼ÇÑ ÀÎÁõ ¹æ½ÄÀ» °¡Áú °Í¿¡ ºñÇØ, ÀÌÈÄÀÇ ·¹ÄÚµå´Â º¸´Ù ´À½¼ÇÑ Á¶ÇÕ ÆÄ¶ó¹ÌÅÍ¿Í º¸´Ù ¾î·Á¿î ÀÎÁõ ¹æ½ÄÀ» °¡Áý´Ï´Ù. ¿¹¸¦ µé¸é, ·ÎÄà TCP Á¢¼Ó¿¡¼­´Â trustÀÎÁõ ¹æ½ÄÀ» »ç¿ëÇϰíÀÚ Çϸé, ¸®¸ðÆ® TCP Á¢¼Ó¿¡ ´ëÇØ¼­ ÆÐ½º¿öµå¸¦ ¿ä±¸ ÇÕ´Ï´Ù. ÀÌ °æ¿ì, ±¤¹üÀ§ÇÏ°Ô Çã¶ôµÇ´Â Ŭ¶óÀ̾ðÆ®ÀÇ IPÁÖ¼Ò¿¡ ´ëÇÑ ÆÐ½º¿öµå ÀÎÁõÀ» ÁöÁ¤ÇÏ´Â ·¹ÄÚµå ÀÌÀü¿¡ 127.0. 0.1À¸·ÎºÎÅÍÀÇ Á¢¼Ó¿¡ ´ëÇÑ trustÀÎÁõÀ» ÁöÁ¤ÇÏ´Â ·¹Äڵ尡 ÀÖ¾î¾ß ÇÕ´Ï´Ù.

pg_hba.conf ÆÄÀÏÀº ¼³Ä¡½Ã¿Í ÁÖ¼­¹ö ÇÁ·Î¼¼½º°¡ SIGHUP½ÅÈ£¸¦ ¹Þ¾ÒÀ» ¶§¿¡ ÀÐÈü´Ï´Ù. ½ÇÇà ÁßÀÎ ½Ã½ºÅÛÀ¸·Î ÆÄÀÏÀ» ÆíÁýÇßÀ» °æ¿ì´Â, (pg_ctl reload³ª kill -HUP¸¦ »ç¿ëÇØ) ¼­¹ö¿¡ ÆÄÀÏÀ» Çѹø ´õ ÀоîµéÀ̵µ·Ï ½ÅÈ£¸¦ º¸³»¾ß¸¸ ÇÕ´Ï´Ù.

Tip: ƯÁ¤ÇÑ µ¥ÀÌÅͺ£À̽º¿¡ Á¢¼ÓÇϱâ À§Çؼ­´Â À¯Àú´Âpg_hba.conf °Ë»ç¸¦ Åë°úÇØ¾ß ÇÏ´Â °Í ¿Ü¿¡, ±× µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇÑ CONNECT±ÇÇÑÀ» °¡ÁöÁö ¾ÊÀ¸¸é ¾ÈµË´Ï´Ù. µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇÑ À¯ÀúÀÇ Á¢¼ÓÀ» Á¦ÇÑÇÏ°í ½ÍÀ» °æ¿ì, º¸ÅëÀº pg_hba.confÇ׸ñ¿¡ ±ÔÄ¢À» Ãß°¡ÇÏ´Â °Íº¸´Ù´Â CONNECT±ÇÇÑÀ» ºÎ¿©¡¤»èÁ¦ÇÏ´Â °ÍÀÌ ´õ °£´ÜÇÕ´Ï´Ù.

ÀϺΠpg_hba.confÇ׸ñÀÇ ¿¹Á¦´Â Example 20-1¿¡ ³ªÅ¸³À´Ï´Ù. °¢Á¾ ÀÎÁõ ¹æ½ÄÀÇ »ó¼¼ÇÑ °Í¿¡ ´ëÇÏ¿©´Â ±× ÈÄ¿¡ ¼³¸íÇÕ´Ï´Ù.

Example 20-1. pg_hba.confÀÇ Ç׸ñÀÇ ¿¹

# ·ÎÄà ½Ã½ºÅÛ»óÀÇ ¸ðµç À¯Àú°¡ ÀÓÀÇÀÇ µ¥ÀÌÅͺ£À̽º¿¡
# ÀÓÀÇÀÇ µ¥ÀÌÅͺ£À̽º À¯Àú¸íÀ¸·Î Unix µµ¸ÞÀÎ ¼ÒÄÏÀ» »ç¿ëÇØ Á¢¼ÓÇÏ´Â °ÍÀ» Çã°¡
# (·ÎÄà Á¢¼Ó¿¡¼­´Â µðÆúÆ®).
#
# TYPE  DATABASE    USER        CIDR-ADDRESS          METHOD
local   all         all                               trust

# ·ÎÄà loopbackÀÇ TCP/IP Á¢¼ÓÀ» »ç¿ëÇÏ´Â °ÍÀº À§¿Í °°´Ù.
#
# TYPE  DATABASE    USER        CIDR-ADDRESS          METHOD
host    all         all         127.0.0.1/32          trust     

# ºÐ¸®µÈ netmask ¿­À» »ç¿ëÇϰí ÀÖ´Â °ÍÀ» Á¦¿ÜÇϰí À§¿Í °°´Ù.
#
# TYPE  DATABASE    USER        IP-ADDRESS    IP-MASK             METHOD
host    all         all         127.0.0.1     255.255.255.255     trust     

# IPÁÖ¼Ò 192.168. 93. x¸¦ °¡Áö´Â ¸ðµç È£½ºÆ®ÀÇ ¸ðµç À¯Àú°¡,
# ident°¡ ±× Á¢¼Ó¿¡ ´ëÇØ º¸°íÇÏ´Â °Í°ú °°Àº À¯Àú¸í(ÀüÇüÀûÀ¸·Î´Â Unix À¯Àú¸í)À¸·Î
# µ¥ÀÌÅͺ£À̽º "postgres"¿¡ Á¢¼ÓÇÏ´Â °ÍÀ» Çã°¡.
# 
# TYPE  DATABASE    USER        CIDR-ADDRESS          METHOD
host    postgres    all         192.168.93.0/24       ident sameuser

# À¯ÀúÀÇ ÆÐ½º¿öµå°¡ ¿Ã¹Ù¸£°Ô ÀԷµǾúÀ» °æ¿ì,
# È£½ºÆ® 192.168. 12.10ºÎÅÍÀÇ À¯Àú°¡ µ¥ÀÌÅͺ£À̽º "postgres"¿¡ Á¢¼ÓÇÏ´Â °ÍÀ» Çã°¡.
# 
# TYPE  DATABASE    USER        CIDR-ADDRESS          METHOD
host    postgres    all         192.168.12.10/32      md5

# ¼±ÇàÇÏ´Â "host"ÇàÀÌ ¾øÀ¸¸é, ÀÌ 2Çà¿¡ ÀÇÇØ 192.168. 54.1À¸·Î Á¢¼Ó ½Ãµµ´Â
# ¸ðµÎ °ÅºÎ(ÀÌ Ç׸ñÀÌ ÃÖÃÊ·Î ÀÏÄ¡µÇ±â ¶§¹®¿¡).
# ´Ù¸¸, ÀÎÅͳݻóÀÇ ´Ù¸¥ ¸ðµç Àå¼Ò·ÎºÎÅÍÀÇ Kerberos 5 Á¢¼ÓÀº Çã°¡.
# Á¦·Î ¸¶½ºÅ©´Â, È£½ºÆ® IPÁÖ¼ÒÀÇ ºñÆ®¸¦ °í·ÁÇÏÁö ¾Ê°í
# ¾î´À È£½ºÆ®¶óµµ Á¶ÇÕÇÒ ¼ö ÀÖ´Â °ÍÀ» ÀǹÌÇÕ´Ï´Ù.
# 
# TYPE  DATABASE    USER        CIDR-ADDRESS          METHOD
host    all         all         192.168.54.1/32       reject
host    all         all         0.0.0.0/0             krb5

# 192.168. x.x È£½ºÆ®·ÎºÎÅÍÀÇ À¯Àú°¡, ident °Ë»ç¸¦ Åë°úÇÏ´Â °æ¿ì,
# ¾î´À µ¥ÀÌÅͺ£À̽º¶óµµ Á¢¼ÓÀ» Çã°¡. ¸¸¾à, ¿¹¸¦ µé¸é, ident°¡ "bryanh"¶ó°í ÀÎÁ¤ÇØ
# "bryanh"°¡ PostgreSQLÀÇ À¯Àú "guest1"·Î¼­
# Á¢¼Ó ¿ä±¸¸¦ ³»´Â °æ¿ì, "bryanh"´Â "guest1"·Î Á¢¼ÓÀÌ Çã°¡µÈ´Ù°í ÇÕ´Ï´Ù
# ¸Ê "omicron"¿¡ ´ëÇÑ ±âÀç»çÇ×ÀÌ pg_ident.conf¿¡ ÀÖÀ¸¸é Á¢¼ÓÀ» Çã°¡.
#
# TYPE  DATABASE    USER        CIDR-ADDRESS          METHOD
host    all         all         192.168.0.0/16        ident omicron

# ·ÎÄà Á¢¼Ó¿¡ ´ëÇØ¼­, ÀÌÇÏÀÇ ´Ü 3Çà ¹Û¿¡ ±âÀç°¡ ¾ø´Â °æ¿ì, ·ÎÄà À¯Àú´Â 
# ÀÚ½ÅÀÇ µ¥ÀÌÅͺ£À̽º(µ¥ÀÌÅͺ£À̽º À¯Àú¸í°ú °°Àº À̸§ÀÇ µ¥ÀÌÅͺ£À̽º)¿¡°Ô¸¸ Á¢¼Ó Çã°¡.
# ´Ù¸¸ °ü¸®ÀÚ¿Í ·Ñ "support"ÀÇ ¸â¹ö´Â ¸ðµç µ¥ÀÌÅͺ£À̽º¿¡ Á¢¼Ó °¡´É.
# $PGDATA/admins ÆÄÀÏÀº °ü¸®ÀÚÀÇ ¸®½ºÆ®¸¦ Æ÷ÇÔÇÑ´Ù.   
# ¸ðµç °æ¿ì¿¡ ÆÐ½º¿öµå°¡ ÇÊ¿ä.
#
# TYPE  DATABASE    USER        CIDR-ADDRESS          METHOD
local   sameuser    all                               md5
local   all         @admins                           md5
local   all         +support                          md5

# À§ÀÇ ¸¶Áö¸· 2ÇàÀº 1°³ÀÇ ÇàÀ¸·Î Á¤¸®ÇÏ´Â °ÍÀÌ °¡´É.
local   all         @admins,+support                  md5

# µ¥ÀÌÅͺ£À̽ºÀÇ ¿­¿¡´Â ¸®½ºÆ®³ª ÆÄÀÏ¸íµµ »ç¿ëÇÒ ¼ö ÀÖÁö¸¸, ±×·ìÀº »ç¿ëÇÒ ¼ö ¾ø´Ù.
local   db1,db2,@demodbs  all                         md5