1. DCL의 개요
유저를 생성하고 권한을 제어할 수 있는 DATA CONTROL LANGUAGE
2. 유저와 권한
ORACLE에서 제공하는 유저
- SCOTT : 테스트용 샘플 유저
- SYS : DBA ROLE을 부여받은 유저
- SYSTEM : 모든 권한을 부여받은 DBA유저, ORACLE 설치시 패스워드 설정
ORACLE은 유저를 통해 데이터베이스에 접속, 아이디와 비밀번호 방식으로 인스턴스에 접속하고 스키마에 오브젝트 생성 권한 부여
SQL SERVER은 인스턴스를 접근하기 위해 로그인 생성, 인스턴스 내 존재하는 다수의 데이터베이스를 연결하기 위한 작업을 위해 유저 생성 후 맵핑
특정유저는 특정데이터베이스 내의 특정 스키마에 대한 권한을 부여 받을 수 있음
- WINDOW에 인증하는 방식, 암호를 요청하지 않고 유효성 검사 수행하지 않음, 기본 인증 모드, 신뢰된 인증
- 혼합모드, WINDOW인증 또는 SQL로 인증, 강력한 암호를 사용해아함,
가. 유저 생성과 시스템 권한 부여
유저를 생성하고 데이터 베이스에 접속하지만 오브젝트 생성할 수 없음, 적절한 권한이 필요
ROLE을 통해 여러가지 유형의 유저 관리를 가능하게 함
Oracle) SYSTEM이 권한을 주어야 한다.
GRANT CREATE USER TO SCOTT; 권한이 부여되었다.
CONN SCOTT/TIGER 연결되었다.
CREATE USER PJS IDENTIFIED BY KOREA7; 사용자가 생성되었다.
SQL Server) SA로 로그인 한 후 유저 생성
CREATE LOGIN PJS WITH PASSWORD='KOREA7', DEFAULT_DATABASE=AdventureWorks 로그인 진행
USE ADVENTUREWORKS;
GO
CREATE USER PJS FOR LOGIN PJS WITH DEFAULT_SCHEMA = dbo; 유저 생성
나. OBJECT에 대한 권한 부여
다. ROLE을 이용한 이용 권한 부여
많은 데이터 베이스에서 유저들과 권한들 사이에 중개하는 역할
관리자는 ROLE을 생성하고 각종 권한들을 부여한 후 롤을 다른 롤이나 유저에게 부여
롤에 포함되어 있는 권한들이 필요한 유저에게는 해당 롤만 부여함을써 빠르고 정확하게 필요한 권한 부여 가능
롤은 CONNECTD(로그인 권한)와 RESOURCE(오브젝트 생성 권한)
Oracle
CONN SYSTEM/MANAGER 연결되었다.
DROP USER JISUNG CASCADE; 사용자가 삭제되었다. ☞ JISUNG 유저가 만든 MENU 테이블도 같이 삭제되었다.
CREATE USER JISUNG IDENTIFIED BY KOREA7; 사용자가 생성되었다.
GRANT CONNECT, RESOURCE TO JISUNG; 권한이 부여되었다.
CONN JISUNG/KOREA7 연결되었다.
CREATE TABLE MENU ( MENU_SEQ NUMBER NOT NULL, TITLE VARCHAR2(10)); 테이블이 생성되었다.
REVOKE 권한을 뺏었다.
'자격증 공방 > SQLD' 카테고리의 다른 글
제 5-1절 옵티마이저와 실행계획 (0) | 2018.07.17 |
---|---|
제 4-8장 절차형 SQL (0) | 2018.07.11 |
제 4-6절 윈도우 함수(WINDOW 함수) (0) | 2018.07.11 |
제 4-5절 그룹함수 (0) | 2018.07.11 |
제 4-4절 서브쿼리 (0) | 2018.07.11 |