> On Jul 23, 2021, at 1:57 PM, Mark Dilger <mark.dil...@enterprisedb.com> wrote:
> 
> What's the point in having these as separate roles if they can circumvent 
> each other's authority?

That was probably too brief a reply, so let me try again.  If the GUC 
circumvents the event trigger, then my answer above stands.  If the GUC merely 
converts the event trigger into an error, then you have the problem that the 
customer can create event triggers which the service provider will need to 
disable (because they cause the service providers legitimate actions to error 
rather than succeed).  Presumably the service provider can disable them logged 
in as superuser.  But that means the service customer has their event trigger 
turned off, at least for some length of time, which is not good if the event 
trigger is performing audit logging for compliance purposes, etc.  Also, we 
can't say whether pg_network_security role has been given to the customer, or 
if that is being kept for the provider's use only, so we're not really sure 
whether pg_network_security should be able to do these sorts of things, but in 
the case that the service provider is keeping pg_network_security for themself, 
it seems they wouldn't want the customer to cause pg_network_security 
operations to fail.  We can't make too many assumptions about the exact 
relationship between those two roles.



—
Mark Dilger
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company





Reply via email to