У нас вы можете посмотреть бесплатно How to implement VPD in Oracle Database (Part 2) или скачать в максимальном доступном качестве, видео которое было загружено на ютуб. Для загрузки выберите вариант из формы ниже:
Если кнопки скачивания не
загрузились
НАЖМИТЕ ЗДЕСЬ или обновите страницу
Если возникают проблемы со скачиванием видео, пожалуйста напишите в поддержку по адресу внизу
страницы.
Спасибо за использование сервиса ClipSaver.ru
How to implement VPD (Virtual Private Database) in Oracle Database(9i,10g,11g,12c) Enterprise Edition. PART 2 Video. links: Part 1 • How to implement VPD in Oracle Database (P... Part 2 • How to implement VPD in Oracle Database (P... Part 3 • How to implement VPD in Oracle Database (P... Now we will conn to sec_adm user : ------------------ CONNECT sec_adm/sec_adm; This table will contain the user access info. CREATE TABLE users (id VARCHAR2(30) NOT NULL, ouser VARCHAR2(30) NOT NULL, first_name VARCHAR2(50) NOT NULL, last_name VARCHAR2(50) NOT NULL); INSERT INTO users VALUES ('HR','USER1','User','One'); INSERT INTO users VALUES ('FINANCE','USER2','User','Two'); COMMIT; conn schemaowner/schemaowner GRANT SELECT, INSERT ON user_data TO user1, user2; Now we will create the context package: ---------------------------------------- CONNECT sec_adm/sec_adm; CREATE CONTEXT SCHEMAOWNER USING context_package; CREATE OR REPLACE PACKAGE context_package AS PROCEDURE set_context; END; / Next we create the context_package body which will actually set the user context. CREATE OR REPLACE PACKAGE BODY context_package IS PROCEDURE set_context IS v_ouser VARCHAR2(30); v_id VARCHAR2(30); BEGIN DBMS_SESSION.set_context('SCHEMAOWNER','SETUP','TRUE'); v_ouser := SYS_CONTEXT('USERENV','SESSION_USER'); BEGIN SELECT id INTO v_id FROM users WHERE ouser = v_ouser; DBMS_SESSION.set_context('SCHEMAOWNER','USER_ID', v_id); EXCEPTION WHEN NO_DATA_FOUND THEN DBMS_SESSION.set_context('SCHEMAOWNER','USER_ID', 0); END; DBMS_SESSION.set_context('SCHEMAOWNER','SETUP','FALSE'); END set_context; END context_package; / SHOW ERRORS Next we make sure that all users have access to the Context_Package. GRANT EXECUTE ON context_package TO schemaowner,user1,user2; Create Login Trigger Next we must create a trigger to fire after the user logs onto the database. CONNECT sec_adm/sec_adm; CREATE OR REPLACE TRIGGER set_security_context AFTER LOGON ON DATABASE BEGIN context_package.set_context; END; / SHOW ERRORS