직접 권한을 받거나 역할을 통해 권한을 상속받는다.
DBMS는 요청한 명령과 보유 권한을 비교해 실행 여부를 결정한다.
DCL은 데이터 값이나 스키마 모양을 직접 바꾸는 언어가 아니라 접근 권한을 부여하고 회수하는 언어입니다. 권한은 사용자에게 직접 줄 수도 있지만, 운영에서는 역할로 묶어 관리하는 일이 많습니다.
직접 권한을 받거나 역할을 통해 권한을 상속받는다.
DBMS는 요청한 명령과 보유 권한을 비교해 실행 여부를 결정한다.
객체 권한을 역할에 주고, 그 역할을 사용자에게 연결할 수 있다.
GRANT SELECT ON products TO readonly;
GRANT readonly TO analyst_user;
회수 뒤에도 다른 경로로 같은 권한을 받는지 함께 확인해야 한다.
REVOKE SELECT ON products FROM readonly;
누가 어떤 테이블, 뷰, 스키마에 무엇을 할 수 있는지 정한다.
개별 사용자마다 권한을 흩뿌리면 회수와 감사가 어려워진다.
명령 문법이 맞아도 접근 권한이 없으면 DBMS가 실행을 막는다.