#对象特权管理
# 对象特权的作用
对象特权允许用户对指定的对象执行指定的操作,将权限范围缩小化,便于控制对象访问,保证数据安全。
YashanDB支持的对象特权包括基于表、自定义类型的各项对象操作权限。
通过DBA_TAB_PRIVS视图可查看当前系统中所有授权的对象特权信息。
# 表级对象特权
可对某张表定义下表所示各项权限:
权限名称 | 描述 |
---|---|
ALL PRIVILEGES | 拥有对表的所有对象特权。 |
INSERT | 对表进行插入操作。 |
SELECT | 使用SELECT语句对表进行查询。 |
UPDATE | 对表更新数据。 |
DELETE | 删除表中数据。 |
ALTER | 对表进行ALTER操作,修改表定义或属性。 |
INDEX | 为表创建索引。 |
FLASHBACK | 对表进行FLASHBACK操作,包括闪回查询(需同时拥有查询权限)与闪回数据。 |
READ | 对表进行查询操作,但不能加锁查询。 |
# UDT级对象特权
可对某个自定义类型定义下表所示各项权限:
权限名称 | 描述 |
---|---|
ALL PRIVILEGES | 拥有对类型的所有对象特权。 |
EXECUTE | 使用指定UDT,包括表列、变量、参数、调用方法等场景。 |
UNDER | 基于指定UDT创建子类型。 |
将某个UDT的EXECUTE权限授权给PUBLIC角色后,所有用户都将具备使用该类型的权限,请谨慎赋权。除此之外,UDT级的对象特权只能授权给指定用户,无法通过授权给角色进行权限传递。