« centos7使い始めるよ | メイン | centos7 vmware »

2017年04月12日

いまさらだけど、postgresユーザー

管理者が意図していない権限のテーブルにアクセスできてしまう。
そこでこれらの権限を削除する必要がある。

REVOKE CONNECT ON DATABASE データベース名 FROM PUBLIC;
REVOKE ALL ON SCHEMA public FROM PUBLIC;

ユーザー追加
su - postgres
createuser -D -E -R -S -P username

createdb dbname

pg_hba.conf
host all all 127.0.0.1/32 md5

-- 1. まずすべての権限を削除しているので、データベースへの接続権限を付ける必要がある。
GRANT CONNECT ON DATABASE データベース名 TO ユーザ名;

-- 2. スキーマに対してアクセス権限を付ける。
GRANT USAGE ON SCHEMA スキーマ名 TO ユーザ名;

-- 3. 特定のテーブルに対して(主な権限は{ CRUDの4つ | TRUNCATE | ALL })
GRANT 権限名 ON テーブル名 TO ユーザ名

ユーザー落とし
dropuser username

投稿者 muuming : 2017年04月12日 13:23