网站大量收购闲置独家精品文档,联系QQ:2885784924

数据库的安全性、完整性.docVIP

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实 验 报 告 【实验名称】 数据库的安全性、完整性 姓名: 学号: 班级: 日期: 11月21日 【实验目的】 1. 掌握自主存取控制权限的定义和维护方法; 2. 掌握实体完整性的定义和维护方法; 3. 掌握参照完整性的定义和维护方法; 4. 掌握用户自定义完整性的定义和维护方法。 【实验环境】 SQL SERVER 2008 【实验内容】 义用户、角色,分配权限给用户、角色,回收权限,以相应的用户名登录数据库验 证权限分配是否正确。选择一个应用场景,使用自主存取控制机制设计权限分配。 可以采用两种方案。方案一:采用sa超级用户登录数据库,完成所有权限分配工作, 然后用相应用户名登陆数据库以验证权限分配正确性;方案二:采用sa用户登陆数 据库创建三个部门经理用户,并分配相应的权限,然后分别用三个经理用户名登陆 数据库,创建相应部门的USER, ROLE,并分配相应权限。验证权限分配之前,请备 份好数据库;针对不同用户所具有的权限,分别设计相应的SQL语句加以验证。 定义实体完整性,删除实体完整性。能够写出两种方式定义实体完整性的SQL语句: 创建表时定义实体完整性、创建表后定义实体完整性。设计SQL语句验证完整性约 束是否起作用。 定义参照完整性,定义参照完整性的违约处理,删除参照完整性。写出两种方式定 义参照完整性的SQL语句:创建表时定义参照完整性、创建表后定义参照完整性。 针对具体应用语义,选择NULL/NOT NULL、DEFAULT,UNIQUE、CHECK等,定义属性 上的约束条件。 【实验过程】 首先在Windows身份验证模式下以管理员身份右击“安全性”下的“用户”创建用户(不勾选任何选项),此时的用户没有任何的权限,无法访问数据库,更无法访问基本表。 可以直接使用代码为用户授权 GRANT INSERT ON TABLE SC TO U5 WITH GRANT OPTION; 有最后一句子句用户可以传播此权限 右击“安全性”下的“角色”创建数据库角色(或使用CREATE ROLE 角色名),此时的角色是一个没有权限的空集合。接下来为角色授权(这里使用代码授权)。 GRANT 权限 [, 权限]... ON 对象类型对象名 TO 角色 [, 角色]... --将一个角色授予其他的角色或者用户 GRANTT 角色1 [, 角色2 ]... TO 角色3 [, 用户1]... [WITH ADMIN OPTION] 指定最后一句子句,则获得某种权限的角色或用户还可以把这种权限在授予其他角色。 --角色权限的收回 REVOKE 权限 [, 权限]... ON 对象类型对象名 FROM 角色 [, 角色]... --定义实体完整性 --将Student表中的Sno属性定义为码 CREATE TABLE Student (Sno CHAR(9) PRIMARY KEY, /*在列级定义主码*/ Sname CHAR(20) NOT NULL, Ssex CHAR(2), Sage SMALLINT, Sdept CHAR(20) ); --定义参照完整性 --定义SC中的参照完整性 CREATE TABLE SC (Sno CHAR(9) NOT NULL, Cno CHAR(4) NOT NULL, Grade SMALLINT, PRIMARY KEY(Sno, Cno), FOREIGN KEY (Sno) REFERENCES Student(Sno), FOREIGN KEY (Cno) REFERENCES Course(Cno) ); --用户定义的完整性 --Student表的Ssex只允许取“男”或“女” CREATE TABLE Student (Sno CHAR(9) PRIMARY KEY, /*在列级定义主码*/ Sname CHAR(8) NOT NULL, /*Sname属性不允许取空值*/ Ssex CHAR(2) CHECK (Ssex IN(男,女)), /*性别属性Ssex只允许取男或女*/ Sage SMALLINT, Sdept CHAR(20) ); 【实验心得】 通过此次实验对于自主存取控制方法有了清晰的了解,用户对于不同的数据库对象有不同的存取权限,不同的用户对于同一对象也有不同的权限,而且用户还可将其拥有的存取权限转授给其他用户,自主存取控制非常灵活。也加深对角色的了解

文档评论(0)

anma + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档