본문 바로가기

SQL

사용자 권한 관리: 사용자에게 권한을 부여하거나 회수하는 쿼리.

반응형

사용자 권한 관리는 시스템의 보안과 질서를 유지하기 위해 매우 중요합니다. SQL에서는 GRANT와 REVOKE 명령어를 사용하여 사용자에게 권한을 부여하거나 회수합니다. 다음은 사용자에게 권한을 부여하거나 회수하는 다양한 SQL 쿼리문 예제와 각각의 설명입니다.


1. 기본 권한 부여
GRANT SELECT ON database.table TO 'username';
사용자에게 특정 테이블의 조회 권한을 부여합니다.

2. 다중 권한 부여
GRANT SELECT, INSERT, UPDATE ON database.table TO 'username';
사용자에게 조회, 삽입, 업데이트 권한을 부여합니다.

3. 모든 권한 부여
GRANT ALL PRIVILEGES ON database.table TO 'username';
사용자에게 모든 권한을 부여합니다.

4. 권한 회수
REVOKE SELECT ON database.table FROM 'username';
사용자로부터 특정 테이블의 조회 권한을 회수합니다.

5. 모든 권한 회수
REVOKE ALL PRIVILEGES ON database.table FROM 'username';
사용자로부터 모든 권한을 회수합니다.

6. 특정 데이터베이스 권한 부여
GRANT CREATE ON DATABASE database TO 'username';
사용자에게 특정 데이터베이스에 테이블을 생성할 수 있는 권한을 부여합니다.

7. 역할을 이용한 권한 부여
GRANT 'role_name' TO 'username';
사용자에게 특정 역할과 관련된 권한을 부여합니다.

8. 역할 권한 회수
REVOKE 'role_name' FROM 'username';
사용자로부터 특정 역할과 관련된 권한을 회수합니다.

9. 로그인 권한 부여
GRANT CONNECT ON DATABASE database TO 'username';
사용자에게 특정 데이터베이스에 접속할 수 있는 권한을 부여합니다.

10. 쓰기 권한 부여
GRANT INSERT, UPDATE ON database.table TO 'username';
사용자에게 특정 테이블에 데이터를 삽입하고 업데이트할 수 있는 권한을 부여합니다.


관련 전문용어 설명
GRANT: 사용자에게 특정 권한을 부여하는 SQL 명령어입니다.
REVOKE: 사용자로부터 특정 권한을 회수하는 SQL 명령어입니다.
PRIVILEGES: 시스템이 부여할 수 있는 권한들입니다.
ROLE: 특정 권한들의 집합으로, 사용자나 다른 역할에 할당할 수 있습니다.
CONNECT: 데이터베이스 접속 권한입니다.
SELECT, INSERT, UPDATE, DELETE: 데이터를 조회, 삽입, 수정, 삭제하는 권한입니다.
CREATE, DROP: 객체(테이블, 뷰 등)를 생성하고 삭제하는 권한입니다.

반응형