数据库基础与实例教程(达梦DM8) 课件 7.3角色管理_第1页
数据库基础与实例教程(达梦DM8) 课件 7.3角色管理_第2页
数据库基础与实例教程(达梦DM8) 课件 7.3角色管理_第3页
数据库基础与实例教程(达梦DM8) 课件 7.3角色管理_第4页
数据库基础与实例教程(达梦DM8) 课件 7.3角色管理_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据库基础(基于达梦DM8)数据库安全管理77.3角色管理03角色及权限管理01理解角色04角色的启用与禁用02角色的创建与删除理解角色7.3.17.3.1理解角色

角色是一组权限的组合,使用角色的目的是使权限管理更加方便。角色可以作为一个整体授予某一类用户,避免了对所有用户权限的逐一修改。

角色中的权限既可以是数据库权限,也可以是对象权限,还可以是别的角色。

在使用角色的过程中,可以随时向角色中添加权限,也可以随时从角色中删除权限,用户的权限也随之改变。如果要回收所有权限,只需将角色从用户回收即可。7.3.1理解角色

在DM数据库中有两类角色,一类是DM预设定的角色,一类是用户自定义的角色。

DM提供了一系列的预定义角色以帮助用户进行数据库权限的管理。预定义角色在数据库被创建之后即存在,并且已经包含了一些权限,数据库管理员可以将这些角色直接授予用户。7.3.1理解角色“三权分立”机制下常见的系统角色及其简单介绍。角色的创建与删除7.3.27.3.2角色的创建与删除1.创建角色具有“CREATEROLE”数据库权限的用户也可以创建新的角色。创建角色的SQL语法如下。CREATEROLE<角色名>;在创建角色过程中应注意下面几点。角色名的长度不能超过128个字符;角色名不允许和系统已存在的用户名重名;角色名不允许是DM保留字。创建角色案例CREATEROLESTAFF_DBA;CREATEROLESTAFF_DBA0;

【案例7-8】使用SQL创建一个STAFF_DBA角色,一个STAFF_DBA0角色。7.3.2角色的创建与删除2.删除角色具有“DROPROLE”权限的用户可以删除角色。删除角色的SQL语法如下。DROPROLE[IFEXISTS]<角色名>;在创建角色过程中应注意下面几点。角色名的长度不能超过128个字符;角色名不允许和系统已存在的用户名重名;角色名不允许是DM保留字。7.3.2角色的创建与删除2.删除角色即使已将角色授予了其他用户,删除这个角色的操作也将成功。此时,那些之前被授予该角色的用户将不再具有这个角色所拥有的权限,除非用户通过其他途径也获得了这个角色所具有的权限。指定IFEXISTS关键字后,删除不存在的用户时不会报错,否则会报错。删除角色案例DROPROLESTAFF_DBA0;DROPROLESTAFF_DBA0;DROPROLEIFEXISTSSTAFF_DBA0;

【案例7-10】使用SQL删除STAFF_DBA0角色,然后使用SQL再次删除STAFF_DBA0角色(分别指定和不指定IFEXISTS关键字)。角色及权限管理7.3.31数据库权限的分配与回收(1)数据库权限的分配

可以通过GRANT语句将权限(包括数据库权限、对象权限以及角色权限)分配给用户和角色,之后也可以将授出的权限再进行回收。还可以使用GRANT语句授予用户和角色数据库权限。

数据库权限的授权语句语法为。GRANT<数据库权限>{,<数据库权限>}TO<用户或角色>{,<用户或角色>}[WITHADMINOPTION];

其中<用户或角色>::=<用户名>|<角色名>1.数据库权限的分配案例GRANTCREATETABLE,CREATEVIEWTOSTAFF_USERWITHADMINOPTION;

【案例7-12】系统管理员SYSDBA把建表和建视图的权限授给用户STAFF_USER,并允许其转授。1.数据库权限的分配案例GRANTCREATETABLE,CREATEVIEWTOSTAFF_DBA;

【案例7-13】系统管理员SYSDBA把删除表和删除视图的权限授给角色STAFF_DBA,并不允许其转授。1数据库权限的分配与回收(2)数据库权限的回收

可以使用REVOKE语句回收授出的指定数据库权限。回收数据库权限的语句语法为。REVOKE[ADMINOPTIONFOR]<数据库权限>{,<数据库权限>}FROM<用户或角色>{,<用户或角色>};1.数据库权限的回收案例REVOKECREATETABLEFROMSTAFF_USER;

【案例7-14】SYSDBA用户把用户STAFF_USER的建表权限收回。1.数据库权限的回收案例REVOKEADMINOPTIONFORCREATEVIEWFROMSTAFF_USER;【案例7-15】SYSDBA用户收回允许STAFF_USER转手CREATEVIEW的权限。2对象权限的分配与回收(1)对象权限的分配

对象权限的授权语句基本语法为。GRANT<授权>ON[<对象类型>]<对象>TO<用户或角色>{,<用户或角色>}[WITHGRANTOPTION];2.对象权限的授权案例GRANTALLPRIVILEGESONSCH_FACTORY.STAFFTOSTAFF_USER;

【案例7-16】SYSDBA用户把SCH_FACTORY.STAFF表的全部权限授给用户STAFF_USER。2.对象权限的授权案例

【案例7-17】SYSDBA用户使用图形化工具,将STAFF_USER对于SCH_FACTORY.STAFF表的权限设置为拥有“SELECT、INSERT、UPDATE”权限。2对象权限的分配与回收(2)对象权限的回收

对象权限的回收语句基本语法为。REVOKE[GRANTOPTIONFOR]<权限>ON[<对象类型>]<对象>FROM<用户或角色>{,<用户或角色>}[<回收选项>];2.对象权限的回收案例REVOKEALLPRIVILEGESONSCH_FACTORY.STAFFFROMSTAFF_USERCASCADE;

【案例7-18】SYSDBA从用户STAFF_USER处回收其授出的SCH_FACTORY.STAFF表的全部权限。3角色的授予与回收(1)角色的授予

通常角色包含权限或其他角色,通过使用GRANT语句将一个角色授予用户或另一角色可以使得用户和角色继承该角色所具有的权限,从而简化权限的管理。

授予角色权限的语句基本语法如下。GRANT<角色名>{,<角色名>}TO<用户或角色>{,<用户或角色>}[WITHADMINOPTION];

用户名或角色名的语法如下。<用户名或角色名>::=<用户名>|<角色名>3角色的授予与回收(2)角色的回收

可以使用REVOKE语句回收用户或其他角色从指定角色继承过来的权限。

回收角色权限的语句基本语法如下。REVOKE[ADMINOPTIONFOR]<角色名>{,<角色名>}FROM<角色名或用户名>;

角色名或用户名的语法如下。<角色名或用户名>::=<用户名>|<角色名>角色的启用与禁用7.3.47.3.4角色的启用与禁用

某些角色不再需要使用的时候可以使这个角色失效,而不用删除这个角色,等业务需求需要时再使用。

此时可以使用DM系统过程SP_SET_ROLE来设置这个角色为不可用,将第二参数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论