REVOKE

REVOKE

사용자나 역할에서 권한(privileges)을 취소해요.

출처: 문서

본문

Syntax

사용자에서 권한 취소

REVOKE [ON CLUSTER cluster_name] privilege[(column_name [,...])] [,...] ON {db.table|db.*|*.*|table|*} FROM {user | CURRENT_USER} [,...] | ALL | ALL EXCEPT {user | CURRENT_USER} [,...]

사용자에서 역할 취소

REVOKE [ON CLUSTER cluster_name] [ADMIN OPTION FOR] role [,...] FROM {user | role | CURRENT_USER} [,...] | ALL | ALL EXCEPT {user_name | role_name | CURRENT_USER} [,...]

Description

취소하려는 권한보다 더 넓은 범위의 권한을 사용하여 일부 권한을 취소할 수 있어요. 예를 들어, 사용자가 SELECT (x,y) 권한을 가지면 관리자는 REVOKE SELECT(x,y) ..., 또는 REVOKE SELECT * ..., 또는 심지어 REVOKE ALL PRIVILEGES ... 쿼리를 실행해 이 권한을 취소할 수 있어요.

Partial Revokes

권한의 일부를 취소할 수 있어요. 예를 들어, 사용자가 SELECT *.* 권한을 가지면 그로부터 일부 테이블이나 데이터베이스의 데이터를 읽을 권한을 취소할 수 있어요.

Examples

john 사용자 계정에 accounts를 제외한 모든 데이터베이스에서 select 할 권한을 부여해요.

GRANT SELECT ON *.* TO john;
REVOKE SELECT ON accounts.* FROM john;

mira 사용자 계정에 accounts.staff 테이블의 wage를 제외한 모든 컬럼에서 select 할 권한을 부여해요.

GRANT SELECT ON accounts.staff TO mira;
REVOKE SELECT(wage) ON accounts.staff FROM mira;

Original article

더 알아보기 (Learn more)