It can work ...
I have given the example for a view ... You can create INSTEAD OF triggers on the view for UPDATEs and DELETEs ..
You may want to consider performance implications of the approach
Let us know how it goes
Cheers
Sathyaram
create table lbac_main(pid int not null primary key,pdef char(20),row_owner_id char(8),seclabel char(8))
insert into lbac_main values(1,'DB2INST1 ROW','DB2INST1','LB1'),
(2,'DB2INST1 ROW','DB2INST1','LB2'),(3,'SS ROW','SATHYA','LB1')
CREATE TABLE LBAC_RULES(user_id char(8) not null,seclabel char(8) not null,tname char(20) not null,
access char(1) not null)
alter table lbac_rules add primary key(user_id,seclabel,tname,access)
insert into lbac_rules values('SATHYA','LB1','LBAC_MAIN','W'),
('SATHYA','LB2','LBAC_MAIN','R')
insert into lbac_rules values('DB2INST1','LB1','LBAC_MAIN','W'),
('DB2INST1','LB2','LBAC_MAIN','W')
CREATE VIEW LM_MAIN_V AS
select pid,pdef from lbac_rules lr,lbac_main lm where tname='LBAC_MAIN' and lr.seclabel=lm.seclabel and lr.user_id=USER and access>='R'
AND LM.ROW_OWNER_ID=USER