제 7절 DCL (Data Control Language)
1. DCL 개요
: 유저를 생성하고 권한을 제어할 수 있는 명령어
2. 유저와 권한
* Oracle은 유저를 통해 데이터베이스에 접속하는 형태, 아이디와 비밀번호 방식으로 인스턴스 접속, 권한 부여
* SQL Server는 인스턴스에 접속하기 위해 로그인이라는 것을 생성, 인스턴스 내에 존재하는 다수의 데이터베이스에 연결하여 작업하기 위해 유저를 생성한 후 로그인과 유저를 매핑해 주어야 한다. 특정유저는 특정 스키마에 대한 권한을 부여 받을 수 있다.
가. 유저 생성과 시스템 권한 부여
: 사용자가 실행하는 모든 DDL문장은 그에 해당하는 적절한 권한이 있어야만 문장 실행
* 유저 생성 권한(CREATE USER) 부여
: 유저 생성 권한을 부여 받지 못할 때 권한이 불충분하다는 오류 발생. Oracle의 DBA권한을 가지고 있는 SYSTEM유저로 접속 시 권한 부여 가능
ex) GRANT 부여할 권한 TO 대상
- 권한부여 : GRANT
- 권한부여 : REVOKE
나. OBJECT에 대한 권한 부여
: OBJECT권한은 특정 오브젝트인 테이블, 뷰 등에 대한 SELECT, DELETE, INSERT, UPDATE 작업 명령어를 의미
3. Role을 이용한 권한 부여
: 각종 권한들을 ROLE에 부여하고, 권한들이 필요한 유저들에게 해당 ROLE을 부여함으로써 빠르고 정확하게 권한 부여가능
* ROLE 생성 : CREATE ROLE 롤 명칭;
* 롤에 권한 부여 : GRANT 권한 TO 롤 명칭
* 사용자에 롤 부여 : GRANT 롤 명칭 TO 사용자
* 유저 삭제 : DROP USER 유저명
* CASCADE 옵션 : 유저 삭제 시 유저가 생성한 오브젝트 먼저 삭제 후 유저를 삭제
'자격증 > SQLD' 카테고리의 다른 글
[#SQLD] 제54회 SQL 개발자(SQLD) 합격후기 (2) | 2024.11.13 |
---|---|
[#SQLD] 제 8절 절차형 SQL (0) | 2023.03.10 |
[#SQLD] 제 6절 윈도우 함수 (0) | 2023.03.09 |
[#SQLD] 제 5절 그룹함수(GROUP 함수) (0) | 2023.03.09 |
[#SQLD] 제 4절 서브쿼리 (0) | 2023.03.03 |
댓글