当前位置:   article > 正文

达梦:创建用户并授予用户只读权限_达梦创建用户并授权

达梦创建用户并授权

需求描述:

1.想创建一个用户,这用户能访问其他3个用户的资源,权限是只读,这种创用户的sql怎么写?

2.怎么修改用户密码呢?

环境:

通用机

 一、创建用户并授权

1.创建业务用户步骤

step1:创建用户使用的默认表空间

create tablespace "TBS_TEST" datafile 'TEST.DBF' size 1024 autoextend on ;

step2:创建用户并指定默认使用的表空间

create user "TEST" identified by "TEST@2023" default tablespace "TBS_TEST" default index tablespace "TBS_TEST";

step3:授予用户除了DBA外的所有角色

grant "PUBLIC","RESOURCE","SOI","VTI" to "TEST";

2.创建只读用户

step1:创建用户使用的默认表空间

create tablespace "TBS_READONLY_USER" datafile 'READONLY_USER.DBF' size 1024 autoextend on ;

step2:创建用户并指定默认使用的表空间

create user "READONLY_USER" identified by "TEST@2023" default tablespace "TBS_READONLY_USER" default index tablespace "TBS_READONLY_USER";

step3:授予用户只读权限

  1. grant 
  2.  SELECT TABLE
  3. ,SELECT ANY TABLE
  4. ,SELECT VIEW
  5. ,SELECT ANY VIEW
  6. ,SELECT SEQUENCE
  7. ,SELECT ANY SEQUENCE
  8. ,SELECT ANY DICTIONARY
  9. ,SELECT MATERIALIZED VIEW
  10. ,SELECT ANY MATERIALIZED VIEW to "READONLY_USER";

3.授予用户指定模式的只读权限

step1:创建用户使用的默认表空间

create tablespace "TBS_TEST" datafile 'TEST.DBF' size 1024 autoextend on ;

step2:创建用户并指定默认使用的表空间

create user "TEST" identified by "TEST@2023" default tablespace "TBS_TEST" default index tablespace "TBS_TEST";

step3:授予用户指定模式的只读权限

  1. DECLARE
  2.     SQLSTMT STRING;
  3.     CURSOR CUR FOR SELECT ID,NAME  FROM SYSOBJECTS  WHERE  TYPE$ = 'SCHOBJ' AND SUBTYPE$ IN ('STAB','UTAB')  AND (PID=-1 OR PID=0) AND  SCHID=(SELECT ID FROM SYSOBJECTS WHERE TYPE$='SCH' AND NAME='模式名' );
  4.     TYPE MYREC IS CUR%ROWTYPE;
  5.     REC_V MYREC;
  6.     BEGIN
  7.     FOR REC_V IN CUR LOOP
  8.     SQLSTMT = 'grant SELECT ON "模式名"."'|| REC_V.NAME  || '" TO "TEST";';
  9.     EXECUTE IMMEDIATE SQLSTMT;
  10.     END LOOP;
  11.     COMMIT;
  12. END

注:GZAMR_SJJH 替换为指定模式即可。

角色的理解:

DBA:DM数据库系统中对象与数据操作的最高权限集合,拥有构建数据库的全部特权,只有DBA才可以创建数据库结构。

RESOURCE:可以创建数据库对象,对有权限的对象进行数据操纵,不可以创建数据库结构。

PUBLIC:不可以创建数据库对象,只能对有权限的数据库对象进行操纵。

VTI:角色具有系统动态视图查询权限。

SOI:角色具有系统表(SYS开头的表)的查询权限。


二.修改用户密码

alter user 用户名 identified by 新密码;

~~~~~~~~~~~~~~~分享完毕~~~~~~~~~~~~~~~~

更多内容,请访问达梦社区地址:https:eco.dameng.com

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/648122
推荐阅读
相关标签
  

闽ICP备14008679号