일반유저에게 kill session 권한 주기
2019.08.12 06:48
원문 : http://www.ischo.net -- 조인상 // 시스템 엔지니어
Writer : http://www.ischo.net -- ischo // System Engineer in Replubic Of Korea
+++++++++++++++++++++++++++++++++++++++++++++++++++++++
원문 : http://www.ischo.net -- 조인상 //시스템 엔지니어
+++++++++++++++++++++++++++++++++++++++++++++++++++++++
system 유저가 아닌 일반유저도 kill session 할 권한이 필요하지만, 보안상 안전하지 않다.
대신에 DBA유저가 kill session 프로시저를 생성하여 일반유저에게 프로시저 실행권한을 줄 수 있다.
1. 프로시저 생성
SYS로 접속후
SQL> CREATE OR REPLACE PROCEDURE SP_KILL_SESSION (P_SID NUMBER, P_SERIAL NUMBER)
AS
V_USER_NAME VARCHAR2 (30);
BEGIN
SELECT USERNAME
INTO V_USER_NAME
FROM V$SESSION
WHERE SID = P_SID AND SERIAL# = P_SERIAL;
IF V_USER_NAME IN ('NONDBAUSER1, NONDBAUSER2')
THEN
EXECUTE IMMEDIATE
'ALTER SYSTEM KILL SESSION ''' || P_SID || ',' || P_SERIAL || '''';
ELSIF V_USER_NAME IS NULL
THEN
RAISE_APPLICATION_ERROR (-20001, 'Invalid Session ID');
END IF;
END SP_KILL_SESSION;
/
2. 일반유저에게 프로시저 실행권한 주기
SQL> grant execute on sys.SP_KILL_SESSION to <nondbauser>;
3. 프로시저 synonym 생성
SQL> CREATE SYNONYM <nondbauser>.SP_KILL_SESSION FOR SYS.SP_KILL_SESSION;
4. 일반유저에서 프로시저 실행 테스트
SQL> conn <non-dbausr>/<password>
SQL> SELECT SID, SERIAL# FROM V$SESSION WHERE USERNAME='<non-dbauser>';
SID SERIAL#
---------- ----------
6718 29167
3425 49921
SQL> exec SP_KILL_SESSION(6718,29167);
SQL> SELECT SID, SERIAL# FROM V$SESSION WHERE USERNAME='<non-dbauser>';
SID SERIAL#
---------- ----------
3425 49921
댓글 0
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
115 | checkpoint not complete에 대해서 | ischo | 2013.05.22 | 267 |
114 | 백업에 관한 조언 | 조인상 | 2010.05.12 | 5188 |
113 | [사이트 소개]오라클 사용자 그룹 | 조인상 | 2010.05.12 | 5726 |
112 | [기타] 디비튜닝에 대한 질문과답변내용... | 조인상 | 2010.05.12 | 5728 |
111 | 필수로 암기해야 할 view 들... | 조인상 | 2010.05.12 | 5755 |
110 | 오라클 재시작시에 롤백세그먼트 OFFLINE | 조인상 | 2010.05.12 | 5793 |
109 | 인텔 펜티엄4 기반 Windows에 설치시 오류에 대해서 | 조인상 | 2010.05.12 | 5809 |
108 | 오라클 뷰들... | 조인상 | 2010.05.12 | 5914 |
107 | OS의 파일사이즈가 2GB로 제한될때 split으로 나누기 | 조인상 | 2010.05.12 | 6206 |
106 | 패치 중 OS 문제로 runInstaller가 끊길때 | 조인상 | 2010.05.12 | 6439 |
105 | OPATCH(V9.2) 기능 및 사용가이드 | 조인상 | 2010.05.12 | 6587 |
104 | 오라클 인덱스 분리해서 임포트 하는 방법 | 조인상 | 2010.05.12 | 6648 |
103 | OPN 가입시의 장점 | 조인상 | 2010.05.12 | 6734 |
102 | OS재설치 후 오라클 복구(솔라리스) | 조인상 | 2010.05.12 | 6790 |
101 | 테이블 복구 사례 | 조인상 | 2010.05.12 | 6825 |
100 | 오라클 8.1.7 -> 7.3.4 로 DB data 이전 | 조인상 | 2010.05.12 | 6936 |
99 | INCREMENTAL, CUMULATIVE, COMPLETE EXPORT & IMPORT | 조인상 | 2010.05.12 | 7154 |
98 | 오라클에 접속하는 최대 인스턴스개수(세션개수)를 늘리는 방법 | 조인상 | 2010.05.12 | 7155 |
97 | AIX5.2 + 9.2.0.1.0 install + 9.2.0.5.0 patch | 조인상 | 2010.05.12 | 7299 |
96 | 오라클 튜닝 - 옵티마이저 | 조인상 | 2010.05.12 | 7337 |