PostGIS を基になるデータベース拡張として使用する MapServer に基づく Web アプリケーションがあります。Postgres スーパーユーザー経由でデータベースにアクセスしたくないので、MapServer に使用される専用のデータベース ロールが必要です。このロールには、パブリック テーブルに対する SELECT 権限 (これは簡単に達成できます) と、パブリック PostGIS 関数に対する EXECUTE 権限のみが必要です。
いくつかの疑問が生じます: すべての PostGIS 関連関数はデータベースのパブリック スキーマに格納されていますか? それとも他に考慮すべきことはありますか?
データベースの information_schema または pg_catalog からすべての関数情報 (つまり、関数名、引数の数、名前) を抽出するにはどうすればよいですか?! GRANT EXECUTE on function(args) to MapServerUser ステートメントにこの情報が必要です!
前もって感謝します!!!