기술 정보
home
채널 소개
home

Logon Trigger를 이용한 접속 제한 방법

문서 유형
기술 정보
분야
보안
키워드
Logon Trigger
USERNAME
1 more property

개요

Logon Trigger는 IP, 사용자명(USERNAME) 등 특정 조건에 따라 데이터베이스 접속을 제한하는 기능입니다.
S1419 버전부터 SYS 계정을 제외한 다른 계정에도 해당 트리거가 동작하도록 개선되었습니다.
해당 기능을 사용하기 위해서는 tip 파일에 파라미터를 설정하거나 SQL 명령으로 적용해야 합니다.
필요 설정
tip 파일에 _DDL_TRIGGER_ENABLE=Y 추가
또는 SQL에서 다음 명령 실행
alter system set _ddl_trigger_enable=y;
SQL
복사

방법

Logon Trigger 생성 예제

SQL> alter system set _ddl_trigger_enable=y; System altered. SQL> create or replace trigger valid_user 2 after logon on database 3 begin 4 if SYS_CONTEXT('USERENV','SESSION_USER') not in ('TEST') 5 then 6 raise_application_error (-20001,'Login not allowed from this USER'); 7 end if; 8 end; 9 / Trigger 'VALID_USER' created.
SQL
복사

동작 예시

SYS 계정 접속 가능
SQL> exit Disconnected. ora11g@tbr5:/home/tbr5 $ tbsql sys/tibero tbSQL 5 TmaxData Corporation Copyright (c) 2008-. All rights reserved. Connected to Tibero.
SQL
복사
TEST 계정 접속 가능
SQL> exit Disconnected. ora11g@tbr5:/home/tbr5 $ tbsql test/test tbSQL 5 TmaxData Corporation Copyright (c) 2008-. All rights reserved. Connected to Tibero.
SQL
복사
기타 계정 접속 시 오류 발생
SQL> exit Disconnected. ora11g@tbr5:/home/tbr5 $ tbsql tibero/tmax tbSQL 5 TmaxData Corporation Copyright (c) 2008-. All rights reserved. TBR-7440: The user defined error is called. TBR-20001: Login not allowed from this USER. TBR-15163: Unhandled exception at SYS.VALID_USER, line 6.
SQL
복사