- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
5.9.3角色机制 (4) 角色权限的收回 REVOKE权限[,权限]… ON对象类型对象名 FROM 角色[,角色]… 用户可以收回角色的权限,从而修改角色拥有的权限。 REVOKE动作的执行者或者是角色的创建者,或者拥有在这个(些)角色上的ADMIN OPTION。 [例 5-31] 通过角色实现将一组权限授予一个用户。 ①创建一个角色R1。 CREATE ROLE R1; 5.9.3角色机制 ②使用GRANT语句,使角色R1拥有Course表的SELECT、UPDATE、INSERT权限。 GRANT SELECT, UPDATE, INSERT ON TABLE Student TO R1; ③将角色R1授予用户U1、U2和U3,使它们具有角色R1所拥有的全部权限。 GRANT R1 TO U1,U2,U3 ④通过角色R1可以一次性地收回已授予U1的这3个权限。 REVOKE R1 FROM U1; [例 5-32]将对表Student的删除权限授予角色R1,并收回查询权限。 GRANT DELETE ON Student TO R1; REVOKE SELECT ON Student FROM R1; 通过修改角色的权限,一次性把用户U1、U2和U3的权限全部修改了。 主要内容 5.1 完整性概述 5.3参照完整性 5.4用户自定义完整性 5.2 实体完整性 5.5 完整性约束的修改 5.6 触发器 5.8 DBMS中的安全性保护 5.9 SQL中的安全性机制 5.7 安全性概述 5.10 其它安全机制 5.10 其它安全机制 前面介绍的安全机制,都是数据库系统最基本,最重要的安全保护措施,这些措施旨在防止未经授权的访问。然而,一些高敏感数据,除了采用最基本的安全保护措施外,还需要附加更严格的安全措施。这些安全措施包括数据加密技术,统计数据库的安全性。 5.10.1 数据加密 数据加密是防止数据库中数据泄露的有效手段,是数据库安全的最后一道安全防线。数据加密的基本思想就是根据加密算法将原文(明文)转换成一种难以直接辨认的密文存储在数据库中,查询时将密文取出解密后得到明文,从而达到信息隐藏的目的。即使黑客盗窃了关键数据,他仍然难以得到所需的信息。另外,数据库加密后,不需要了解数据内容的系统管理员不能见到明文,也大大提高了关键数据的安全性。 加密算法很多,比较常用的加密方法有换位法、代替法、代数法、乘积密码法。 5.10 其它安全机制 5.10.2 统计数据库的安全性 统计数据库就是以统计应用为主的数据库,主要应用于科学技术,经济等领域。一般,统计数据库允许用户查询聚集类型的信息,如总和、平均值、最小值、最大值等,但是不允许查询单个数据项的信息。例如,查询“程序员的平均工资是多少?”是合法的,但是查询“程序员某某的工资是多少?”是不允许的,因为这牵涉到了个人隐私问题。 本章小结 数据库的完整性是指防止数据库中存在不符合语义的数据,其防范对象是不合语义的、不正确的数据。数据库的安全性是指保护数据库,防止因用户非法使用数据库造成数据泄露、更改或破坏。数据库的完整性确保用户所做的事情是正确的,数据库的安全性确保用户做被允许做的事情。要清楚数据库的完整性和安全性两个基本概念的联系与区别。 关系数据库的完整性约束包括实体完整性、参照完整性和用户自定义完整性。为了保证数据库的完整性,DBMS提供了定义约束、检查约束和违约处理机制。通过定义主码实现实体完整性;通过定义外码满足参照完整性;通过定义属性上的约束条件、元祖上的约束条件、域约束、断言约束等实现用户自定义的完整性。触发器是一类靠事件驱动的特殊过程,实现用户定义的特殊完整性和安全性。触发器具有主动性和灵活性,是保证数据库完整性的一种重要方法,它有多种用途,包括实现商务规则、审计日志,甚至数据库以外的操作。 为了保护数据库的安全性,数据库系统采用多方面的安全措施,包括用户标识与鉴别、存取控制、审计跟踪、授权、视图、角色和数据加密等。其中,存取控制是数据库系统的主要安全措施,自主存取控制通过授权来防止未经授权和恶意访问。角色是命名的权限集合,使用角色可以简化授权,并有利于授权管理。视图和授权配合使用可以隐藏某些敏感数据,提供进一步的安全保护。数据加密技术主要用于保护敏感数据,为数据库提供额外的保护。 思 考 练 习 1. 什么是数据库的完整性?什么是数据库的安全性?两者之间有什么区别和联系? 2. 什么是数据库的完整性约束条件?完整性约束条件可以分为哪几类? 3. 试述DBMS如何实现完整性控制。 4. 现有以下四个关系模式: 供应商(供应商编号,姓名,电话,地点),其中供应商
文档评论(0)