[오라클TRIGGER예제]SCOTT 계정으로 로그인을 막는 트리거
SQL> conn
system/onj@onj 연결되었습니다.
SQL> CREATE OR REPLACE TRIGGER deny_scott
2 AFTER LOGON ON DATABASE 3 BEGIN 4
DBMS_OUTPUT.PUT_LINE(sys_context('USERENV','SESSION_USER') || ' logged o
n...'); 5 6 --IF sys_context('USERENV','SESSION_USER') =
'SCOTT' THEN 7 IF USER = 'SCOTT' THEN 8
RAISE_APPLICATION_ERROR(-20001,'SCOTT NO ACCESS'); 9 END IF; 10
END; 11 /
트리거가 생성되었습니다.
-- SCOTT계정이 DBA권한이 있다면 로그온을 막을 수가
없으므로 DBA권한이 있는 경우라면 회수 SQL> revoke dba from scott; revoke을(를) 성공했습니다.
SQL> conn scott/tiger@onj ERROR: ORA-00604: 순환 SQL 레벨 1 에 오류가
발생했습니다 ORA-20001: SCOTT NO ACCESS ORA-06512: 2행
경고: 이제는 ORACLE에
연결되어 있지 않습니다.
|
댓글 없음:
댓글 쓰기