[TIBERO] 특정 User로 접속시 Trigger로 DDL,DML 제한걸기

반응형

 

 

1. Drop, Truncate를 막는 Trigger 생성

CREATE OR REPLACE TRIGGER user1.user1_no_drop_truncate
before drop or truncate ON user1.schema
begin
raise_application_error (-20102, 'Cannot execute DROP or TRUNCATE !!');
end;

 

2. DDL 전부 제한

CREATE OR REPLACE TRIGGER user1.user1_no_ddl
before DDL ON user1.schema
begin
raise_application_error (-20101, 'Cannot execute any DDL !!');
end;

 

3. 특정 Table DML 전부 제한

CREATE OR REPLACE TRIGGER user1.user1_no_dml
before insert or update or delete on user1.t_test1
begin
raise_application_error (-20103, 'Cannot execute DML');
end;

 

4. sys 계정(권한이 있는 다른 계정)에서는 drop, truncate 가능

 

5. Trigger 활성화/비활성화

SQL> alter trigger user1.user1_no_ddl disable;


SQL> alter trigger user1.user1_no_ddl enable;

 

반응형