スキーマの権限の使い方

スキーマに入る権利と、作る権利

書き方

GRANT USAGE ON SCHEMA スキーマ TO ロール;
GRANT CREATE ON SCHEMA スキーマ TO ロール;
REVOKE CREATE ON SCHEMA public FROM PUBLIC;
CREATE SCHEMA スキーマ AUTHORIZATION ロール;
\dn+

スキーマの USAGE がないと、中の表に権限があっても使えません。CREATE があると、そのスキーマに表を作れます。PostgreSQL 15 から public スキーマの CREATE は PUBLIC に与えられていませんが、古い版から上げたデータベースでは残っていることがあります。\dn+ の Access privileges で確かめます(U が USAGE、C が CREATE)。

例

REVOKE CREATE ON SCHEMA public FROM PUBLIC;
GRANT USAGE ON SCHEMA archive TO clerk;

実際に打って練習する

PostgreSQL DBA コースの Lv7「スキーマの権限 USAGE と CREATE」で覚えます。ブラウザの中のシミュレーターで、本物と同じように打って確かめられます。

すべてのレベルが、プラチナ以上のプランで遊べます。

PostgreSQL の管理コマンド一覧(DBA)へ戻る