1、3. 角色4. 数据库用户5. 存取控制实验内容1. 创建登陆账号 2. 创建数据库用户3. 创建角色4. 存取控制实验步骤1. 创建登陆账号并验证数据库的访问权限 1) 创建一个windows登录账户,并验证是否创建成功(如果不成功,请检查服务器属性并修改相关设置);在计算机系统工具里面创建一个组u1创建一个windows登录账户u1(即属于u1组里面的windows的账号都可以对SQL Server进行访问,但是不能对数据库进行操作)验证成功2) 创建一个SQL SERVER登录账户,并验证是否创建成功,不成功,操作同上;创建SQL SERVER 登录账户 aa(该账户可以在任何机器上面登
2、陆来访问数据库)1) 创建两个数据库用户;对数据库DB1创建数据库用户dd失败,原因是因为dd不是SQL SERVER 登陆账号,即dd不能够登陆到SQL SERVER 下面使用数据库用户aa进入SQL AERVER ,可以看到数据库用户aa可以对数据库DB1进行访问但是数据库用户不能对数据库DB1进行操作,因为该用户的权限没有进行设置2) 分析数据库用户和登录账户的关系;分析:登陆账户可以登陆到SQL SERVER的第一把钥匙,但是不能对数据库进行访问和操作,除非对登陆账户赋予权限。而数据库用户即是第二把钥匙,可以对数据库进行访问,但是不能够对数据库里面的表、视图等进行操作(因为没有赋予权限
3、)1) 创建一个数据库角色,并把上面创建的数据库用户添加进来(即:通过角色进行授权);在数据库DB1里面创建一个角色r1,并且添加数据库用户aa,bb2) 检查上两个数据库用户的使用权限;经检查数据库用户aa,bb对数据库DB1没有操作的权限可以对数据库用户aa,bb进行权限设置:1.直接勾选2.在查询分析器里面使用SQL语句对aa,bb赋予权限GRANT SELECTON StudentTO bb(SQL SERVER中使用)ON TABLE Student(ORACLE中使用)1) SQL SERVER的存取控制包括:授予、废除和拒绝,体会他们的不同含义;GRANT SELECT,INSERT,UPDATE(Tno),DELETEON TeacherTO ccWITH GRANT OPTIONREVOKE UPDATE(Tno)FROM cc使用数据库用户cc登陆进行权限查询验证UPDATE TeacherSET Tname=王五WHERE Tno=01(报错:拒绝了对对象 Teacher(数据库 DB1,所有者 dbo)的 UPDATE 权限。)2) 对如上所建用户权限验证其权限的使用。对数据库用户aa进行操作SELECT *FROM Course(可以执行)DELETE WHERE Cno=1