Oracle SQL 강좌
시스템 권한(System Privileges) 61 40 99,999+

by 김정식 시스템 권한 SYSTEM PRIVILEGES GRANT REVOKE WITH ADMIN OPTION 권한 PRIVILEGES [2002.01.19]


오라클에서 권한(Privilege)은 특정 타입의 SQL문을 실행하거나 데이터베이스나 객체에 접근할 수 있는 권리이다.

시스템권한(System Privileges)이란?
  • - 시스템권한은 사용자가 데이터베이스에서 특정 작업을 수행 할 수 있도록 한다
  • - 권한의 ANY 키워드는 사용자가 모든 스키마에서 권한을 가짐을 의미 한다.
  • - GRANT 명령은 사용자 또는 ROLE에 대해서 권한을 부여 할 수 있다.
  • - REVOKE 명령은 권한을 회수 한다.

대표적인 시스템권한
  • - CREATE SESSION : 데이터 베이스를 연결할 수 있는 권한
  • - CREATE ROLE : 오라클 데이터베이스 역할을 생성할 수 있는 권한
  • - CREATE VIEW : 뷰의 생성 권한
  • - ALTER USER : 생성한 사용자의 정의를 변경할 수 있는 권한
  • - DROP USER : 생성한 사용자를 삭제시키는 권한

시스템권한 부여 문법

시스템권한 부여 문법

  • - system_privilege : 부여할 시스템권한의 이름
  • - role : 부여할 데이터베이스 역할의 이름
  • - user, role : 부여할 사용자 이름과 다른 데이터 베이스 역할 이름
  • - PUBLIC : 시스템권한, 또는 데이터베이스 역할을 모든 사용자에게 부여할 수 있다.
  • - WITH ADMIN OPTION : 권한을 부여 받은 사용자도 부여 받은 권한을 다른 사용자 또는 역할로 부여할 수 있게된다.

시스템권한 부여 예제

	
-- SYS 권한으로 접속한다.	
SQL>CONN sys/manager AS SYSDBA       

-- scott 사용자에게 사용자를 생성, 수정, 삭제 할 수 있는 권한을 부여하고,
-- scott 사용자도 다른 사용자에게 그 권한을 부여 할 수 있도록 권한 부여.
SQL>GRANT CREATE USER, ALTER USER, DROP USER TO scott
    WITH  ADMIN  OPTION;
 권한이 부여되었습니다.
	

시스템권한의 회수

시스템권한의 회수문법

시스템권한 회수 예제

 	
-- scott 사용자에게 부여한 생성, 수정, 삭제 권한을 회수 한다.
SQL>REVOKE CREATE USER, ALTER USER, DROP USER
    FROM scott;
 권한이 회수되었습니다.
	

WITH ADMIN OPTION을 사용하여 시스템권한 취소

WITH ADMIN OPTION을 사용하여 시스템권한을 부여했어도 시스템권한을 취소 할 때는 연쇄적으로 취소 되지 않는다.

시나리오
  • 1. DBA가 STORM에게WITH ADMIN OPTION을 사용하여 CREATE TABLE 시스템권한을 부여 한다.
  • 2. STORM이 테이블을 생성 한다.
  • 3. STORM이 CREATE TABLE 시스템권한을 SCOTT에게 부여 한다.
  • 4. SCOTT가 테이블을 생성 한다.
  • 5. DBA가 STORM에게 부여한 CREATE TABLE 시스템권한을 취소 한다.

시스템권한의 회수

결과
  • - STORM의 테이블은 여전히 존재하지만 새 테이블을 생성할 수 있는 권한은 없다.
  • - SCOTT는 여전히 테이블과 새로운 테이블을 생성 할 수 있는 CREATE TABLE권한을 가지고 있다.

시스템권한의 회수

- 강좌 URL : http://www.gurubee.net/lecture/1008

- 구루비 강좌는 개인의 학습용으로만 사용 할 수 있으며, 다른 웹 페이지에 게재할 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^

- 구루비 강좌는 서비스 제공을 위한 목적이나, 학원 홍보, 수익을 얻기 위한 용도로 사용 할 수 없습니다.

by Masterlee [2004.05.31 02:06:39]
이해가 잘 되는군요.^^ 예제 설명은 거의 압권입니다.

by hb2sky [2004.09.22 23:46:54]
감솨합니다^^ 자료 좋은데요^^

by kim [2004.10.28 17:34:39]
어쩌면 이렇게 설명을 잘해 놓을 수가 있는지.... 부럽네요...

by jin725 [2004.11.02 10:31:41]
정말 감사합니다. ^^

by 준 [2004.12.16 11:30:59]
장난아니게 설명 잘되어 있네요!!
3년전 OCP 딸때 원서 11권 보던 기억이... ㅡㅡ^
강추!!!

