« ipvsadmでロードバランサ | Main | viで文字コードを自動認識 »
PostgreSQLのアクセス権限
By admin | 12 月 16, 2008
マニュアルを見るといくつも書式が書いてあるけど、ボクがよくつかうのはコレ。
GRANT { SELECT | INSERT | UPDATE | DELETE | RULE | REFERENCES | TRIGGER | ALL [ PRIVILEGES ] } ON tablename TO username
SELECT :
指定したテーブル、ビュー、シーケンスの任意の列に対する「SELECT」を許可。
「COPY TO」も許可される。
INSERT :
指定したテーブルへの新規行の「INSERT」を許可。
UPDATE :
指定したテーブルの任意の列に対する「UPDATE」を許可。
『SELECT … FOR UPDATE』というSQLにもこの権限が必要。
DELETE :
指定したテーブルからの行の「DELETE」を許可。
RULE :
テーブルまたはビュー上のルールの作成を許可。
REFERENCES :
外部キー制約の作成を許可。
参照する側とされる側の両方のテーブルに対してこの権限が必要。
TRIGGER :
指定したテーブル上のトリガの作成を許可。
ALL [PRIVILEGES] :
利用可能な全ての権限を一度に付与。
PRIVILEGESは省略可能だが、厳密には必須。
たとえば、テーブル「test_table」に対して、
ユーザー「hoge」にはSELECTのみ、
ユーザー「kanri」には全ての権限を付与する場合は、
GRANT SELECT ON test_table TO hoge;
GRANT ALL PRIVILEGES ON test_table TO kanri;
↓役に立ったと思ったら・・・

Topics: PostgreSQL, Server |
Comments are closed.

