= Data Control Language = {{tag>SQL Database}} DB **사용자**를 **생성**하고 **권한 제어**하는 명령어 = 유저와 권한 = == 유저 생성과 시스템 권한 부여 == * 권한 부여 ^ GRANT CREATE ^USER TO 유저ID; ^유저 생성 권한 ^ ^ ::: ^SESSION TO 유저ID; ^로그인 권한 ^ ^ ::: ^TABLE FROM 유저ID; ^테이블 생성 권한 ^ grant resource, connect to 유저ID; grant DBA to 유저ID; * 권한 취소 REVOKE CREATE SESSION; REVOKE CREATE TABLE FROM 유저ID; * 유저 생성 CREATE USER 유저ID IDENTIFIED BY 암호; * 유저 삭제 DROP USER 유저ID [CASCADE] --CASCADE : 해당 유저가 생성한 OBJECT도 삭제 == OBJECT에 대한 권한 부여 == * 특정 유저가 소유한 객체(OBJECT) 권한 부여 * OBJECT 권한 : 테이블, 뷰 등에 대한 **S/I/D/U** 작업 명령어 권한 예) 유저1이 생성한 테이블을 유저2에게 조회(SELECT) 권한 부여 GRANT SELECT ON 테이블/뷰명 TO 유저ID; = ROLE을 이용한 권한 부여 = * 권한 그룹 부여 * GRANT 하나하나 매번 할당하기에는 너무 불편함. * ROLE은 유저에게 직접 SYSTEM 및 OBJECT 권한을 모두 부여할 수 있으며, 다른 ROLE을 포함하여 유저에게 부여될 수 있다. \\ * ROLE 생성 및 부여 CREATE ROLE ROLE명; GRANT ROLE명 TO 유저ID;