1

CentOS 6 (64 ビット) での PostgreSQL 9.3 の新規インストール (PostgreSQL wiki の YUM インストール マニュアルによる) では、どのユーザーにもアクセス許可が付与されません。

postgres ユーザーにログインして psql を開き、デフォルト ユーザーのロールを作成します。

CREATE ROLE <name> WITH PASSWORD '<password>';

次に、デフォルトの postgres データベースに対する権限を付与してみます。

GRANT ALL ON DATABASE postgres TO <user>;

これにより、期待される出力が得られますが、ユーザーには postgres に対する権限がありません。の出力\dp <user>も同様に空です。追加のテストでは、ユーザーにアクセス許可を与えることができないことが示されています。ただし、これらの存在しない権限が付与されているロールを削除しようとすると、次のように表示されます

ERROR: role "<user>" cannot be dropped because some objects depend on it
DETAIL: privileges for database postgres

私は途方に暮れています。また、postgres Linux ユーザーが PostgreSQL データ ディレクトリに対して適切なファイル アクセス許可を持っていることも確認しました。

4

1 に答える 1