SQL server 实验报告
实验时间:2009-03-23                     实验人:小风
实验名称:安全管理数据库
实验任务和目标:任务一:建立和管理登录账户 任务二:建立和管理数据库用户
掌握创建登录帐户和数据库用户的方法
掌握配置身份验证模式的方法
掌握对数据库中的对象赋予权限的方法
实验环境描述
实验环境要求:windows server 2003 sp1 ,SQL server 2005
在服务器sjd的默认实例中建立一个数据库叫sjd,现在需要加强数据库的安全,以保障正常运行,通过适当的权限分配,授予或撤销用户访问数据库及其对象的权限。
1.下面的windows组需要访问SQL server数据库:
Windows组
数据库
HREmployees
Sjd
SalesEmployess
Sjd
ITEmployees
Master
2.ITEmploees组负责建立数据库。
3.登录账户HEApp负责一个应用程序访问sjd数据库
4.登录账户HRAppAadmin负责管理HRApp登录账户(改变其账户密码)
5.让HRApp登录账户可以查询Sjd数据库中的任意表。
6.让HREmployees组成员可以查询和插入sjd数据库中的Employees表
7.让人事部门的高级员工可以查询、插入、修改Employees表,需要建立一个数据库角色HRAdmin并授予相应的角色,让HREmployees组中的frank加入这个数据库角色中 。
实验拓扑及网络规划:无
实验操作过程及配置说明
1.建立数据库sjd
安全管理数据库_第1张图片
2.新建windows身份验证用户
先在windows中建立3个组和3人用户
安全管理数据库_第2张图片 安全管理数据库_第3张图片 安全管理数据库_第4张图片
在windows中用户建好了再在sql中新建用户
安全管理数据库_第5张图片
安全管理数据库_第6张图片
安全管理数据库_第7张图片
安全管理数据库_第8张图片
安全管理数据库_第9张图片
三个组都建好了
安全管理数据库_第10张图片
要做映射后用户才可以登录
安全管理数据库_第11张图片
3.新建SQL身份验证用户
语句create login sjd with password='123'
安全管理数据库_第12张图片
建成功后要映射到某个数据库才可以登录到数据库,在账户属性中
安全管理数据库_第13张图片
映射到了sjd数据库,这样sjd用户才可以登录到sjd数据库
安全管理数据库_第14张图片
用数据库身份验证,因为建的是数据库用户
安全管理数据库_第15张图片
新建登录名为HRAppAadimin
安全管理数据库_第16张图片
建HRApp 安全管理数据库_第17张图片
将登录账号加入服务器角色(加入相应的角色才有角色拥有的权限)
安全管理数据库_第18张图片
安全管理数据库_第19张图片
用ITemployees组成员登录
安全管理数据库_第20张图片
安全管理数据库_第21张图片 安全管理数据库_第22张图片
安全管理数据库_第23张图片
建立一个数据库test1(验证结果)加入了dbcreate角色可以建立更改数据库
安全管理数据库_第24张图片
给hrappadmin账户分配权限
在对象资源管理器,右击登录名hrappadmin,选择“属性”
安全管理数据库_第25张图片
在“安全对象”选项卡中,添加hrapp用户,授予其alter权限(alter是改变对象属性)
安全管理数据库_第26张图片
验证hrappadmin可以改变hrapp密码
用hrappadmin账号登录
安全管理数据库_第27张图片
安全管理数据库_第28张图片
可以改密码了
安全管理数据库_第29张图片
任务二:建立和管理数据用户
建立数据库用户映射到windows登录账号
在sjd数据库下新建用户hremployees 登录名sjd\hremployees(sjd是sjd数据库)
安全管理数据库_第30张图片
安全管理数据库_第31张图片
重复以上步骤建立用户salesemployees
安全管理数据库_第32张图片
安全管理数据库_第33张图片
建立数据库用户映射单独的windows用户
用户名tom (tom是windows的itemployees组的成员)默认架构dbo
安全管理数据库_第34张图片
用户名frank (frank是windows的hremployees组的成员)
安全管理数据库_第35张图片
建立数据库用户映射SQL server登录账号
新建用户hrapp (在登录名前面加主机名就是建立windwos账户)
安全管理数据库_第36张图片
添加用户到数据库角色
给tom添加db_datareader角色
安全管理数据库_第37张图片
安全管理数据库_第38张图片
验证hrapp的权限
安全管理数据库_第39张图片
安全管理数据库_第40张图片
查询sjd数据库中的表(可以查询)
安全管理数据库_第41张图片
用frank账号登录查询(将反回错误)
安全管理数据库_第42张图片
打不开sjd数据库中的表(未截图)
添加hremployees用户到数据库角色
在sjd数据库的sjd表属性中的权限中添加hremployees授权select
安全管理数据库_第43张图片
安全管理数据库_第44张图片
安全管理数据库_第45张图片
安全管理数据库_第46张图片
验证结果:可以打开sjd表了
安全管理数据库_第47张图片
建立用户定义数据库角色hradmin
安全管理数据库_第48张图片
安全管理数据库_第49张图片
授予用户定义数据库角色权限
Sjd数据库中的表为例
安全管理数据库_第50张图片
安全管理数据库_第51张图片
给予select/insert/update/delete 权限
安全管理数据库_第52张图片
添加frank用户到数据库角色
Sjd数据库——安全性——角色——数据库角色——hradmin属性
安全管理数据库_第53张图片
安全管理数据库_第54张图片
验证frank用户的权限
用frank用户登录查询和修改sjd数据库中的sjd表
 
实验结果:
安全管理数据库_第55张图片