KingbaseES管理视图权限

视图是从一个或多个表(可能包括其他视图)中选择的数据的表示形式。视图显示基础表的结构。其所选数据可以被视为存储查询的结果。视图不包含任何实际数据,而是从它所基于的表和视图中派生它所显示的内容。您可以查询视图,并更改其表示的数据。可以更新或删除视图中的数据,并插入新数据。这些操作直接更改视图所基于的表,并且受基表的完整性约束和触发器的约束。 您可以将 DML 对象权限应用于视图,类似于表。视图的对象特权允许各种 DML 操作,如前所述,这些操作会影响从中派生视图的基表。 此外,在向其他用户授予您查看的权限之前,您必须对具有子句的基本对象具有对象特权,或者对子句具有适当的系统特权。如果您没有这些权限,则无法向其他用户授予访问您的视图的权限。如果尝试,则会引发错误,提示您没有足够的权限。
要使用视图,用户必须具有适当的权限,但仅限于视图本身,而不是其基础对象。但是,如果删除了视图基础对象的访问权限,则用户将不再具有访问权限。如果撤销了用户对视图基表的特权,则该视图将变为无效。因此,即使已向用户授予了对视图的访问权限,如果撤销用户对视图基表的特权,则该用户也可能无法使用该视图。
视图为表添加了另外两个安全级别,列级安全性和基于值的安全性,如下所示:
1、视图可以提供对基表选定列的访问。
例如,在ORDERS表上定义一个视图,访问其中三列:
CREATE VIEW ORDER_QRY AS
SELECT ORDERID,CUSTOMERID,ORDERDATE FROM ORDERS;
2、视图可以为表中的信息提供基于值的安全性。视图定义中的子句仅显示基表的选定行。
例如,允许访问表中顾客编号为''的订单记录:
CREATE VIEW ORDER_QRY AS
SELECT ORDERID,CUSTOMERID,ORDERDATE FROM ORDERS WHERE CUSTOMERID='VINET';
在此视图中,只能访问与视图的当前用户匹配的行,体现了视图访问的安全性。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值