From: | "Bruce David" <brucedavid(at)bigfoot(dot)com> |
---|---|
To: | <pgsql-general(at)postgresql(dot)org> |
Subject: | Trigger on 'create table' ? |
Date: | 2002-10-23 21:33:45 |
Message-ID: | 002501c27adb$e2a229a0$6552010a@direcpc.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
All,
I'm trying to implement row level security using PostgreSQL. I envision
having column on each and every table in the database that will contain a
discriminating value that determines if a given user is able to see that row
or not. Users do not directly access the database; they get at it only
through client applications.
Is there a way to initially configure PostgreSQL such that each and every
time a 'create table foo....' command is executed that, something else would
happen instead?
For example,
CREATE TABLE weather (
city varchar(80),
lo int,
hi int,
prcp real,
date date
);
would result in the following being executed automatically:
CREATE TABLE t_weather (
city varchar(80),
lo int,
hi int,
prcp real,
date date,
hidden_column int
);
CREATE VIEW weather AS
SELECT city, lo, hi, prcp, date
FROM t_weather;
How the view gets populated is another discussion entirely.
But is there a way to set things up initially such that each 'create table'
command will exhibit the behavior described above?
Thanks.
--
Bruce
From | Date | Subject | |
---|---|---|---|
Next Message | Chris | 2002-10-23 22:58:28 | ownership of sequences |
Previous Message | Neil Conway | 2002-10-23 21:27:10 | Re: Return a "results set", use a temporary table or use a table? |