暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

GBASE分享—WITH GRANT OPTION 子句

郑小雯 2023-08-15
168

WITH GRANT OPTION 子句

如同在其他 GRANT 语句中一样,WITH GRANT OPTION 关键字指定被授权者可将相同的分片级 权限授予其他用户。如果 TO 子句指定 role 作为被授权者,则 WITH GRANT OPTION 是无效 的。要获取附加的信息,请参阅 WITH GRANT OPTION 关键字。

下列语句将对 part3 中的 customer 表的分片的 Update 权限授予用户 george,并赋予 george 将对同一分片的 Update 权限授予其他用户的权利:

GRANT FRAGMENT UPDATE ON customer (part3) TO george WITH GRANT OPTION;

AS grantor 子句

GRANT FRAGMENT 语句的 AS grantor 子句可指定权限的授权者。仅当您有对数据库的 DBA

权限,您才可使用此子句。当您包括 AS grantor 子句时,数据库服务器罗列指定为 grantor 的用 户或角色作为 sysfragauth 系统目录表的 grantor 列中的权限的授权者。

在下一示例中,DBA 将对 part3 分片中的 customer 表的分片的 Delete 权限授予用户 martha, 并使用 AS grantor 子句来指定罗列在 sysfragauth 中的用户 jack 作为该权限的授权者:

GRANT FRAGMENT DELETE ON customer (part3) TO martha AS jack;

在前一示例中 AS grantor 子句的作用之一是,用户 jack 可执行 REVOKE FRAGMENT 语句来取 消 martha 持有的 Delete 分片级权限,如果此语句是在 part3 中对 customer 行 martha 的分片 权限的唯一来源的话。

省略 AS grantor 子句

当 GRANT FRAGMENT 不包括 AS grantor 子句时,发出该语句的用户为指定的分片权限的缺省 的授权者。

在下一示例中,用户将对 part3 中的 customer 表的分片的 Update 权限授予用户 fred。因为此 语句未指定 AS grantor 子句,所以在缺省情况下,将发出该语句的用户罗列在 sysfragauth 系 统目录表中作为该权限的授权者。

GRANT FRAGMENT UPDATE ON customer (part3) TO fred;

如果您省略 GRANT FRAGMENT 的 AS grantor 子句,或如果您指定您自己的登录名作为

grantor,则您可在以后使用 REVOKE FRAGMENT 语句来取消您授予指定的用户的权限。例如, 如果您将对 part3 中的 customer 表的分片的 Delete 权限授予用户 martha,但指定用户 jack

作为该权限的授权者,则用户 jack 可从用户 martha 取消那一权限,但您不可从用户 martha 取 消那一权限。 DBA,或该分片的所有者,可使用 REVOKE FRAGMENT 语句的 AS 子句取消对该分片的权限。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论