This is a correction to the previously posted bug - please ignor the previous posted bug as this is the corrected version:
PostgreSQL 7.4.2 on i386-redhat-linux-gnu, compiled by GCC 2.96
I have a simple VIEW such as the following:
CREATE OR REPLACE VIEW vu_tbl_useracc AS
SELECT ua.id_user, ua.id_cmpy, ua.id_contrib, ua.dt_edited, ua.id_editedby
FROM tbl_useracc ua;
GRANT SELECT, INSERT ON TABLE vu_tbl_useracc TO GROUP grp_cisx_admin;
CREATE OR REPLACE RULE rul_i02 AS
ON INSERT TO vu_tbl_useracc DO INSTEAD
INSERT INTO tbl_useracc (id_user, id_cmpy, id_contrib) VALUES (new.id_user, new.id_cmpy, new.id_contrib);
If I attempt to INSERT into the view all works as expected.
Now when I add the following rule:
CREATE OR REPLACE RULE rul_i01 AS
ON INSERT TO vu_tbl_useracc
WHERE new.id_contrib = 1 DO SELECT raise_exception('Cannot insert Companies to access for CISX Users'::text) AS error;
Now whenever I attempt to INSERT into the view I get the following error.
ERROR: permission denied for relation vu_tbl_useracc
The error goes away if I grant both INSERT and UPDATE permissions to the above group.
I didn't have this problem on version 7.3.4 which is what I have upgraded from.
pgsql-bugs by date
|Next:||From: Tom Lane||Date: 2004-04-22 13:26:24|
|Subject: Re: Permissions on Views |
|Previous:||From: Donald Fraser||Date: 2004-04-22 12:32:40|
|Subject: Permissions on Views|