实验三实现数据库的安全性与数据的完整性.docxVIP

实验三实现数据库的安全性与数据的完整性.docx

  1. 1、本文档共9页,可阅读全部内容。
  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文档。上传文档
查看更多

实验三实现数据库的安全性与数据的完整性

一、实验目的

1.了解SQLServer2000的身份验证方法。

2.掌握合法登录帐户的设置。

3.掌握用户的权限管理方法。

4.掌握实体完整性与参照完整性的实现方法。

5.掌握域完整性的实现方法。

二、实验内容

1.Windows和SQLServer2000身份验证的比较。

2.设置登录帐户。

3.设置数据库用户权限。

4.参照完整性

5.实体完整性

6.域完整性

三、实验准备

1.登录模式

a)SQLServer和Windows:指定用户可以使用SQLServer身份验证和Windows身份验证连接到SQLServer。

b)仅Windows:指定用户只能使用Windows身份验证连接SQLServer。

2.权限验证

当验证了用户的身份并允许其登录到SQLServer2000实例之后,在用户必须访问的每个数据库中都要求单独的用户帐户。在每个数据库中都要求用户帐户可防止用户连接到

SQLServer实例并访问服务器上的所有数据库

3.角色

利用角色,SQLServer管理者可以将某些用户设置为某一角色,这样只对角色进行权限设置便可以实现对所有用户权限的设置,大大减少了管理员的工作量。SQLServer提供了用户通常管理工作的预定义服务器角色和数据库角色。

服务器角色

l系统管理员:拥有SQLServer所有的权限许可。

l服务器管理员:管理SQLServer服务器端的设置。

l磁盘管理员:管理磁盘文件。

l进程管理员:管理SQLServer系统进程。

l安全管理员:管理和审核SQLServer系统登录。

l安装管理员:增加、删除连接服务器,建立数据库复制以及管理扩展存储过程。

l数据库创建者:创建数据库,并对数据库进行修改

数据库角色

lpublic:维护全部默认许可。

ldb_owner:数据库的所有者,可以对所拥有的数据库执行任何操作。

ldb_accessadmin:可以增加或者删除数据库用户、工作组和角色。

ldb_addladmin:可以增加、删除和修改数据库中的任何对象。

ldb_securityadmin:执行语句许可和对象许可。

ldb_backupoperator:可以备份和恢复数据库。

ldb_datareader:能且仅能对数据库中的任何表执行select操作,从而读取所有表的信息。

ldb_datawriter:能够增加、修改和删除表中的数据,但不能进行select操作。

ldb_denydatareader:不能读取数据库中任何表中的数据。

ldb_denydatawriter:不能对数据库中的任何表执行增加、修改和删除数据操作。

4.实体完整性

把表中的每行看做一个实体,它要求所有行都具有惟一标识通过建立索引、PRIMARYKEY约束、UNIQUE约束以及列的IDENTITY来实现。

例1:

CREATEtableemployee

(job_idsmallintPRIMARYKEY,job_namechar(20)notnull

)

例2:

CREATEtablestudent(snamechar(10),

Snointnotnull,

Primarykey(sno)

)

例3:

createtableii

(aintnotnullIDENTITY(1,3),

bchar)

5.参照完整性

维护被参照表与参照表之间的数据一致性,通过主键(PRIMARYKEY)和外键(FOREIGNKEY)约束实现。使用FOREIGNKEY约束需注意:FOREIGNKEY约束只参照同一个数据库中的其它表,跨数据库表的参照只能通过触发器来实现。

例:

CREATEtablePR

(idintnotnullprimarykey,

Namechar(10))

CREATEtableFR

(idintnotnullReferencesPR(id),Scoreintnotnull)

6.域完整性(用户定义)

要求表中指定列的数据具有正确的数据类型、格式和有效的数据范围。通过默认值、CHECK、规则等约束实现

例1:CHECK约束

CREATEtableexample(idintnotn

文档评论(0)

176****7010 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档