| PostgreSQL 8.3.3¹®¼ | ||||
|---|---|---|---|---|
| Prev | Fast Backward | Fast Forward | Next | |
REVOKE [ GRANT OPTION FOR ]
{ { SELECT | INSERT | UPDATE | DELETE | REFERENCES | TRIGGER }
[,...] | ALL [ PRIVILEGES ] }
ON [ TABLE ]
tablename
[, ...]
FROM {
username
| GROUP
groupname
| PUBLIC } [, ...]
[ CASCADE | RESTRICT ]
REVOKE [ GRANT OPTION FOR ]
{ { USAGE | SELECT | UPDATE }
[,...] | ALL [ PRIVILEGES ] }
ON SEQUENCE
sequencename
[, ...]
FROM {
username
| GROUP
groupname
| PUBLIC } [, ...]
[ CASCADE | RESTRICT ]
REVOKE [ GRANT OPTION FOR ]
{ { CREATE | CONNECT | TEMPORARY | TEMP } [,...] | ALL [ PRIVILEGES ] }
ON DATABASE
dbname
[, ...]
FROM {
username
| GROUP
groupname
| PUBLIC } [, ...]
[ CASCADE | RESTRICT ]
REVOKE [ GRANT OPTION FOR ]
{ EXECUTE | ALL [ PRIVILEGES ] }
ON FUNCTION
funcname
( [ [
argmode
] [
argname
]
argtype
[, ...] ] ) [, ...]
FROM {
username
| GROUP
groupname
| PUBLIC } [, ...]
[ CASCADE | RESTRICT ]
REVOKE [ GRANT OPTION FOR ]
{ USAGE | ALL [ PRIVILEGES ] }
ON LANGUAGE
langname
[, ...]
FROM {
username
| GROUP
groupname
| PUBLIC } [, ...]
[ CASCADE | RESTRICT ]
REVOKE [ GRANT OPTION FOR ]
{ { CREATE | USAGE } [,...] | ALL [ PRIVILEGES ] }
ON SCHEMA
schemaname
[, ...]
FROM {
username
| GROUP
groupname
| PUBLIC } [, ...]
[ CASCADE | RESTRICT ]
REVOKE [ GRANT OPTION FOR ]
{ CREATE | ALL [ PRIVILEGES ] }
ON TABLESPACE
tablespacename
[, ...]
FROM {
username
| GROUP
groupname
| PUBLIC } [, ...]
[ CASCADE | RESTRICT ]
REVOKE [ ADMIN OPTION FOR ]
role
[, ...] FROM
username
[, ...]
[ CASCADE | RESTRICT ]
REVOKE¸í·ÉÀº 1°³³ª ±× ÀÌ»óÀÇ ·Ñ¿¡ ´ëÇØ¼ ÀÌÀü¿¡°Ô ÁØ ±ÇÇÑÀ» Ãë¼ÒÇÕ´Ï´Ù. PUBLICŰ¿öµå´Â ¸ðµç ·ÑÀÇ ¾Ï¹¬ÀûÀ¸·Î Á¤ÀÇµÈ ±×·ìÀ» ÂüÁ¶ÇÕ´Ï´Ù.
±ÇÇÑÀÇ Á¾·ùÀÇ Àǹ̿¡ ´ëÇØ¼´Â GRANT ¸í·ÉÀÇ ¼³¸íÀ» ÂüÁ¶ÇØ ÁÖ¼¼¿ä.
¸ðµç ·ÑÀº, ±× ·Ñ¿¡ Á÷Á¢ Çã°¡µÈ ±ÇÇÑ, ÇöÀç ¼ÓÇϰí ÀÖ´Â ·Ñ¿¡ Çã°¡µÈ ±ÇÇÑ, PUBLIC¿¡ Çã°¡µÈ ±ÇÇÑÀ̶ó°í ÇÏ´Â 3°³ÀÇ ±ÇÇÑÀ» ¸ÂÃá ±ÇÇÑÀ» °¡Áö°í ÀÖ´Â °Í¿¡ ÁÖÀÇÇØ ÁÖ¼¼¿ä. µû¶ó¼, ¿¹¸¦ µé¸é PUBLIC·ÎºÎÅÍSELECT±ÇÇÑÀ» Ãë¼ÒÇÏ´Â °ÍÀº, ¹Ýµå½Ã ¸ðµç ·ÑÀÌ ±× °´Ã¼¿¡ ´ëÇÑSELECT±ÇÇÑÀ» ÀÒ´Â °ÍÀ» ÀǹÌÇÏÁö ¾Ê½À´Ï´Ù. ±ÇÇÑÀÌ Á÷Á¢ Çã°¡µÇ°í ÀÖ´Â ·Ñ, ȤÀº, º°·Ñ °æÀ¯·Î Çã°¡µÇ°í ÀÖ´Â ·ÑÀº,SELECT±ÇÇÑÀ» °è¼Ó °¡Áý´Ï´Ù.
GRANT OPTION FOR°¡ ÁöÁ¤µÇ¾úÀ» °æ¿ì, ±ÇÇÑ ÀÚü°¡ ¾Æ´Ï°í, ±× ±ÇÇÑÀÇ Çã°¡µÈ ¿É¼Ç¸¸ÀÌ »èÁ¦µË´Ï´Ù. ÁöÁ¤µÇ¾î ÀÖÁö ¾ÊÀ¸¸é, ±ÇÇѰú Çã°¡µÈ ¿É¼ÇÀÇ ¾çÂÊ ¸ðµÎ°¡ »èÁ¦µË´Ï´Ù.
¸¸¾à grant option ±ÇÇÑÀ» º¸À¯ÇÑ »ç¿ëÀÚ°¡ ´Ù¸¥ »ç¿ëÀÚ¿¡°Ô grant option ±ÇÇÑÀ» ºÎ¿©ÇÑ´Ù¸é, ´Ù¸¥ »ç¿ëÀÚ¿¡ ÀÇÇØ º¸À¯µÇ´Â ±ÇÇÑÀ» ÀÇÁ¸(dependent) ±ÇÇÑÀ̶ó°í ºÎ¸¥´Ù. ¸¸¾à óÀ½ »ç¿ëÀÚ¿¡ ÀÇÇØ º¸À¯µÇ´Â grant option ³ª ±ÇÇÑÀº Á¦°ÅµÇ°í, ÀÇÁ¸ ±ÇÇÑÀº Á¸ÀçÇÑ´Ù¸é À̵é ÀÇÁ¸ ±ÇÇѵéÀº ¸¸¾à CASCADE°¡ ¸í½ÃµÈ´Ù¸é Á¦°ÅµÉ °ÍÀÌ´Ù. ´Ù¸¥ Á¦°ÅȰµ¿µéÀº ½ÇÆÐÇÒ °ÍÀÌ´Ù. ÀÌ Àç±Í Á¦°Å(recursive revocation)´Â ¿ÀÁ÷ REVOKE ¸í·É¾îÀÇ ÁÖüÀÎ »ç¿ëÀÚ¸¦ ÃßÀûÇÒ ¼ö Àִ üÀÎÀ» ÅëÇØ ºÎ¿©µÇ¾îÁø ±ÇÇÑ¿¡¸¸ ¿µÇâÀ» ¹ÌÄ£´Ù. ±×·¡¼ ¿µÇâÀ» ¹Þ°ÔµÈ »ç¿ëÀÚµéÀº ±ÇÇÑÀÌ ¶ÇÇÑ ´Ù¸¥ »ç¿ëÀÚµéÀ» ÅëÇØ¼ ºÎ¿©µÈ´Ù¸é ±ÇÇÑÀ» È¿°úÀûÀ¸·Î À¯ÁöÇÒ °ÍÀÌ´Ù.
·ÑÀÇ ¸â¹ö ÀÚ°ÝÀ» ÃëµæÇØ Áö¿ì´Â °æ¿ì, ¶È°°ÀÌ ÇൿÇÏÁö¸¸, GRANT OPTION´Â ¾Æ´Ï°íADMIN OPTION°¡ ºÒ¸³´Ï´Ù. ¶Ç, ÀÌ ¸í·É Çü½Ä¿¡¼´Â ¹«ÀǹÌÇÑGROUP¶ó°í ÇÏ´Â ´Ü¾î¸¦ ¹Þ¾ÆµéÀÌÁö ¾Ê´Â °Í¿¡ ÁÖÀÇÇØ ÁÖ¼¼¿ä.
Á¸ÀçÇÏ´Â ¿ÀºêÁ§Æ®¿¡ ºÎ¿©µÈ ±ÇÇÑÀ» Ç¥½ÃÇÏ·Á¸é psql ÀÇ\z¸í·ÉÀ» »ç¿ëÇØ ÁÖ¼¼¿ä. ÀÌ ¼½Ä¿¡ ´ëÇØ¼´Â GRANT À» ÂüÁ¶ÇØ ÁÖ¼¼¿ä.
»ç¿ëÀÚ´Â ¿ÀÁ÷ »ç¿ëÀÚ¿¡ ÀÇÇØ Á÷Á¢ÀûÀ¸·Î ºÎ¿©µÈ ±ÇÇѸ¸À» Á¦°ÅÇÒ ¼ö ÀÖ´Ù. ¿¹·Î¼ ¸¸¾à »ç¿ëÀÚ A°¡ »ç¿ëÀÚ B¿¡°Ô grant option ±ÇÇÑÀ» ¼ö¿©Çß´Ù¸é, ±×¸®°í »ç¿ëÀÚ B°¡ »ç¿ëÀÚ C¿¡°Ô ±× ±ÇÇÑÀ» ¹ÝȯÇÑ´Ù¸é, »ç¿ëÀÚ A´Â »ç¿ëÀÚ CÀÇ ±ÇÇÑÀ» Á÷Á¢ Á¦°ÅÇÒ ¼ö ¾ø´Ù. ´ë½Å¿¡, »ç¿ëÀÚ A´Â »ç¿ëÀÚ B·ÎºÎÅÍ grant optionÀ» Á¦°ÅÇÒ¼ö ÀÖ°í, »ç¿ëÀÚ C·Î ºÎÅÍ Á¦°ÅµÇ´Â ±ÇÇÑÀ» ¹Ýȯ¹Þ±â À§ÇØ CASCADEÀ» »ç¿ëÇÑ´Ù. ¶Ç ´Ù¸¥ ¿¹·Î, ¸¸¾à »ç¿ëÀÚ A¿Í »ç¿ëÀÚ B ¸ðµÎ °°Àº ±ÇÇÑÀ» C¿¡°Ô ºÎ¿©ÇÑ´Ù¸é, »ç¿ëÀÚ A´Â ÀÚ½ÅÀÌ ¼ÒÀ¯ÇÑ grant¸¦ Á¦°ÅÇÒ ¼ö ÀÖÁö¸¸ »ç¿ëÀÚ BÀÇ grant´Â Á¦°ÅÇÒ ¼ö ¾ø´Ù. ±×·¡¼ »ç¿ëÀÚ C´Â ¿©ÀüÈ÷ À¯È¿ÇÏ°Ô ±ÇÇÑÀ» °¡Áø´Ù.
ÁÖÀÎ ¾ø´Â ¿ÀºêÁ§Æ®°¡ ¿ÀºêÁ§Æ®¿¡ ´ëÇÑ REVOKE ±ÇÇÑÀ» ½ÃµµÇÒ¶§, ±× ¸í·ÉÀº ¸¸¾à »ç¿ëÀÚ°¡ ¿ÀºêÁ§Æ®¿¡ ´ëÇÑ ¾î¶°ÇÑ ±ÇÇѵµ ¾ø´Ù¸é ¹Ù·Î ½ÇÆÐÇÒ °ÍÀÌ´Ù. ±ÇÇÑÀÌ À¯È¿ÇÑ ÀÌ»ó, ¸í·ÉÀº ¼öÇàµÉ °ÍÀÌ REVOKE ALL PRIVILEGES Çü½Ä(form)Àº ¸¸¾à º¸À¯Çϰí ÀÖ´Â grant optionÀÌ ¾ø´Ù¸é °æ°í ¸Þ¼Áö¸¦ ³»¸± °ÍÀÌ´Ù. ¹Ý¸é¿¡ ´Ù¸¥ Çü½ÄµéÀº ¸í·É³»¿¡ ¸íÈ®ÇÏ°Ô À̸§Áö¾îÁø ¾î¶² ±ÇÇÑ¿¡ ´ëÇÑ grant optionÀÌ À¯ÁöµÇÁö ¾Ê´Â´Ù¸é °æ°í¸¦ ³»¸± °ÍÀÌ´Ù. (ÁÖÀÎÀº Ç×»ó ¸ðµç grant optionÀ» º¸À¯ÇÏ´Â °Íó·³ ´Ù·ç¾îÁö±â ¶§¹®¿¡, ¿øÄ¢ÀûÀ¸·Î ÀÌ ¸í·É¹®µéÀº ¿ÀºêÁ§Æ® ÁÖÀο¡°Ô Àû¿ëµÉ »Ó¸¸ ¾Æ´Ï¶ó, À§ÀÇ °æ¿ì´Â °áÄÚ ÀϾ ¼ö ¾ø´Ù.)
¸¸¾à ½´ÆÛ»ç¿ëÀÚ°¡ GRANT ¶Ç´Â REVOKE ¸í·ÉÀ» ³»¸®±â À§ÇØ ¼±ÅÃÇÑ´Ù¸é, ¸í·ÉÀº ¿µÇâ ¹ÞÀº ¿ÀºêÁ§Æ®ÀÇ ÁÖÀο¡ ¸í·ÉµÈ °Íó·³ ¼öÇàµÈ´Ù. ¸ðµç ±ÇÇÑÀº ±Ã±ØÀûÀ¸·Î ¿ÀºêÁ§Æ® ÁÖÀÎ(¾Æ¸¶ grant option üÀÎÀ» °£Á¢ÀûÀ¸·Î °æÀ¯ÇÏ´Â)À¸·ÎºÎÅÍ ¿À±â ¶§¹®¿¡, ½´ÆÛ»ç¿ëÀÚ°¡ ¸ðµç ±ÇÇÑÀ» Á¦°ÅÇÏ´Â °ÍÀÌ °¡´ÉÇÏÁö¸¸, À§¿¡¼ ¾ð±ÞµÈ °Íó·³ CASCADEÀÇ »ç¿ëÀÌ ¿ä±¸µÇ¾îÁú °ÍÀÌ´Ù.
REVOKE´Â ¶ÇÇÑ ¿µÇâ¹ÞÀº ¿ÀºêÁ§Æ®ÀÇ ÁÖÀÎÀÌ ¾Æ´Ñ ·Ñ(role)¿¡ ÀÇÇØ ÇàÇØÁø´Ù. ±×·¯³ª REVOKE´Â ¿ÀºêÁ§Æ®¸¦ ¼ÒÀ¯ÇÏ´Â ·ÑÀÇ ¸â¹öÀ̸ç, ¶ÇÇÑ ¿ÀºêÁ§Æ®¿¡ ´ëÇÑ WITH GRANT OPTION ±ÇÇÑÀ» º¸À¯ÇÏ´Â ·ÑÀÇ ¸â¹öÀÌ´Ù. ÀÌ °æ¿ì¿¡ ¸í·ÉÀº WITH GRANT OPTION ±ÇÇÑÀ» º¸À¯Çϰųª ½ÇÁ¦·Î ¿ÀºêÁ§Æ®¸¦ ¼ÒÀ¯ÇÏ´Â ·Ñ¿¡ ÀÇÇØ¼ ³»·ÁÁö´Â °Íó·³ ¼öÇàµÈ´Ù. ¿¹·Î, ¸¸¾à Å×À̺í t1°¡ g1 ·Ñ¿¡ ÀÇÇØ ¼ÒÀ¯µÈ´Ù¸é ±×·¯¸é u1(u1´Â g1 ·ÑÀÇ ¸â¹ö´Ù)´Â g1¿¡ ÀÇÇØ ¼ö¿©µÈ °Íó·³ ±â·ÏµÈ t1¿¡ ´ëÇÑ ±ÇÇÑÀ» Á¦°ÅÇÒ ¼ö ÀÖ´Ù. À̰ÍÀº g1 ·ÑÀÇ ´Ù¸¥ ¸â¹ö·Î¼ »Ó¸¸ ¾Æ´Ï¶ó u1¿¡ ÀÇÇØ ¸¸µé¾îÁø grant¸¦ Æ÷ÇÔÇÑ´Ù.
REVOKE¸¦ ½ÇÇàÇÑ ·ÑÀº ÇÑ ·ÑÀÇ ¸â¹ö½±ÀÇ °æ·Î º¸´Ù´Â ´õ ¸¹Àº °æ·Î¸¦ ÅëÇØ¼ ±ÇÇÑÀÌ °£Á¢ÀûÀ¸·Î ºÎ¿©µÈ´Ù. ±×°ÍÀº ¸í·É¿¡ ¼öÇàµÇ±â À§ÇØ »ç¿ëµÇ¾îÁö´Â ´ã°íÀÖ´Â ·ÑÀº ÁöÁ¤µÇ¾î ÀÖÁö ¾Ê½À´Ï´Ù. ±×·± °æ¿ì¿¡ REVOKE ó·³ ¼öÇàµÇ±â¸¦ ¿øÇÏ´Â ¸íÈ®ÇÑ ·ÑÀÌ µÇ±â À§ÇÑ SET ROLEÀ» »ç¿ëÇÏ´Â °ÍÀº ÃÖ¼±ÀÇ ¼±ÅÃÀÌ´Ù. ±×·¸°Ô ÇÏ´Â ½ÇÆÐ´Â ´ç½ÅÀÌ ÀǵµÇß´ø °ÍÀ» Á¦¿ÜÇÑ »èÁ¦µÇ´Â ±ÇÇÑÀ¸·Î À̸£°Ô µÇ°Å³ª ȤÀº ¾î¶² °Íµµ ÀüÇô »èÁ¦ÇÏÁö ¾Ê°Ô µÈ´Ù.
filmsÅ×ÀÌºí¿¡¼ °ø°øÀÇ »ðÀÔ ±ÇÇÑÀ» Ãë¼ÒÇÕ´Ï´Ù.
REVOKE INSERT ON films FROM PUBLIC;
kindsºä¿¡¼ manuel»ç¿ëÀÚ·Î ºÎÅÍÀÇ ¸ðµç ±ÇÇÑÀ» Ãë¼ÒÇÕ´Ï´Ù.
REVOKE ALL PRIVILEGES ON kinds FROM manuel;
À̰ÍÀº"ÀÚ½ÅÀÌ ÁØ ¸ðµç ±ÇÇÑÀ» Ãë¼ÒÇÏ´Â"ÀÏÀ» ÀǹÌÇÕ´Ï´Ù.
»ç¿ëÀÚ joe·ÎºÎÅÍ ·Ñadmins³»ÀÇ ¸â¹ö ÀÚ°ÝÀ» ÃÖ¼ÒÇÕ´Ï´Ù.
REVOKE admins FROM joe;
GRANT ¸í·ÉÀÇ È£È¯¼º¿¡ ´ëÇÑ ÁÖ¼®Àº REVOKE¿¡µµ µé¾î¸Â½À´Ï´Ù. ±× ±¸¹®ÀÇ ¿ä¾àÀº ´ÙÀ½°ú °°½À´Ï´Ù.
REVOKE [ GRANT OPTION FOR ]
privileges
ON
object
[ (
column
[, ...] ) ]
FROM { PUBLIC |
username
[, ...] }
{ RESTRICT | CASCADE }
RESTRICT³ª CASCADEÀÇ Áß Çϳª´Â Ç¥ÁØ¿¡ µû¶ó¼ ¿ä±¸µÇ¾î Áý´Ï´Ù. ±×·¯³ª PostgreSQL¿¡¼´Â ±âº»°ª¿¡ ÀÇÇØ RESTRICT·Î °¡Á¤µË´Ï´Ù.