본문 바로가기
자격증/SQL개발자(SQLD)

4-7장. SQL 활용(DCL[DATA CONTROL LANGUAGE])

by 김엉배 2023. 5. 30.
728x90
반응형

 

SQLD 단원별 목록으로


1. DCL 개요

  • 유저를 생성하고 권한을 제어할 수 있는 DCL(DATA CONTROL LANGUAGE) 명령어가 있다.

 


2. 유저와 권한

  • 대부분의 데이터베이스는 데이터 보호와 보안을 위해서 유저와 권한을 관리하고 있다.
  • SQL Server는 인스턴스에 접속하기 위해 로그인이라는 것을 생성하게 되며, 인스턴스 내에 존재하는 다수의 데이터베이스에 연결하여 작업하기 위해 유저를 생성한 후 로그인과 유저를 매핑해 주어야 한다.
  • Oracle은 유저를 통해 데이터베이스에 접속을 하는 형태이다. 즉, 아이디와 비밀번호 방식으로 인스턴스에 접속을 하고 그에 해당하는 스키마에 오브젝트 생성 등의 권한을 부여받게 된다.


가) 유저 생성과 시스템 권한 분석

  • 유저를 생성하고 데이터베이스에 접속한다.
  • 사용자가 실행하는 모든 DDL 문장(CREATE, ALTER, DROP, RENAME 등)은 그에 해당하는 적절한 권한이 있어 야만 문장을 실행
  • 새로운 유저를 생성하려면 일단 유저 생성 권한(CREATE USER)이 있어야 한다.


나) Object에 대한 권한 부여

  • 오브젝트 권한은 특정 오브젝트인 테이블, 뷰 등에 대한 SELECT, INSERT, DELETE, UPDATE 작업 명령어를 의미한다.

 

 


3. Role을 이용한 권한 부여

  • 데이터베이스 관리자는 ROLE을 생성하고, ROLE에 각종 권한들을 부여 한 후 ROLE을 다른 ROLE이나 유저에게 부여할 수 있다.
  • ROLE에 포함되어 있는 권한이 필요한 유저에게 해당 ROLE만을 부여함으로써 빠르고 정확하게 필요한 권한을 부여할 수 있게 된다.


  • Oracle Role 

  • SQL Server Role

 

728x90
반응형