´ÙÀ½ ÀÌÀü Â÷·Ê

2. GRANT and REVOKE

2.1 GRANT

GRANT´Â user,group ȤÀº ¸ðµç userµé¿¡°Ô ÇØ´ç °´Ã¼¿¡ ´ëÇÑ »ç¿ë±ÇÇÑÀ» ½ÂÀÎÇÑ´Ù. REVOKE´Â user,group ȤÀº ¸ðµç user·ÎºÎÅÍ °´Ã¼¿¡ ´ëÇÑ »ç¿ë±ÇÇÑÀ» ¹«È¿È­ÇÑ´Ù.


GRANT privilege [,...] ON object [,...]
    TO { PUBLIC | GROUP group | username}
privilege

SELECT : ƯÁ¤ TABLE/VIEW ÀÇ column¿¡ ´ëÇÑ access À» ½ÂÀÎ
INSERT : ƯÁ¤ TABLEÀÇ ¸ðµç column ¿¡ µ¥ÀÌŸÀÇ »ðÀÔ¿¡ ´ëÇÑ ±ÇÇÑ ½ÂÀÎ
UPDTAE : ƯÁ¤ TABLEÀÇ ¸ðµç column ÀÇ °»½Å¿¡ ´ëÇÑ ±ÇÇÑ ½ÂÀÎ
DELETE : ƯÁ¤ TABLE ÀÇ row ÀÇ »èÁ¦¿¡ ´ëÇÑ ±ÇÇÑ ½ÂÀÎ
RULE : ƯÁ¤ TABLE/VIEW¿¡ ´ëÇÑ rule À» Á¤ÀÇÇÏ´Â ±ÇÇÑ¿¡ ´ëÇÑ ½ÂÀÎ
ALL : ¸ðµç ±ÇÇÑÀ» ½ÂÀÎÇÑ´Ù.
object

access ¸¦ ½ÂÀÎÇÏ´Â °´Ã¼ÀÇ À̸§À¸·Î¼­ ´ÙÀ½°ú °°Àº °´Ã¼µéÀÌ ÀÖ´Ù.

Table
Sequence
View
Index
PUBLIC

¸ðµç À¯Àú¸¦ ½ÂÀÎ
GROUP group

»ç¿ë ±ÇÇÑÀ» ȹµæÇÒ groupÀ» ÁöÁ¤, group À» ¸í½ÃÀûÀ¸·Î »ý¼ºµÇ¾îÁ® ÀÖ¾î¾ß ÇÔ.
username

»ç¿ë±ÇÇÑÀ» ȹµæÇÒ »ç¿ëÀÚ¸í. PUBLIC Àº ¸ðµç À¯Àú¿¡ ´ëÇؼ­ Àû¿ëµÈ´Ù.
Description

GRANT ´Â °´Ã¼ (object) ¸¦ »ý¼ºÇÑ À¯Àú°¡ ¸ðµç À¯Àú, ȤÀº °³ÀÎ À¯Àú, ȤÀº ±×·ì¿¡ ´ëÇØ
ÇØ´ç °´Ã¼ÀÇ »ç¿ë ±ÇÇÑÀ» Çã¿ëÇϵµ·Ï ÇÑ´Ù. °´Ã¼¸¦ »ý¼ºÇÑ À¯Àú°¡ ¾Æ´Ñ ´Ù¸¥ À¯ÀúµéÀº ±×
°´Ã¼¿¡ ´ëÇÑ »ç¿ë±ÇÇÑÀÌ ¾ø¾î¼­ »ç¿ëÇÒ ¼ö°¡ ¾ø´Ù. ´ÜÁö ±× ÇØ´ç °´Ã¼¸¦ »ý¼ºÇÑ À¯Àú¸¸ÀÌ
À̸¦ Çã¿ëÇÒ ¼ö °¡ Àִµ¥ ÀÌ´Â GRANT ¸¦ »ç¿ëÇÔÀ¸·Î¼­ ´Ù¸¥ À¯ÀúµéÀÌ »ç¿ëÇÒ ¼ö ÀÖµµ·Ï
Çã¿ëÇÑ´Ù. ¾î¶² °´Ã¼¸¦ »ý¼ºÇÑ À¯Àú´Â ÀÚµ¿ÀûÀ¸·Î ¸ðµç ±ÇÇÑÀ» °¡Áö¸ç ÀÌ ±ÇÇѵéÀº SELECT
INSERT, UPDATE, DELETE, RULE µîÀÌ¸ç ¶ÇÇÑ ±× °´Ã¼ ÀÚü¸¦ »èÁ¦ÇÒ ¼ö ÀÖ´Ù.
Notes

psql ¿¡¼­ "\z" ¸¦ »ç¿ëÇÏ¿© Á¸ÀçÇÏ´Â °´Ã¼¿¡ ´ëÇÑ permission µîÀ» ÂüÁ¶ÇÒ ¼ö ÀÖ´Ù.
permission Á¤º¸ÀÇ Çü½Ä

username=arwR : À¯Àú¿¡°Ô ½ÂÀÎµÈ »ç¿ë±ÇÇÑ
group gname=arwR : GROUP ¿¡°Ô ½ÂÀÎµÈ »ç¿ë±ÇÇÑ 
=arwR : ¸ðµç À¯Àú¿¡°Ô ½ÂÀÎµÈ »ç¿ë±ÇÇÑ

a : INSERT privilege
r : SELECT privilege
w : UPDATE/DELETE privilege
R : RULE privilege
arwR : ALL privilege
USAGE(»ç¿ë¿¹)

GRANT INSERT ON imsi_table TO PUBLIC

GRANT ALL ON imsi_table TO nogadax

2.2 REVOKE

À¯Àú,±×·ì, ȤÀº ¸ðµç À¯Àú·ÎºÎÅÍ access privilege ¸¦ Ãë¼Ò


   REVOKE privilege [,...]
    ON object [,...]
    FROM { PUBLIC | GROUP gname | username }
privilege

SELECT ,INSERT ,UPDATE, DELETE, RULE, ALL
object

Àû¿ëµÉ ¼ö ÀÖ´Â °´Ã¼ : table, view, sequence, index
group

privilege ¸¦ Ãë¼ÒÇÒ ±×·ì¸í
username

PUBLIC

Description

REVOKE ´Â °´Ã¼ÀÇ »ý¼ºÀÚ°¡ ¸ðµç À¯Àú, À¯Àú, ±×·ìµé·ÎºÎÅÍ Àü¿¡ ½ÂÀÎÇß´ø Æ۹̼ÇÀ»
ÇØÁ¦ÇÑ´Ù.
USAGE(»ç¿ë¿¹)

REVOKE INSERT ON imsi_table FROM PUBLIC

REVOKE ALL ON imsi_table FROM nogadax

´ÙÀ½ ÀÌÀü Â÷·Ê