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

GaussDB开发者指南-用户权限设置

uuuu 2023-09-05
204
  • 给用户直接授予某对象的权限,请使用GRANT

    将Schema中的表或者视图对象授权给其他用户或角色时,需要将表或视图所属Schema的USAGE权限同时授予该用户或角色。否则用户或角色将只能看到这些对象的名称,并不能实际进行对象访问。

    例如,下面示例将Schema tpcds的权限赋给用户joe后,将表tpcds.web_returns的select权限赋给用户joe。

    gaussdb=# GRANT USAGE ON SCHEMA tpcds TO joe;
    gaussdb=# GRANT SELECT ON TABLE tpcds.web_returns to joe;
    


  • 给用户指定角色,使用户继承角色所拥有的对象权限。
    1. 创建角色。

      新建一个角色lily,同时给角色指定系统权限CREATEDB:

      gaussdb=# CREATE ROLE lily WITH CREATEDB PASSWORD "********";
      


    2. 给角色赋予对象权限,请使用GRANT

      例如,将模式tpcds的权限赋给角色lily后,将表tpcds.web_returns的select权限赋给角色lily。

      gaussdb=# GRANT USAGE ON SCHEMA tpcds TO lily;
      gaussdb=# GRANT SELECT ON TABLE tpcds.web_returns to lily;
      


    3. 将角色的权限赋予用户。
      gaussdb=# GRANT lily to joe;
      


      说明:

      当将角色的权限赋予用户时,角色的属性并不会传递到用户。

  • 回收用户权限,请使用REVOKE
    • 给用户直接授予某对象的权限,请使用GRANT

      将Schema中的表或者视图对象授权给其他用户或角色时,需要将表或视图所属Schema的USAGE权限同时授予该用户或角色。否则用户或角色将只能看到这些对象的名称,并不能实际进行对象访问。

      例如,下面示例将Schema tpcds的权限赋给用户joe后,将表tpcds.web_returns的select权限赋给用户joe。

      gaussdb=# GRANT USAGE ON SCHEMA tpcds TO joe;
      gaussdb=# GRANT SELECT ON TABLE tpcds.web_returns to joe;
      
    • 给用户指定角色,使用户继承角色所拥有的对象权限。
      1. 创建角色。

        新建一个角色lily,同时给角色指定系统权限CREATEDB:

        gaussdb=# CREATE ROLE lily WITH CREATEDB PASSWORD "********";
        
      2. 给角色赋予对象权限,请使用GRANT

        例如,将模式tpcds的权限赋给角色lily后,将表tpcds.web_returns的select权限赋给角色lily。

        gaussdb=# GRANT USAGE ON SCHEMA tpcds TO lily;
        gaussdb=# GRANT SELECT ON TABLE tpcds.web_returns to lily;
        
      3. 将角色的权限赋予用户。
        gaussdb=# GRANT lily to joe;
        
        说明:

        当将角色的权限赋予用户时,角色的属性并不会传递到用户。

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

评论