收藏 分享(赏)

数据库安全管理.doc

上传人:精品资料 文档编号:10618807 上传时间:2019-12-07 格式:DOC 页数:13 大小:723.50KB
下载 相关 举报
数据库安全管理.doc_第1页
第1页 / 共13页
数据库安全管理.doc_第2页
第2页 / 共13页
数据库安全管理.doc_第3页
第3页 / 共13页
数据库安全管理.doc_第4页
第4页 / 共13页
数据库安全管理.doc_第5页
第5页 / 共13页
点击查看更多>>
资源描述

1、西南石油大学实验报告一、实验课时:2二、实验目的(1) 掌握使用 T-SQL 语句创建登录帐户的方法。(2) 掌握使用 T-SQL 语句创建数据库用户的方法。(3) 掌握使用 T-SQL 语句创建数据库角色的方法。(4) 掌握使用 T-SQL 语句管理数据库用户权限方法。三、实验要求(1) 使用 SQL Server 2008 查询分析器。(2) 严格依照操作步骤进行。四、实验环境(1) PC 机。(2) SQL Server 2008。五、实验内容及步骤注意事项:(1) 首先在 C 盘根目录创建文件夹 Bluesky,执行脚本文件“PracticePre-第 11 章安全管理.sql”,创建

2、数据库 BlueSkyDB 和表;(2) 如何建立“数据库引擎查询”;(3) 使用“select user_name()”可查询当前登录账号在当前数据库中的用户名。步骤 1 使用 Transact-SQL 创建三个 SQL Server 登录账户TUser1、TUser2、TUser3,初始密码均为“123456”。步骤 2 使用 TUser1 建立一个新的数据库引擎查询,在“可用数据库”下拉列表框中是否能看到并选中 BlueSkyDB 数据库?为什么?可以看到数据库 BlueSkyDB 但是不能选中打开,因为用户仅仅是能够使用服务器的合法用户,但不能访问数据库步骤 3 使用 Transact

3、-SQL 将 SQL Server 登录账户 TUser1、TUser2、TUser3映射为数据库 BlueSkyDB 的用户,用户名同登录名。步骤 4 再次使用 TUser1 建立一个新的数据库引擎查询,这次在“可用数据库”下拉列表框中是否能看到并选中 BlueSkyDB 数据库?为什么?能够选中 BlueSkyDB,因为 TUser1 已经成为该数据库的合法用户了步骤 5 用 TUser1 用户在 BlueSkyDB 数据库中执行下述语句,能否成功?为什么?SELECT * FROM BOOKS;不能成功,因为该用户没有对数据库操作的权限。步骤 6 授予 TUser1 具有对 BOOKS

4、表的查询权限,授予 TUser2 具有对CUSTOMERS 表的插入权限。步骤 7 用 TUser2 建立一个新的数据库引擎查询,执行下述语句,能否成功?为什么?INSERT INTO CUSTOMERS VALUES(张三,,123456); (注意:CUSTOMERS 表中的 customerID 列为自增列)能成功,因为 TUser2 具有对 customer 表插入数据的权限再执行下述语句,能否成功?为什么?SELECT * FROM CUSTOMERS;不能,因为 TUser2 仅有对 customer 表插入的权限,但没有查询的权限。步骤 8 在 TUser1 用户建立的数据库引擎

5、查询中,再次执行下述语句:SELECT * FROM BOOKS;可以执行,因为 TUser1 有对表 BOOKS 查询的权限。这次能否成功?但如果执行下述语句:INSERT INTO CUSTOMERS VALUES(李四,,123456);能否成功?为什么?不能成功,因为 TUser1 没有对 CUTOMERS 表插入数据的权限。步骤 9 授予 TUser3 具有在 BlueSkyDB 数据库中的建表权限。步骤 10 使用 Transact-SQL 在数据库 BlueSkyDB 中创建一个角色 TRole1,并使用 Transact-SQL 将对 BlueSkyDB 数据库中 Books

6、表的增、删、改、查权限授予角色 TRole1。步骤 11 新建立一个 SQL SERVER 身份验证模式的登录名:pub_user,并让该登录名成为 BlueSkyDB 数据库中的合法用户(非常重要,否则后面无法将其加入TRole1 角色)步骤 12 用 pub_user 建立一个新的数据库引擎查询,执行下述语句,能否成功?为什么?SELECT * FROM BOOKS;不能成功,因为 pub_user 没有任何对数据库 BlueSkyDB 操作的权限。步骤 13 将 pub_user 用户添加到 TRole1 角色中。步骤 14 在 pub_user 建立的数据库引擎查询中,再次执行下述语句

7、,能否成功?为什么?SELECT * FROM BOOKS;能成功,应为 pub_user 属于 TRole 的角色,而 TRole 角色具有对 books 表的增删改查的权限。步骤 15 使用 Transact-SQL 将对 BlueSkyDB 数据库中 Books 表的删除、更新和查询的权限从角色 TRole1 处回收回来。步骤 16 在 pub_user 建立的数据库引擎查询中,再次执行下述语句,能否成功?为什么?SELECT * FROM BOOKS;因为删除了 TRole1 删除,更新和查询的权限,而 pub_user 是属于 TRole1 用户的,所以,pub_user 拥有与 T

8、Role1 一样的权限,仅仅能忘 books 表中插入数据。六、收获,体会及问题在本次实验中主要是对数据库的安全性进行管理,对于数据库可以创建多个登录名(create login ),通过登录名登录的用户就是数据的的合法用户,但不能对库里的数据库进行查看,不能选中其中的任意数据库,然后是可以对指定数据库创建相应的用户(create user),有了该用户,就能够访问相应的数据库,但是不能对数据库里的内容进行操作,能选中数据库,就是不能操作,为了给用户操作的权限,可以使用 grant 赋予相应的用户以操作权限,使用 revoke 收回权限,也可以通过创建角色(create role),将用户添加到角色中(exec add_rolemember),就可以使用户拥有该角色的相应权限。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报