




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 实验八 数据库安全管理一、目的与要求1. 掌握创建用户和角色的方法2. 掌握SQL授权命令和收回权限的命令二、实验准备1. 了解SQL Server登录身份和登录模式的概念; 2. 了解用户、角色、登录三者的概念;3. 了解权限授予和收回的的T-SQL语法。三、实验内容(一)创建登录名1 创建新的登录名testlogin (1) 在对象资源管理器的目录树中“安全性”à“登录名”,点击右键选择“新建登录名”,设置登录名为testlogin,“SQL Server身份验证”密码为abc,默认数据库为“studentdb”,如图8-1所示。 图8-1提问:此时用testlogin登录名创
2、建新的连接,登录到对象资源管理器,是否能登录成功?不能登陆成功(2) 右击testlogin登录名,选择属性,设置“用户映射”,设置“映射到此登录名的用户“为“studentdb”,如图8-2所示。这里即是创建和登录名同名的用户,该用户属于默认数据库。这个用户具有的数据库角色是public。(3) 确定后再次以testlogin及其密码登录查ssms,在testlogin登录名下新建查询。运行命令,查看并记录结果。提问:此时是否查询命令能查询到st_info表中的数据?为什么?答:不能,因为未获得访问特定数据库中数据的权利。图8-2(4) 若要查询studentdb数据库中表的数据,则要在数据
3、库角色成员身份中选择db_datareader角色(回到sa登录下设置该登录名的属性),再运行上题中的查询语句,查看结果。(5) 在查询编辑器中运行命令,查看是否允许。若不允许,则要在数据库角色成员身份中选择db_datawriter角色。重新运行该条更新语句,查看结果。图8-32 提问:testlogin登录名登录后,允许访问服务器上所有的数据库吗?能访问哪些数据库?。登录用户只能看到并访问它自己的数据库而不能看到其他的数据库(二)创建用户创建用户时选择映射到已有登录名,即令一个登录名可以访问多个数据库。一个新的登录名(如testlogin)创建后,在其默认数据库下会建立一个同名用户(tes
4、tlogin),即用户testlogin允许访问登录名默认的数据库studentdb。而要用testlogin登录后能访问其他数据库,则要在其他数据库中创建新用户,映射到testlogin这个登录名,这样登录后就可以访问其他数据库了。如,在studb数据库下创建一个新用户U1,属于testlogin登录名。(1) 回到sa登录下,展开“studentdb”数据库à”安全性”à“用户”,右击“新建用户”,填写用户名为U1,如图8-4,点对话框按钮,选择登录名如图8-5,点击“浏览”,选择testlogin,如图8-6。图8-4图8-5图8-6提问:若要在“studentdb”
5、数据库中创建映射到testlogin登录名的新用户U2是否能成功?为什么? 不能成功(2) 刷新testlogin登录下的数据库,查看是否能访问studb数据库了。(3) 在testlogin登录下,新建查询,运行命令,查看是否成功。(4) 切换到sa登录窗口中,选择当前数据库为“studb”,用命令为U1用户授权,授予U1用户查询图书表的权利,命令为,再回到testlogin的查询窗口中,重新运行上题的查询语句,看是否成功。(5) 若要收回该权限可以用命令revoke select on S from U1。(三)管理角色1 角色分类为服务器角色和数据库角色、应用程序角色。分别查看系统预设的
6、服务器角色和数据库角色有哪些。 服务器角色:Sysadmin,serveradmin,setupadmin,securityadmin,processadmin,dbcreator,diskadmin。 数据库角色:db_owner,db_accessadmin,db_datareader,db_datawriter,db_ddladmin,db_securityadmin,db_backoperator,db_denydatareader,db_denydatawriter。2 自定义角色(1) 在studb数据库中创建一个自定义角色,名为testrole。展开目录树à“数据库”&
7、#224;“studb”à“安全性”à“角色”à“数据库角色”,右击新建数据库角色,填写角色名称为“testrole”,选择所有者为“U1”,如图8-7所示。图8-7(2) 设置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、了,如图8-12,对C表授予“insert”“delete”“select”“update”权限,则在这些项目对应的复选框中打钩,这里还可以赋予授权权限和拒绝该权限。这样就使得testrole角色具有对数据库中多个表的多项权限,那么把该角色授予给用户,就能一次给用户授予多项权限了。图8-12(3) 在sa登录下,将testrole角色授予给testlogin登录名下映射到的studb数据库中的U1用户。即设置testlogin登录名的属性,对studb数据库勾选testrole角色,如图8-13所示。图8-13(4) 在testlogin登录下,在查询编辑器中里窗体中运行查询C,SC表的命令,
9、和对SC表进行删除的命令delete from SC where cno=C1。查看是否成功。 3 为角色授予权限和收回权限的命令与对用户相同(1) 收回testrole中对C表的删除的权限,命令为 revoke delect on C from testrole (2) 要授予testrole角色能修改SC表score字段的权限,则命令为 grant update(score) on SC to testrole 四、思考与练习1登录、用户、角色的概念如何区分?三者在SQL Server中有何关系?答:a. 服务器登录名属于某组服务器角色;b. 服务器登录名需要于数据库的用户映射后才拥有操作数据库的权限c.数据库用户属于某组数据库角色以获取操作数据库的权限d.数据库角色拥有对应的数据库架构,数据库
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年新能源汽车电池能量密度提升与创新技术探索报告
- 2025年新能源产业技术创新在环保责任中的实践挑战报告
- 教育行业人才流失与吸引机制:2025年行业人才竞争策略报告
- 商业咨询服务协议概要
- 新能源行业2025年国际化进程中技术创新与国际化市场拓展模式报告
- 页岩气开采技术2025年环境影响评估与效益分析报告:环境保护与经济效益协同
- 养老金调整课件
- 2025年氢能项目投资成本优化与回报周期预测及风险控制报告
- 医药企业研发外包(CRO)模式下的药物研发成本控制与预算管理报告
- 大学生个人诊改汇报
- GB/T 37507-2025项目、项目群和项目组合管理项目管理指南
- 2025年人教部编版小学三年级语文上册全册单元测试题及答案(全套)
- 城市轨道交通车站平面设计要点课件
- 生产计划与调度操作手册
- 食品防欺诈培训课件
- 室内墙体拆除合同全文
- 2025年中国移动初级解决方案经理学习考试题库大全-上(单选题)
- 江苏苏州历年中考语文现代文之散文阅读13篇(截至2024年)
- 体育行业反兴奋剂管理制度
- 护理管理的发展史
- 《以产地命名中药》课件
评论
0/150
提交评论