数据库安全性实验
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验
【实验目的】
1.掌握user的创建与授权(all,select,update和delete等)
2.掌握收回权限
3.熟悉级联授权与级联收回
【实验条件】
1.具有2台PC,接入LAN网络,1台作为数据库服务器,1台客户机。
2.服务器端装有MySQL,防火墙允许3306端口,root密码可以远程访问。
【实验过程】
GRANT all onsc.scto teacher1@localhost;
查看权限:
对mag增加授权的权限。多次授权。
命令
GRANTGRANT OPTIONon sc.* TO mag@localhost ;
完成练百度文库1。
2.使用不同账户,远程登录系统。
要求:
Database server需要安装mysql5.x
第二步:使用student1账户登录mysql
Use sc;并查看数据表show tables;
第三步:查看student表的结构,只有3个列。
对teacher1的创建与授权。多次授权。
创建teacher1用户,授予其对student和sc的所有权限。
命令:
GRANT all onsc.studentto teacher1@localhost IDENTIFIED by 't1';
Client可以不安装mysql,只需安装navicat for mysql。
说明:
服务器现有root登录,创建mag、student1、student2、teacher1和teacher2五个账户,并分别授权。
五台电脑(包含服务器)都用navicat创建连接。
3.收回权限
Revoke命令。
收回student1的删除student数据的权限。
第二步:查看mysql.user表
或者通过用户管理窗口查看。
第三步:使用mag用户登录mysql
第四步:检查mag用户的权限
mag用户完成show databases;
切换使用SC数据库,并完成以下操作。
查询student的权限,建立table的权限,查询sc的权限等。
建立数据库的权限
对student1的创建与授权。
第一步:创建student1账户,密码为stu1,并授予student表的sno,sname和sdept三个列的查询权限。
命令如下:
GRANT SELECT(sno,sname,sdept) on sc.student to student1@localhost IDENTIFIED by 'stu1'
2.使用mag登录mysql,创建teacher2用户,密码t2,并授予其对course表的update学分和delete的权限。
3.在root账户中,收回teacher2的delete数据表course的权限。
4.在root账户中,收回mag用户的update数据库sc中所有数据表的权限,并检验teacher2的update course数据表的权限影响。
附录:所有权限可控制对象。
1.创建账户并授权。
登录root账户后,创建user,5个账户,分别是mag、student1、student2、teacher1和teacher2。
对mag的创建与授权。
命令:Grant <权限> <on权限对象> to <username@主机> [identified by‘密码’] [ with grant option]
命令:REVOKE DELETE on sc.student from teacher1@localhost;
登录teacher1账户,检验删除student数据。
【实验总结】
掌握通过用户授权和收回权限的方式提高数据库安全性。
【课外练习】
1.使用mag登录mysql,创建用户student2,密码stu2,并授予对sc表的查询权限。
说明:主机可以用本机表示方法:localhost或ip地址127.0.0.1,也可以用IP地址表示LAN内的主机IP或wan内的主机IP
第一步:创建mag
grant all on sc.* to 'mag'@'localhost' IDENTIFIED by 'Abc123'
说明:grant是授权命令的关键字,all是权限(指所有权限,可以换成其他的权限),on sc.*说明授权操作对象是sc数据库的所有内容(所有表,所有视图等),to mag@localhost说明授权给localhost主机上的mag用户(如果mag不存在,则创建mag,如果存在则直接授权给该用户),identified by‘Abc123’设置mag用户的密码为后面的字符串。
【实验目的】
1.掌握user的创建与授权(all,select,update和delete等)
2.掌握收回权限
3.熟悉级联授权与级联收回
【实验条件】
1.具有2台PC,接入LAN网络,1台作为数据库服务器,1台客户机。
2.服务器端装有MySQL,防火墙允许3306端口,root密码可以远程访问。
【实验过程】
GRANT all onsc.scto teacher1@localhost;
查看权限:
对mag增加授权的权限。多次授权。
命令
GRANTGRANT OPTIONon sc.* TO mag@localhost ;
完成练百度文库1。
2.使用不同账户,远程登录系统。
要求:
Database server需要安装mysql5.x
第二步:使用student1账户登录mysql
Use sc;并查看数据表show tables;
第三步:查看student表的结构,只有3个列。
对teacher1的创建与授权。多次授权。
创建teacher1用户,授予其对student和sc的所有权限。
命令:
GRANT all onsc.studentto teacher1@localhost IDENTIFIED by 't1';
Client可以不安装mysql,只需安装navicat for mysql。
说明:
服务器现有root登录,创建mag、student1、student2、teacher1和teacher2五个账户,并分别授权。
五台电脑(包含服务器)都用navicat创建连接。
3.收回权限
Revoke命令。
收回student1的删除student数据的权限。
第二步:查看mysql.user表
或者通过用户管理窗口查看。
第三步:使用mag用户登录mysql
第四步:检查mag用户的权限
mag用户完成show databases;
切换使用SC数据库,并完成以下操作。
查询student的权限,建立table的权限,查询sc的权限等。
建立数据库的权限
对student1的创建与授权。
第一步:创建student1账户,密码为stu1,并授予student表的sno,sname和sdept三个列的查询权限。
命令如下:
GRANT SELECT(sno,sname,sdept) on sc.student to student1@localhost IDENTIFIED by 'stu1'
2.使用mag登录mysql,创建teacher2用户,密码t2,并授予其对course表的update学分和delete的权限。
3.在root账户中,收回teacher2的delete数据表course的权限。
4.在root账户中,收回mag用户的update数据库sc中所有数据表的权限,并检验teacher2的update course数据表的权限影响。
附录:所有权限可控制对象。
1.创建账户并授权。
登录root账户后,创建user,5个账户,分别是mag、student1、student2、teacher1和teacher2。
对mag的创建与授权。
命令:Grant <权限> <on权限对象> to <username@主机> [identified by‘密码’] [ with grant option]
命令:REVOKE DELETE on sc.student from teacher1@localhost;
登录teacher1账户,检验删除student数据。
【实验总结】
掌握通过用户授权和收回权限的方式提高数据库安全性。
【课外练习】
1.使用mag登录mysql,创建用户student2,密码stu2,并授予对sc表的查询权限。
说明:主机可以用本机表示方法:localhost或ip地址127.0.0.1,也可以用IP地址表示LAN内的主机IP或wan内的主机IP
第一步:创建mag
grant all on sc.* to 'mag'@'localhost' IDENTIFIED by 'Abc123'
说明:grant是授权命令的关键字,all是权限(指所有权限,可以换成其他的权限),on sc.*说明授权操作对象是sc数据库的所有内容(所有表,所有视图等),to mag@localhost说明授权给localhost主机上的mag用户(如果mag不存在,则创建mag,如果存在则直接授权给该用户),identified by‘Abc123’设置mag用户的密码为后面的字符串。