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

华为GaussDB T 创建用户并分配权限

墨天轮 2019-09-23
1133

创建用户并分配权限

操作步骤

  • 以DBA身份登录GaussDB 100数据库。

    zsql conn omm@192.168.0.1:8000 Please enter password: ***********

    omm为安装后创建的系统管理员,其默认密码是gaussdb_123。192.168.0.1为CN所在的服务器IP地址,8000为连接的端口号。

  • 创建用户。

    CREATE USER jessica IDENTIFIED BY gaussdb_123;

    设置用户名时,需要遵循以下规范:

    • 用户名不允许包含以下特殊字符:分号(;)、竖线(|)、反引号(`)、美元符($)、位运算( &)、大于号(>)、小于号(<)、双引号(")、单引号(')、感叹号(!)、空格和版权符号(©),即使用双引号或者反引号括起来也不行。
    • 若用户名包含以上禁止特殊字符以外的其他特殊字符时,必须用双引号("")或者反引号(``)括起来。
    • 由于SYSDBA、CLSMGR为数据库关键字,这些名称的用户会登录不上数据库,建议用户不要创建该名称的用户。

    设置用户密码时,需要遵循如下规范:

    • 密码长度必须大于等于8个字符,小于等于64个字符。
    • 若密码不以单引号括起来,则密码首字符必须是字母、#号或下划线。
    • 密码不能与用户名或者用户名的倒序相同(校验时,不区分大小写)。
    • 密码只能包含以下4种类型,并且至少选取其中3种类型的组合。
      • 数字。
      • 小写字母。
      • 大写字母。
      • 空格或特殊字符(GaussDB 100支持的特殊字符列表,请参见下方的“特殊字符”表)。
    • 创建密码时,若密码中包含_#$以外的特殊字符或者空格,则密码须用单引号括起来。
    • 若创建的密码中包含特殊字符$,通过zsql连接数据库时密码在单引号里面$不需要使用\转义字符转义,密码不在单引号里面$需要使用\转义字符转义,否则会登录失败。
    • 若创建的密码中包含特殊字符空格,只能通过交互式登录。
    • 使用conn命令登录数据库密码段都认为是密码字符。
    • 使用zsql命令登录数据库密码字段使用单引号括起来。密码中不能出现单引号。
    表1 特殊字符

    编号

    字符

    编号

    字符

    编号

    字符

    编号

    字符

    1

    `

    9

    &

    17

    \

    25

    "

    2

    ~

    10

    *

    18

    |

    26

    ,

    3

    !

    11

    (

    19

    [

    27

    <

    4

    @

    12

    )

    20

    {

    28

    .

    5

    #

    13

    -

    21

    }

    29

    >

    6

    $

    14

    _

    22

    ]

    30

    /

    7

    %

    15

    =

    23

    :

    31

    ?

    8

    ^

    16

    +

    24

    '

    -

    -

  • 给用户指定系统权限。

    GRANT CREATE SESSION TO Jessica;

    详细的用户权限,请参见《GaussDB 100 1.0.0 开发者指南(分布式)》中语法参考 > SQL语法 > GRANT章节“系统权限矩阵表”中的内容。

示例

  • 创建安全管理员Tom,并授予CREATE USER权限。
    CREATE USER Tom IDENTIFIED BY '1234@abc';
    GRANT CREATE USER TO Tom;
  • 创建具有表films的查询权限角色role_r,创建user_read用户并授予role_r角色的权限。
    --创建表films CREATE TABLE films( id NUMBER(6) not null, ADDRESS VARCHAR(40), CITY VARCHAR(64) ) DISTRIBUTE BY HASH(id);
    --创建角色role_r CREATE ROLE role_r;
    --为角色role_r添加对表films的查询权限 GRANT SELECT ON films TO role_r;
    --创建对象操作员user_read。 CREATE USER user_read IDENTIFIED BY '1234@abc';
    ----将角色授予对象操作员user_read。 GRANT ROLE_R TO user_read;
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论