PostgreSQL 8.4 は古くなっています。詳細については、バージョン管理ポリシーを確認してください。しかし、これは SQL の標準的な動作であるため (提供されたリンクされたディスカッションで Tom Lane が述べているように)、変更されている可能性は低いです。
特権は、それぞれのオブジェクトとともにシステム カタログに格納されます。たとえば、テーブルの場合:
SELECT n.nspname, c.relname, c.relacl
FROM pg_catalog.pg_class c
JOIN pg_catalog.pg_namespace n ON n.oid = c.relnamespace
WHERE c.oid = 'myschema.mytbl'::regclass -- your tablename here
次のようなものが生成されます。
nspname | relname | relacl
----------+---------+---------------------------------------------
myschema | mytbl | {postgres=arwdDxt/postgres,fuser=r/fadmin}
スラッシュの後のロール名は付与者です。fadmin
ユーザー(または任意のスーパーユーザー)として取り消すには:
REVOKE SELECT ON TABLE myschema.mytbl FROM fuser;
*acl
他のシステム テーブルにも同様の列があります。pg_namespace
スキーマなどについては、マニュアルのシステム テーブルのリストを参照してください。
より簡単な方法は、pgAdminを使用して左側のオブジェクト ブラウザでオブジェクトを選択することです。ACL が右上のプロパティ ペインに表示されます。