[MASSMAIL] Clarification on View Privileges and Operator Execution in PostgreSQL - Mailing list pgsql-general

From Ayush Vatsa
Subject [MASSMAIL] Clarification on View Privileges and Operator Execution in PostgreSQL
Date
Msg-id CACX+KaN-Lqv+k6d4b37oKFiqF6ibMkq1RVHbcTby5EjRtNQewg@mail.gmail.com
Whole thread Raw
Responses Re: Clarification on View Privileges and Operator Execution in PostgreSQL  ("David G. Johnston" <david.g.johnston@gmail.com>)
List pgsql-general
Hi PostgreSQL community,
I am recently studying about operators and views and I had doubts in two small things
1. I know if a view (security definer) is accessing a table then it is getting accessed by view owners privileges 
but what about the view which contains inbuilt operators or inbuilt functions with whose privileges those will be executed. Eg.
SET ROLE postgres;
CREATE TABLE x(id INT);
CREATE VIEW v AS SELECT * FROM x WHERE id > 100;
CREATE ROLE alex;
GRANT SELECT ON v TO alex;
SET ROLE alex;
SELECT * FROM v;

Now table x will be accessed (SELECT * FROM x) with "postgres" privileges but who will execute the 
underlying function inside the ( > ) operator ? Is it postgres or alex?

2. What if I used a user defined operator in the above example, then with whose privileges that operator will be executed?

Thanks
Ayush Vatsa
SDE AWS

pgsql-general by date:

Previous
From: Tom Lane
Date:
Subject: Re: Query regarding functions of postgres
Next
From: "David G. Johnston"
Date:
Subject: Re: Clarification on View Privileges and Operator Execution in PostgreSQL