2016-05-01 6 views

答えて

1

私は、あなたはおそらく、私はこれを試していないが、これはあなたが始めるのに十分でなければならないevent trigger.

を作成することによって、デフォルトでこれを有効にすることができると思います。

この場合、CREATE TABLEの後に実行され、行レベルのセキュリティを有効にする関数を効果的に使用できます。

PostgreSQL 9.5用のPostgreSQLドキュメントは、テーブル情報を取得するために使用できる機能のためにhttp://www.postgresql.org/docs/9.5/static/functions-event-triggers.htmlにあります。これは実現可能です。

+0

もちろん!正しい方向に私を指してくれてありがとう。 –

3

デフォルトで行レベルのセキュリティを有効または無効にすることはできません。あなたはALTER TABLE ... ENABLE ROW LEVEL SECURITYです。しかし、テーブルを所有者が最初にアクセスできるだけなので、あなたはそれを忘れることはできません。 CREATE POLICYで行セキュリティポリシーを作成しても、それでもアクセス権がないので、何か問題があったことがわかります。

ALTER TABLE ... ENABLE ROW LEVEL SECURITYはなぜ始めるべきなのか自分に尋ねることができますが、これはpostgresql-develメーリングリストの問題です。

+1

申し訳ありません。私はパフォーマンスの理由からそこにいると思う。行レベルのセキュリティが有効な場合、 'COPY'コマンドは通常の' INSERT'に変換されます。私は他の理由があると確信しています。デフォルトでは有効になっていないということは、ポリシーを作成して役割にアクセス権を与えるときに問題になります。 'ENABLE ROW SECURITY'を実行していなければ、ポリシーは適用されません。 –

関連する問題