コンピュータクワガタ

かっぱのかっぱによるコンピュータ関連のサイトです

テーブルの権限

最後にテーブルの権限。これは数が多くて完全ではない感じ。
まずは、テスト用のテーブルを作る。

test=> CREATE TABLE testschema.testtable(
test(>   id integer,
test(>   name varchar(20)
test(> );
CREATE TABLE

お約束で、PUBLICの権限をはずす。

test=> REVOKE ALL PRIVILEGES ON TABLE testschema.testtable FROM PUBLIC RESTRICT;
REVOKE

オーナの権限だけが存在している。

{testadmin=a*r*w*d*R*x*t*/testadmin}

データベース管理者グループにALL権限を与える。

test=> GRANT ALL PRIVILEGES ON TABLE testschema.testtable TO GROUP testadmins;
GRANT

そうすると権限は以下のようになる。

{testadmin=a*r*w*d*R*x*t*/testadmin,"group testadmins=arwdRxt/testadmin"}

最後に開発グループにも適切な権限を与える。これはとりあえず、全部でもいいかも。

test=> GRANT ALL PRIVILEGES ON TABLE testschema.testtable TO GROUP testdevs;
GRANT

最終的には、以下のような権限になる。

{testadmin=a*r*w*d*R*x*t*/testadmin,"group testadmins=arwdRxt/testadmin","group testdevs=arwdRxt/testadmin"}

なかなかめんどくさいので、実際にはここまでやるのかな?