REVOKE privilege [, ...] ON object [, ...] FROM { PUBLIC | GROUP groupname | username }
下記の権限を設定することができます。
特定のテーブル/ビューの全ての列へのアクセスを 行なう権限です。
特定のテーブル内の全ての列にデータを挿入する権限です。
特定のテーブルの全ての列の更新を行なう権限。
特定のテーブルの行を削除する権限です。
テーブル/ ビューにルールを設定する権限。 (CREATE RULE を参照して下さい。)
全ての権限を無効にします。
アクセス権限を取り上げるオブジェクトの名前です。 下記のオブジェクトを指定することができます。
テーブル
ビュー
シーケンス
権限を取り上げるグループの名前です。
権限を取り上げるユーザの名前です。全ユーザを指定する場合は、 PUBLICキーワードを使用して下さい。
全ユーザに与えられている、指定された(複数の)権限を無効にします。
オブジェクトの作成者はREVOKEを使って、 以前に(PUBLICを用いて)全てのユーザ、あるいは、特定のユーザや グループに与えられた権限を取り上げることができます。
既存のオブジェクトに対しての詳しい権限の情報は、 psqlの\zコマンドを参照して下さい。
Database = lusitania +------------------+---------------------------------------------+ | Relation | Grant/Revoke Permissions | +------------------+---------------------------------------------+ | mytable | {"=rw","miriam=arwR","group todos=rw"} | +------------------+---------------------------------------------+ Legend: uname=arwR -- privileges granted to a user(ユーザに与えられた権限) group gname=arwR -- privileges granted to a GROUP(グループに与えられた権限) =arwR -- privileges granted to PUBLIC(全てのユーザ(PUBLIC)に与えられた権限) r -- SELECT w -- UPDATE/DELETE a -- INSERT R -- RULE arwR -- ALL
Tip: 現在のところ、グループを作成するには下記のように pg_groupテーブルに手動でデータを追加しなければなりません。 [訳注:バージョン7.0からCREATE GROUPを使ってグループにデータを追加できます。 また、上記の表では「Grant/Revoke Permissions」となっていますが、現在は 「Access permissions」となっています。]
INSERT INTO pg_group VALUES ('todos'); CREATE USER miriam IN GROUP todos;
filmsテーブルにデータを追加する権限を 全てのユーザから取り上げます。
REVOKE INSERT ON films FROM PUBLIC;
ビュー、kinds全ての権限を ユーザ、manuelから取り上げます。
REVOKE ALL ON kinds FROM manuel;
SQL92の構文では、REVOKEは、これらの機能に加え、 テーブル内の各カラムに対する権限についても無効にすることができます。
REVOKE { SELECT | DELETE | USAGE | ALL PRIVILEGES } [, ...] ON object FROM { PUBLIC | username [, ...] } { RESTRICT | CASCADE } REVOKE { INSERT | UPDATE | REFERENCES } [, ...] [ ( column [, ...] ) ] ON object FROM { PUBLIC | username [, ...] } { RESTRICT | CASCADE }
個々のフィールドについての詳細については GRANT を参照して下さい。
REVOKE GRANT OPTION FOR privilege [, ...] ON object FROM { PUBLIC | username [, ...] } { RESTRICT | CASCADE }
あるユーザが特定の権限を他のユーザに付与できるように する権限を無効にします。個々のフィールドについての詳細については GRANT を参照して下さい。
設定可能なオブジェクトは下記のものです。
[ TABLE ] テーブル/ビュー |
CHARACTER SET 文字セット |
COLLATION 照合順 |
TRANSLATION 翻訳 |
DOMAIN ドメイン |
user1がuser2にWITH GRANT OPTION権限を付与し、そして、 user2がuser3にこの権限を付与した場合、user1は CASCADEキーワードを使用して数珠つなぎに権限を取り上げる ことができます。
user1がWITH GRANT OPTION権限をuser2に付与し、そして、 user2がuser3にこの権限を付与した場合、user1は RESTRICTキーワードを付けると、権限の取り上げに失敗します。