を照会ビューを実行するには、スーパーユーザーが必要です。Postgresの9、CentOSの7、 Postgresのデータディレクトリではないデフォルトの場所ではなく、権限が正しかったことを確認するためにrsyncを使用します。そして、適切な.configファイルが変更されました。Postgresのpgcryptoの暗号化を使用すると、使用
私はNONスーパーユーザ(testuserを)として、暗号化された項目を含むビューを照会しようとすると、私はこのエラーを取得:
ERROR: must be superuser to read files CONTEXT: PL/pgSQL function decrypt_data(bytea) line 13 at assignment
私はPostgresのスーパーユーザを使用して、同じクエリを実行すると、クエリが正常に完了します。
これは、キーファイルを読み取ろうとしているときに、ファイルシステムの読み取り権限エラーと思われます。私が暗号化を使用して見るすべては、スーパーユーザーでなくても実行する方法については言及していないようです。
私はすでにTESTUSERのために、以下の助成金を実行した:
GRANT ALL PRIVILEGES ON DATABASE xxx_db to Testuser;
GRANT SELECT ON ALL TABLES IN SCHEMA xxxxx TO Testuser;
GRANT ALL ON ALL TABLES IN SCHEMA xxxxx TO Testuser;
テストユーザーは、テーブル、ビュー、基本的にそのDB内の何かを作成することができます。..ちょうど暗号化キーを読み取れません。
今のところ、鍵のパーミッションは775で、私は777でも運が無かった。
すべてのアイデア?