Курсовая работа: Захист інформації в інформаційних системах

CREATE ROLE user2;

CREATE ROLE users NOLOGIN;

GRANT users TO user2;

CREATE SCHEMA schema1;

ALTER SCHEMA schema1 OWNER TO user1;

ALTER SCHEMA schema2 OWNER TO user2;

Надамо деякі права новим користувачам.

GRANT INSERT ON Accounts TO user2;

GRANT SELECT ON Accounts TO users;

GRANT UPDATE ON Operations TO user2.

Більш гнучкішим засобом контролю за доступом до таблиць БД є віртуальна таблиця(view). Нижче приведені SQL-запити для створення віртуальних таблиць для вибору щоденних операцій, рахунків одеської філії банку та операцій з переводами коштів до філії:

CREATE VIEW Today_Operations AS

SELECT * FROM Operation WHERE dat = CURRENT_DATE

CREATE VIEW Odessa_Branch_Accounts AS

SELECT * FROM Account WHERE num IN (SELECT account FROM Accounts WHERE branch IN (SELECT num FROM Branch WHERE name = 'Odessa'))

CREATE VIEW Income_Operations AS

SELECT * FROM Operation WHERE change > 0.

У СКБД “Postgres” для віртуальних таблиць можлива заміна запитів UPDATE, INSERT, DELETEдо цих таблиць на запити користувача.

CREATE RULE Income_Operations_INSERT AS ON INSERT TO schema1.Income_Operations

DO INSTEAD INSERT INTO Income_Operations

SELECT NEW.code, NEW.dat, NEW.credit_num, NEW.debet_num

WHERE NEW.change >0;

CREATE RULE Income_Operations_UPDATE AS ON UPDATE TO schema1.Income_Operations

DO INSTEAD UPDATE Income_Operations SET

code=NEW.code, dat=NEW.dat, credit_num=NEW.credit_num, debet_num=NEW.debet_num

WHERE NEW.change >0;

CREATE RULE Income_Operations_DELETE AS ON DELETE TO schema1.Income_Operations

DO INSTEAD DELETE FROM Income_Operations WHERE NEW.change >0;

CREATE RULE Today_Operations_INSERT AS ON INSERT TO schema1.Today_Operations

К-во Просмотров: 296
Бесплатно скачать Курсовая работа: Захист інформації в інформаційних системах