728x90

0. DB 시작 및 로그인

  • 리스너 서비스 실행
  • 리스너 : DB의 원격접속 요청을 받는 서비스로 해당 서비스가 꺼져 있으면 원격 접속이 불가

$ lsnrctl start

 

 

  • DB 접속 도구 SQLPLUS 접속

$ sqlplus /nolog

  • 오라클 DB 시작/종료 권한을 가진 sys 계정으로 로그인

$ connect sys/oracle as sysdba 

 

 

  • DB 시작

$ startup

 

  • 학습용 계정(hr) 접속

$ connect hr/hr

 

 

 

DCL(Data Control Language)

데이터의 보안, 무결성, 회복, 병행 제어 등을 정의하는데 사용되는 언어

 

GRANT : 권한 부여를 위한 명령어

 

REVOKE : 권한 취소를 위한 명령어

 

 

사용자 등급 지정

1

GRANT 사용자등급 TO 사용자id리스트[IDENTIFIED BY 암호];

cs

 

사용자 등급 해제

1

REVOKE 사용자등급 FROM 사용자id리스트;

cs

 

테이블 및 속성에 대한 권한 부여 

1

GRANT 권한종류 ON 개체 TO 사용자 [WITH GRANT OPTION];

cs

* WITH GRANT OPTION : 부여받은 권한을 다른 사용자에게도 부여할 수 있는 권한을 부여

 

테이블 및 속성에 대한 권한 취소

1

REVOKE [GRANT OPTION FOR] 권한종류 ON 개체 FROM 사용자 [CASCADE];

cs

* GRANT OPTION FOR : 다른 사용자에게 권한을 부여할 수 있는 권한을 취소

* CASCADE : 권한 취소 시, 권한을 부여받았던 사용자가 다른 사용자에게 부여한 권한도 연속적(CASCADE)으로 취소

 

* 자신에게 특정 권한이 없어지면 다른 사용자에게 그 권한을 부여할 수 없다.

REVOKE UPDATE ON 수강 FROM 김민희 CASCADE; 라고 명령을 내리면 '김민희' 사용자에게 UPDATE권한이 없어짐과 함께 다른 사용자에게 권한을 부여할 수 있는 권한, 권한을 부여받았던 사용자가 다른 사용자에게 부여한 권한도 연속적으로 취소된다.

 

* 다음에 주의

REVOKE GRANT OPTION FOR INSERT ON 강좌 FROM 김철수; 라고 하면 '김철수' 사용자의 INSERT 권한은 유지하면서 다른 사용자에게 권한을 부여할 수 있는 권한만 취소하는 것이다.

 

REVOKE GRANT OPTION FOR UPDATE ON 강좌 FROM 김철수 CASCADE;

 '임꺽정'  유저에게 부여한 <강좌> 테이블의 권한 중 UPDATE 권한을 다름 사람에게 부여할 수 있는 권한과 이미 다른 사람에게 부여했던 권한도 함께 취소하며, 임꺽정 자신은 UPDATE 권한을 유지한다.

'DB' 카테고리의 다른 글

MongoDB 기본  (0) 2021.01.30
[오라클 DB] 유저관리, DCL  (0) 2021.01.12
[오라클 DB] 설치 및 접속  (0) 2017.07.08
데이터 베이스 기초  (0) 2017.06.14
SQL injection (SQL 삽입)  (0) 2017.06.01

+ Recent posts