by 히보기 [2005.04.05 22:45:40]
감솨합니다^^ 자료 좋은데요^^

by 김영석 [2005.06.21 22:24:15]
가독성이 무척 좋습니다.
감사합니다.
유익한 내용이예요

by 박성진 [2005.08.08 10:25:12]
cascade 가 안된다는 ^^ 설명이 너무 좋아요

by 그누세상 [2005.10.15 03:27:41]
잘 읽었습니다.^^

by smile [2005.11.09 20:36:41]
퍼갑니다. ^^

by DISCO [2005.11.14 01:02:30]
야...진짜 왠만한 대학 교수보다 더 낮은거 같네요..

by 심문섭 [2005.12.07 10:43:27]
베리 굿입니다. 감사

by 쭝태기 [2006.01.28 07:37:38]
와.... 그럼 이런거 가지고 해킹 엇 비슷한것도 하겠네용....

by JUNe [2006.03.14 16:18:01]
감사합니다. 잘 봤어요.

BOA보다 더 잘 봤어요.

by ORANGE [2006.10.09 10:53:23]
DBA가 하위 사용자의 권한을 취소하면 그 아래 사용자까지 한꺼번에 권한이 취소되게 할 수는 없는 건가요?

by 디비쟁이 [2006.10.10 02:12:27]
오늘 다시한번 정리했던 내용인데
또 다시한번 확실하게 정리하고 갑니다
감사합니다^^

by 루시리스 [2006.10.20 15:13:16]
하나하나 배워나갈때 마다 얼굴이 웃음 생깁니다 정말로 감사드려요

by suwebkim [2006.10.27 15:02:04]
하루하루 정말 쉽게 알아가네요.. 감사^^

by 김조우 [2006.12.01 09:27:42]
좋은자료 감사합니다.

by 덜덜덜. [2006.12.08 09:59:50]
예제 정말 좋네요.. 머리가 안좋은가 글만 읽으면 잘 정리가 안됐는데..ㅋ 공부잘하고 갑니다 유후~!

by 오라가즘 [2007.04.25 13:14:05]
패쑤요~ 좋네요~ 진도잘나간닥 ㅋㅋ

by sonin [2007.05.14 17:25:28]
설명이 잘 되어있어서 알기가 쉬워요~ 잘 보고갑니다 >_<

by 김윤경 [2007.10.24 16:12:27]
감사합니다.
저도 많이 배웠어요^^

by 배슬기 [2007.12.13 11:40:33]
아주그냥..ㅠㅠ 저에게 희망을 주네여 ^__^ 절대 이홈페이지 폐쇠하지 마세여! ㅋ

by 최인섭 [2008.07.01 13:15:07]
많은 도움 받고 있습니다

by 손님 [2008.11.25 13:08:00]
좋은자료 감사합니다.

by 김정민 [2009.03.27 17:54:29]
참고로 10.2 버전에서 privilege 조회시 다음과 같이 166개로 나옵니다..

위에서 말씀 하신것 처럼 계속 추가가 되는듯~~


SQL> select count(*) from system_privilege_map;

COUNT(*)
----------
166

by chic [2009.09.07 11:14:34]
와~~설명 진짜 쏙쏙 들어오네요...^^
오라클 생초보인 저도 너무 이해가 잘되고 공부하는데 있어 큰 힘이 됩니다!

by 겡스기 [2010.03.17 11:28:44]
강좌 잘보고갑니다~^^

by 김창환 [2010.10.08 18:30:51]
잘보고갑니다.

by 프리어 [2011.10.05 22:38:03]
초짜 프로그래머인데 일하면서 오라클 db에 흥미가 생겨서 보고 있습니다.
이해가 잘되네요.. 오래된 강좌지만 이해하는데는 쉽네요...ㅋㅋㅋ

by D'Amo MCM [2011.10.29 09:18:22]
너무너무 좋아요^^* 개념 쏙쏙!!! 감사합니다

by 돌이맹이 [2012.02.23 16:38:37]
쉽게 설명 잘 되어 있네요^^

by 손님 [2012.04.24 08:50:29]

감사 ^_^

by zandi [2012.09.04 17:59:17]
그림과 함께 설명되어있어서 이해가 쉽네요.

by 손님 [2013.01.08 16:59:14]

아 그럼 권할을 부여 받은 유저는 다른 유저에게 같은 권한을 부여할수 있는거군요?


by 임경태 [2013.03.29 19:24:49]

감사합니다.

by 더봉 [2014.03.18 16:23:19]

자세한 설명 감사합니다~~

by 지브릴 [2015.08.24 11:40:17]

좋은글 감사합니다.


by 박진영 [2016.01.15 19:39:06]

좋은 글 감사합니다.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입