column level, uid based authorization to update columns - Mailing list pgsql-general

From Gauthier, Dave
Subject column level, uid based authorization to update columns
Date
Msg-id 482E80323A35A54498B8B70FF2B8798004188B2064@azsmsx504.amr.corp.intel.com
Whole thread Raw
Responses Re: column level, uid based authorization to update columns  (Ries van Twisk <pg@rvt.dds.nl>)
Re: column level, uid based authorization to update columns  (David Fetter <david@fetter.org>)
Re: column level, uid based authorization to update columns  (Stephen Frost <sfrost@snowman.net>)
List pgsql-general

In linux, given the linux based uid of the user, how might someone implement column level update restrictions on a uid basis?  For example...

 

create table foo (strcol varchar(256), intcol integer);

 

Now, I want linux processes runing under uid “joesmith” to be able to update strcol but not intcol.  Some other user could update intcol but not strcol.  Others could update both, others neither.  I’m also willing to give you a table that maps all uids to the columns they can update, something you could ref in a constraint or update trigger or something.   So that might be something like...

 

            create table foo_auth (uid varchar(256), cols text[]);

            insert into foo_auth (uid,cols) values (‘joesmith’,’{‘strcol’}’);

insert into foo_auth (uid,cols) values (‘jillbrown’,’{‘intcol’}’);

            insert into foo_auth (uid,cols) values (‘thedba’,’{‘strcol’,’intcol’}’);

 

Thanks in Advance !

 

pgsql-general by date:

Previous
From: Edoardo Panfili
Date:
Subject: add a value to an ENUM type
Next
From: Ries van Twisk
Date:
Subject: Re: column level, uid based authorization to update columns