实验八 数据库安全管理讲解.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验八 数据库安全管理 一、目的与要求 掌握创建用户和角色的方法 掌握SQL授权命令和收回权限的命令 二、实验准备 了解SQL Server登录身份和登录模式的概念; 了解用户、角色、登录三者的概念; 了解权限授予和收回的的T-SQL语法。 三、实验内容 (一)创建登录名 创建新的登录名testlogin 在对象资源管理器的目录树中“安全性”(“登录名”,点击右键选择“新建登录名”,设置登录名为testlogin,“SQL Server身份验证”密码为abc,默认数据库为“studentdb”,如图8-1所示。 图8-1 提问:此时用testlogin登录名创建新的连接,登录到对象资源管理器,是否能登录成功? 右击testlogin登录名,选择属性,设置“用户映射”,设置“映射到此登录名的用户“为“studentdb”,如图8-2所示。这里即是创建和登录名同名的用户,该用户属于默认数据库。这个用户具有的数据库角色是public。确定后再次以testlogin及其密码登录查ssms,在testlogin登录名下新建查询。运行命令,查看并记录结果。 提问:此时是否查询命令能查询到st_info表中的数据?为什么? 图8-2 若要查询studentdb数据库中表的数据,则要在数据库角色成员身份中选择db_datareader角色(回到sa登录下设置该登录名的属性),再运行上题中的查询语句,查看结果。 在查询编辑器中运行命令 ,查看是否允许。若不允许,则要在数据库角色成员身份中选择db_datawriter角色。重新运行该条更新语句,查看结果。 图8-3 重新运行后结果如下所示: 提问:testlogin登录名登录后,允许访问服务器上所有的数据库吗?能访问哪些数据库?。 (二)创建用户 创建用户时选择映射到已有登录名,即令一个登录名可以访问多个数据库。 一个新的登录名(如testlogin)创建后,在其默认数据库下会建立一个同名用户(testlogin),即用户testlogin允许访问登录名默认的数据库studentdb。而要用testlogin登录后能访问其他数据库,则要在其他数据库中创建新用户,映射到testlogin这个登录名,这样登录后就可以访问其他数据库了。如,在studb数据库下创建一个新用户U1,属于testlogin登录名。 回到sa登录下,展开“studentdb”数据库(”安全性”(“用户”,右击“新建用户”,填写用户名为U1,如图8-4,点对话框按钮,选择登录名如图8-5,点击“浏览”,选择testlogin,如图8-6。 图8-4 图8-5 图8-6 提问:若要在“studentdb”数据库中创建映射到testlogin登录名的新用户U2是否能成功?为什么? 刷新testlogin登录下的数据库,查看是否能访问studb数据库了。 在testlogin登录下,新建查询,运行命令,查看是否成功。 切换到sa登录窗口中,选择当前数据库为“studb”,用命令为U1用户授权,授予U1用户查询图书表的权利,命令为,再回到testlogin的查询窗口中,重新运行上题的查询语句,看是否成功。 若要收回该权限可以用命令revoke select on S from U1。 (三)管理角色 角色分类为服务器角色和数据库角色、应用程序角色。分别查看系统预设的服务器角色和数据库角色有哪些。 自定义角色 在studb数据库中创建一个自定义角色,名为testrole。展开目录树(“数据库”(“studb”(“安全性”(“角色”(“数据库角色”,右击新建数据库角色,填写角色名称为“testrole”,选择所有者为“U1”,如图8-7所示。 图8-7 设置testrole对studb数据库中S,C,SC表的若干权限。 右键点击testrole角色,选择属性,设置安全对象,如图8-8所示。 图8-8 点击“添加”,选择添加对象为“特定对象”,如图8-9。 图8-9 选择安全对象类型为“表”,如图8-10。 图8-10 再点击“浏览”,选择选择该角色允许设置的S,C,SC表,如图8-11。 图8-11 回到角色属性窗口,此时就能对允许访问的表设置具体数据库权限了,如图8-12,对C表授予“insert”“delete”“select”“update”权限,则在这些项目对应的复选框中打钩,这里还可以赋予授权权限和拒绝该权限。 这样就使得testrole角色具有对数据库中多个表的多项权限,那么把该角色授予给用户,就能一次给用户授予多项权限了。 图8-12 在sa登录下,将testrole角色授予给testlogin登录名下映射到的studb数据库中的

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档