2017-08-02 9 views
0

読み取り専用postgresロールを作成したいが、ロールを関数Iを含むデータベースを変更しない関数を使用できるようにしたい将来作成される可能性があります。彼らはデータベースを変更せず(そして他の要件も満たしているので)、私はこれらの機能を安定しているかIMMUTABLE(適宜)としてマークしています。すべてのSTABLE関数またはIMMUTABLE関数に対してEXECUTEをデフォルトでpostgresロールに付与する

STABLE関数とIMMUTABLE関数のデフォルトの実行権限をロールに付与する方法はありますか?類似するものalter default privileges in schema public grant select on tables to <role_name>;

私はpostgresql 9.6を使用しています。

答えて

1

このようにすることはできません。

おそらく、カタログ内の関数の定義を調べることによって、イベントトリガーを作成することができます。

volatile関数も読み取り専用で、安定した関数は副作用を持つ可能性があることに注意してください。だから私はボラティリティに基づいてこれをしようとすることはとにかく正しいとは思わない。

関連する問題