Provided by: manpages-zh_1.5-1_all bug

NAME

       REVOKE - 刪除訪問權

SYNOPSIS

       REVOKE [ GRANT OPTION FOR ]
           { { SELECT | INSERT | UPDATE | DELETE | RULE | REFERENCES | TRIGGER }
           [,...] | ALL [ PRIVILEGES ] }
           ON [ TABLE ] tablename [, ...]
           FROM { username | GROUP groupname | PUBLIC } [, ...]
           [ CASCADE | RESTRICT ]

       REVOKE [ GRANT OPTION FOR ]
           { { CREATE | TEMPORARY | TEMP } [,...] | ALL [ PRIVILEGES ] }
           ON DATABASE dbname [, ...]
           FROM { username | GROUP groupname | PUBLIC } [, ...]
           [ CASCADE | RESTRICT ]

       REVOKE [ GRANT OPTION FOR ]
           { EXECUTE | ALL [ PRIVILEGES ] }
           ON FUNCTION funcname ([type, ...]) [, ...]
           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 ]

DESCRIPTIONyz
       REVOKE                     撤銷以前賦予(別人)的權,可以是撤銷一茤峖h-
       茖洏峈怍峈怳@組使用者的權。                關鍵字                PUBLIC
       代表隱含定義的擁有所有使用者的組。

        參閱 GRANT [grant(7)] 命令的描z獲取權類型的含義。

        請注意,任何特定的使用者都將擁有直接賦予他/她的權-
       ,加上他/她所處的任何組,       以及再加上賦予       PUBLIC       的權-
       的總和。因此,舉例來說,廢止       PUBLIC       的      SELECT      權-
       並不意味著所有使用者都失去了對該對象的  SELECT   權:   那些直接得到權-
       賦予的以及通過一茞梇o到權的人仍然擁有該權。

        如果聲明了         GRANT        OPTION        FOR,那麼只是撤銷對該權-
       的授權的權力,而不是撤銷該權本芋C

        如果一茖洏峈怮蠾閉Y項權,並且還有授權的選項,並且還把這蚥v-
       賦予了其他使用者, 那麼那些其他使用者持有的權都叫做依賴性權。 如果第一-
       茖洏峈怮蠾釭瘍v或者授權選項被撤銷,而依賴性權仍然存在,     那麼如果我-
       攽n明了   CASCADE,則所有依賴性權都被撤銷,   否則撤銷動作就會失敗。這-
       蚖撲W的撤銷只影響那種通過一茖洏峈斻儠嶀帚瘍v,      這蚚麇囓i以通過這條
       REVOKE            命令裏接馴X的使用者追蹤。            因此,如果權本-
       是通過其他使用者賦予的, 那麼被影響的使用者可以有效地保留這蚥v。

NOTES`N
        使用  psql(1)  的  \z  命令顯示在一茞{存對象上賦予的權。  參見   GRANT
       [grant(7)] 獲取關於格式的信息。

        一茖洏峈怚u能撤銷由它自己直接賦予的權。舉例來說,如果使用者          A
       帶著授權選項吧一蚥v賦予了使用者  B,然後使用者  B  又賦予了使用者   C,
       那麼使用者  A  不能直接將  C  的權撤銷。但是,使用者 A 可以撤銷使用者 B
       的授權選項,並且使用 CASCADE 選項,這樣, 使用者 C 的權就會自動被撤銷。

        如果一荈W級使用者發出一       GRANT      或者      REVOKE      命令,
       那麼命令是按照以被影響的對象的所有者執行的方式執行的。因為所有權-
       最終從對象所有者(可能間接通過賦權選項獲取),
       超級使用者可以廢除所有權,但是這樣就n求像上掩〞漕獐邡洏 CASCADE。

EXAMPLESl
        撤銷公眾在表 films 上的插入權:

       REVOKE INSERT ON films FROM PUBLIC;

        廢除使用者 manuel 對視圖 kinds 的所有權:

       REVOKE ALL PRIVILEGES ON kinds FROM manuel;

COMPATIBILITYe性
       GRANT [grant(7)] 命令的相容性信息基本上也適用於 REVOKE。語法概n是:

       REVOKE [ GRANT OPTION FOR ] privileges
           ON object [ ( column [, ...] ) ]
           FROM { PUBLIC | username [, ...] }
           { RESTRICT | CASCADE }

        標準n求  RESTRICT  或者   CASCADE   之一必須出現,   但是   PostgreSQL
       假設預設是 RESTRICT。

SEE ALSO見
       GRANT [grant(7)]

者
       Postgresql  <laser@pgsqldb.org>