数据库安全实验:用户管理与权限控制

需积分: 5 0 下载量 95 浏览量 更新于2024-08-03 收藏 778KB PDF 举报
实验10-数据库安全性是中山大学计算机学院《数据库系统原理实验》中的一个重要环节,旨在让学生深入理解数据库管理系统的安全性设计与管理。该实验涉及到对数据库用户账户的创建、修改、权限控制和删除等操作,使用MySQL 8.0 CE作为数据库管理系统。 首先,实验开始于创建一个名为RONALDO的用户,设置了密码NIKE,通过SQL命令`CREATE USER RONALDO IDENTIFIED BY 'NIKE';`实现,然后查询`mysql.user`表来确认用户信息。 接着,实验要求将RONALDO用户更名为TEACHER,这通过`RENAME USER RONALDO TO TEACHER;`完成,并再次查询`mysql.user`验证用户更改。 进一步,实验要求修改TEACHER的密码为hello,通过`SET PASSWORD FOR TEACHER = 'hello';`来执行。随后,通过`DROP USER TEACHER;`删除了TEACHER用户,再次验证用户表的变化。 实验继续创建三个新的用户,分别是Chris1@'sql.com'、Chris2@'%'和Chris3@'%.com',并分别设置了不同的权限。在这个部分,实验强调了通配符%'的使用,它表示任何主机,体现了数据库的权限管理策略。 在实验的关键部分,学生被要求授予Chris1@'%'用户在student表上的select和update权限,并允许他将这些权限传递给其他用户,如Chris2@'%'。为了进行这个操作,首先需要创建Chris1@'%'用户,然后使用`GRANT SELECT, UPDATE ON jxgl.student TO Chris1@'%' WITH GRANT OPTION;`赋予权限,最后通过`SHOW GRANTS FOR Chris1@'%';`查看当前用户的权限状态。 整个实验涵盖了数据库用户管理的基础操作,以及权限的授予和回收,这些都是数据库系统安全性的核心要素,有助于学生掌握如何在实际环境中管理和保护数据安全。通过这个实验,学生可以了解如何在数据库设计时实施访问控制策略,以及如何防止未经授权的访问和操作。