描述
该语句用于系统管理员撤销 User 的某些权限。
使用说明如下:
- 用户必须拥有被撤销的权限(例如,user1 要撤销 user2 对表 t1 的 SELECT 权限,则 user1 必须拥有表 t1 的 SELECT的权限),并且拥有 GRANT OPTION权限。
- 撤销 ALL PRIVILEGES 和 GRANT OPTION 权限时,当前用户必须拥有全局 GRANT OPTION 权限,或者对权限表的UPDATE 及 DELETE 权限。
- 撤销操作不会级联。例如,用户 user1 给 user2 授予了某些权限,撤回 user1 的权限不会同时也撤回 user2 的相应权限。
格式
REVOKE priv_type
ON database.tblname
FROM 'username';
privilege_type:
ALTER
| CREATE
| CREATE USER
| CREATE VIEW
| DELETE
| DROP
| GRANT OPTION
| INDEX
| INSERT
| PROCESS
| SELECT
| SHOW DATABASES
| SHOW VIEW
| SUPER
| UPDATE
| USAGE
参数解释
参数 | 描述 |
---|---|
priv_type | 指定撤销的权限类型。具体的权限类型及其说明请参见下方权限类型说明表。 同时对某个用户撤销多个权限时,权限类型用“,”隔开。 |
database.tblname | 指定数据库中的表。 用“*”代替 database 或 table_name,表示撤销全局权限,即撤销对数据库中所有表的操作权限。 |
username | 指定撤销权限的用户。同时撤销多个用户的授权时,用户名用“,”隔开。 |
可以撤销的权限类型如下表所示。
权限类型说明表
权限 | 说明 |
---|---|
ALL PRIVILEGES | 除 GRANT OPTION 以外所有权限。 |
ALTER | ALTER TABLE 的权限。 |
CREATE | CREATE TABLE 的权限。 |
CREATE USER | CREATE USER,DROP USER,RENAME USER 和 REVOKE ALL PRIVILEGES 的权限。 |
CREATE TABLEGROUP | 全局 CREATE TABLEGROUP 的权限。 |
DELETE | DELETE 的权限。 |
DROP | DROP 的权限。 |
GRANT OPTION | GRANT OPTION 的权限。 |
INSERT | INSERT 的权限。 |
SELECT | SELECT 的权限。 |
UPDATE | UPDATE 的权限。 |
SUPER | SET GLOBAL 修改全局系统参数的权限。 |
SHOW DATABASES | 全局 SHOW DATABASES 的权限。 |
INDEX | CREATE INDEX, DROP INDEX 的权限。 |
CREATE VIEW | 创建、删除视图的权限。 |
SHOW VIEW | SHOW CREATE VIEW 权限。 |
CREATE SYNONYM | 创建同义词的权限。 |
说明
目前没有 change effective tenant 的权限控制,故 sys 租户下的用户都可以撤销权限。
示例
执行以下命令撤销用户 obsqluser01 的所有权限。
OceanBase(admin@TEST)>REVOKE ALL PRIVILEGES, GRANT OPTION FROM 'obsqluser01';
Query OK, 0 rows affected (0.03 sec)
作者:唐伯虎点蚊香,如若转载,请注明出处:https://www.web176.com/oceanbase/26451.html