数据库系统(三)——数据库安全性控制
一、实验目的:
理解自主存取控制和视图机制在数据库安全性中的应用;
熟练掌握用户管理、授予权限、收回权限的SQL语句,并验证其有效性;
理解角色的作用,能够区分角色和用户。
二、实验内容:
针对不同用户对学生选课数据库的不同权限要求,完成以下实验内容。
创建用户。掌握创建用户的语法结构,根据题目要求运用相关SQL语句创建必要的用户。
创建视图。根据题目要求,创建针对特定数据的视图。
权限授予和收回。理解和掌握GRANT和REVOKE语法结构的各个组成成分,结合用户和角色管理,分别设计不同的存取权限语句,并调试成功。
结合应用需求,理解角色的作用和角色管理的相关操作。
三、实验过程:
1、题目要求:
1.数据库:学生选课数据库
2.数据表:学生表 student、课程表 course、选课表 SC
3.用户:admin、stu、teacher、
4.权限要求:
说明:
(1)admin 用户拥有对数据库的所有操作权限,且能够为其他用户授予权限。
(2)teacher 用户在 student 表上只能查看 Sno、Sname、Ssex 和 Sdept 字段。
(2)学生不能更新 Sno 和院系字段。
(3)teacher 在 SC 表上只能更新 grade 字段。
2、在学生选课数据库的基础上,按以下要求完成权限设置。
1、使用 root 账号登录,创建用户 stu、teacher 和 amdin,密码为123:
create user 'stu'@'localhost' identified by '123';create user 'teacher'@'localhost' identified by '123';create user 'admin'@'localhost' identified by '123' with grant option;
新创建的用户可登录mysql,但无权限查看stu_course数据库。
2、根据表格要求及说明为用户设置相应的权限,并在设置完成后,测试设置的有效性。
①设置 admin 的权限:
grant all privileges
on student,course,SC to 'u1'@'localhost'
with grant option
②设置 stu 的权限:
grant select
on student,course,SC to'stu'@'localhost';grant update
on student to'stu'@'localhost';grant insert
on SC to'stu'@'localhost';
③设置 teacher 的权限:
grant select on student,course,SC to 'teacher'@'localhost';grant update on SC(grade) to 'teacher'@'localhost';
3、创建用户 u1 和 u2,通过 admin 用户为 u1 授予 student 表上的 insert 权限,并允许 u1为其他用户授予该权限。
create user 'u1'@'localhost' identified by '123';create user 'u2'@'localhost' identified by '123';
grant insert
on student to 'u1'@'localhost';
with grant option
4、通过 u1 用户为 u2 用户授予 student 表上的 insert 权限。
grant insert
on student to 'u2'@'localhost';
5、收回 u1 在 student 表上的 insert 权限,验证 u1 和 u2 的权限变化。
revoke insert
on student to 'u1'@'localhost';
默认会级联收回权限。
数据库系统(三)——数据库安全性控制相关推荐
- 数据库系统概论——数据库安全性控制
数据库系统概论--数据库安全性控制 层层设置 系统根据用户标识鉴别用户,只允许合法用户进入计算机系统 数据库管理系统进行存取控制,只允许用户合法操作 操作系统自身有保护措施 数据以密码形式存储到数据库 ...
- 【数据库系统】数据库安全性控制
数据库安全性控制的常用方法: 用户标识和鉴定 存取控制:自主存取控制和强制存储控制 (定义用户权限,并将用户权限登记到数据字典中 分为自主存取控制和强制存取控制) 视图技术 审计技术 数据加密存储和加 ...
- 数据库安全性 --- 控制
数据库安全性控制 一.用户身份鉴别(Identification & Authentication) 二.存取控制 三.自主存取控制方法 四.授权:授予与回收 1.GRANT: 2.REVOK ...
- 数据库安全性控制(授权:授予与收回)
数据库安全性控制章节敲代码准备工作: 1.更改认证方式,重启sql服务. 2.创建登录名.(安全性-登录名-新建登录名) 3.某个数据库安全性下创建用户. 4.连接. grant语句向用户授予权限,r ...
- (数据库系统概论|王珊)第四章数据库安全性-第二、三、四、五、六节:数据库安全性控制
文章目录 一:用户身份鉴别 (1)静态口令鉴别 (2)动态口令鉴别 (3)生物特征鉴别 (4)智能卡鉴别 二:存取控制 (1)自主存取控制DAC A:基本概念 B:GRANT与REVOKE ①:GRA ...
- 【思维导图总结——数据库系统概论】数据库安全性
数据库安全性 数据库系统概论--数据库安全性 数据库安全性 一.数据库安全性概述 二.数据库安全性控制 (一).计算机的安全模型 (二).数据库安全性控制的常用方法 1.用户身份鉴别与存取控制 2.自 ...
- 重温《数据库系统概论》【第一篇 基础篇】【第4章 数据库安全性】
本篇内容为中国人民大学教授王珊.萨师煊的<数据库系统概论>自学课程的复习笔记,学习视频源于小破站(传送门),对应视频P28-P31,属教材"[第一篇 基础篇]"的&qu ...
- 【数据库系统】第一部分 数据库基础(4) 数据库安全性
本文属于「数据库系统」系列文章之一,这一系列着重于「数据库系统知识的学习与实践」.由于文章内容随时可能发生更新变动,欢迎关注和收藏数据库系统系列文章汇总目录一文以作备忘.需要特别说明的是,为了透彻理解 ...
- 4.0 《数据库系统概论》数据库安全性详解---(存取控制、DACMAC、视图机制、审计Audit....)
文章目录 0.思维导图 1.数据库安全性概述 (1)为什么要研究数据库的安全性? (2)安全标准简介 ① TCSEC/TDI标准的基本内容 ② TCSEC/TDI安全级别划分 2.数据库安全性控制概述 ...
最新文章
- 终端bash美化(FC)
- 让炼丹更玄学!苏大博士生用「天干地支」生成随机种子,项目已开源
- 写一个会导致死锁的线程
- Python程序设计题解【蓝桥杯官网题库】 DAY12-算法训练
- 【渝粤教育】国家开放大学2019年春季 1062文学英语赏析 参考试题
- 无外网情况下RPM方式安装MySQL5.6
- 华中农业大学第五届程序设计大赛网络同步赛解题报告2(转)
- python实现链表的删除_删除链表中的元素,但是只能使用一个指针
- win7 或 win10系统开机启动项设置
- OriginLab学生版激活码续期
- div 中进行左右分离
- style = “color:####“包含的颜色名称对照表
- JS的组成-JS数组方法-JS函数-系统化学习
- scp和rsync的区别
- scipy.sparse.vstack
- Unity案例---愤怒的小鸟
- boston数据集预测房价
- 中国系统java开发面试准备
- Lesson 39
- 绝地求生pubg物理压枪芯片源码+成品
热门文章
- 临沧计算机教试报名,2019下半年临沧小学计算机教师资格证考什么?
- 无锡锡东2021高考成绩查询,2021年无锡高考成绩查询网址,无锡高考成绩查询系统时间安排...
- 镜像电流源特点_9000大型地网变频大电流接地特性测量系统介绍
- sklearn 聚类 实例
- django模版标签和继承
- GAN做图像翻译的一点总结
- 【Windows部署】首次安装的谷歌Chrome浏览器出现【无法打开此页面】问题处理(详细图文步骤)
- 实战 es6_Node.JS实战65:ES6新特性:箭头函数
- shell 工具_shell 脚本加密工具 - shc
- wifi卡慢延迟高_健康生活好助手:华为智能体脂秤 WiFi 版 体验评测