数据库系统安全课程设计报告.doc

上传人:文库蛋蛋多 文档编号:2395546 上传时间:2023-02-17 格式:DOC 页数:16 大小:892KB
返回 下载 相关 举报
数据库系统安全课程设计报告.doc_第1页
第1页 / 共16页
数据库系统安全课程设计报告.doc_第2页
第2页 / 共16页
数据库系统安全课程设计报告.doc_第3页
第3页 / 共16页
数据库系统安全课程设计报告.doc_第4页
第4页 / 共16页
数据库系统安全课程设计报告.doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《数据库系统安全课程设计报告.doc》由会员分享,可在线阅读,更多相关《数据库系统安全课程设计报告.doc(16页珍藏版)》请在三一办公上搜索。

1、中南大学 数据库系统安全课程设计报告学生姓名 郁博文 学 院 信息科学与工程学院 指导老师 李祖德 专业班级 信息安全1302班 完成时间 2015年12月30日 目录第一章 问题描述及设计目标1第二章 系统需求分析2 2.1 需求描述2 2.2 系统功能结构3 2.3 数据流图3第三章 数据库设计4 3.1 全局E-R图4 3.2 数据字典4 3.3 数据库内关系表定义 6 3.4权限表设计 7第四章 数据库实现 8 4.1 数据库创建SQL代码8 4.2存储过程的创建SQL代码9第五章 RBAC应用场境描述18 5.1 场境1描述12 5.2 场境2描述13 5.3 场境3描述14第一章

2、问题描述及设计目标1.1 问题描述随着学校规模的不断扩大,专业、班级、学生的数量急剧增加,有关学生选课的各种信息量也成倍增长,而目前许多高校的学生成绩管理仍停留在复杂的人工操作上,重复工作较多,工作量大,效率低。除此之外,虽然大量数据库实现了基于角色的访问控制功能,却没有对其特征集达成一致。缺乏广为接受的模型,导致了对基于角色的访问控制作用和含义理解的不规范性和不确定性。基于以上情况,有必要设计一个成绩管理系统,为了加强系统的安全性,引入了基于角色的访问控制模型(RBAC),应用该模型可以使不同用户登陆后得到不同的访问权限,不具有某个权限的用户将不能操作该权限,从数据库层进行权限控制有利于提高

3、系统易用性,可扩展性,健壮性以及安全性。本次课程设计就是要设计一个基于RBAC的成绩管理系统,要从底层对用户权限进行控制,而不是在应用层。1.2 设计总目标(1)掌握如何在真实数据库系统中实现基于角色访问控制(RBAC)模型。(1)掌握如何在特定软件系统中基于RBAC模型访问和操控数据库。1.3 设计总要求 在真实数据库系统中实现RBAC模型 开发应用演示界面,演示如何基于RBAC访问某数据库o 演示界面最好是可实际操作的可视化界面,要能演示。o 如果未可视化,必须演示代码运行过程及结果。 数据库依据应用系统的需求而定,应用系统从如下列表中选择。1.4 RBAC简介 基于角色访问控制(RBAC

4、)是当前主流的数据库访问控制技术。RBAC的一般模型如下:第二章 系统需求分析2.1 需求描述 2.1.1 学生成绩管理 负责对学生成绩的录入、删除、更改、查询以及其他功能的管理。 (1)管理员负责学生表、教师表、课程表等基本表的基本数据的录入、删除和更改,并且可修改成绩表的选课情况。 (2)教师、学生分别可以查询及更改教师表、学生表中属于自己的相应数据。(3)教师可以查询及更改成绩表中所教学生的成绩,学生只能查询成绩表中属于自己的成绩。(4)学生可以选课,老师无权修改学生选课结果,可以查看多少学生选了课 2.1.2 用户和权限管理 实现对系统用户以及不同角色的权限的管理 (1)管理员可以创建

5、、删除系统用户 (2)用户可以在登录系统后修改自己的相应资料 (3)每个用户在创建时须赋于相应角色 (4)每个角色在被创建时可以赋于相应权限,其所具有的权限可以修改 (5)角色创建后可以修改、删除 (6)默认的系统角色:管理员 教师 学生2.2 系统功能结构大学学生成绩管理系统成绩管理权限管理用户管理成绩更改管理成绩查询管理成绩录入管理修改密码权限分配管理操作管理角色管理角色分配管理数据库系统结构图2.3 数据流图第三章 数据库设计3.1 全局E-R图全局E-R图如下:3.2 数据字典 3.2.1 表单信息数据库表名说明userinfo用户表role角色表user_role用户角色映射表per

6、mit权限表role_permit角色权限映射表student学生成绩信息表teacher教师信息表course课程信息表temp临时信息表 3.2.2 各表信息表名:usersuserid用户IDusername用户姓名userpwd用户密码表名:rolerolerid角色IDrolename角色名称表名:user_roleuserid用户IDroleid角色ID表名:permitpermitid权限IDaction执行动作tablename对象表/视图object对象列名表名:role_permitroleid角色IDpermitid权限ID表名:studentsno学号sname姓名cn

7、o课程编号grade学生成绩表名:teachertno教师编号tname姓名cno课程编号userid用户id表名:coursecno课程编号course课程名sno学生编号tno教师编号3.3 数据库内关系表定义数据库内关系图如下:用户信息(用户ID,用户名,用户密码)用户-角色(用户ID,角色ID)角色(角色ID,角色名)角色权限(角色ID,权限ID)权限(权限ID,动作,对象,表名)学生成绩(学号,课程号,姓名,成绩)选课(课程号,课程名,学号,教师号)教师(教师号,姓名,课程号)加下划线的表示为主键。3.4权限表设计角色表设计角色权限表设计第四章 数据库实现4.1 数据库创建SQL代码

8、建立系统注册成员的信息表,包括用户唯一的账号,密码,姓名:建立角色信息表:建立用户角色联系的表:建立角色权限联系的表:建立权限信息表:建立学生成绩表,包括学号,姓名,课程号,成绩:建立教师表,包括教师号,姓名,课程名:建立选课表:建立临时表,用于存储某个用户的权限:4.3 存储过程的创建SQL代码用户注册:从临时表得到数据,判断用户是否有此权限::查看成绩:将某用户数据放入前面创建的一张临时表temp中,调用该存储过程可知用户有哪些权限:往student表添加一行数据,即录入成绩,由前面的权限分配可知只有教师管理员有这权限:学生选课:用户角色分配:角色权限分配:安排教师教授某个课程,只有管理员

9、有这权限删除用户:删除成绩:删除权限:修改密码:第五章 RBAC应用场境描述5.1 场景1:教务处分配教学任务-学生选课-老师登记分数-学生查成绩1.教务处分配教学任务exec distributeCourse 3,1,李祖德,12.学生选课exec selectOwnCourse 1,1,软件体系结构,1,13.老师登记分数exec setGrade 3,1,郁博文,974.学生查成绩exec getGrade 1,1,郁博文,1,软件体系结构5.2 场景2:新建学习委员角色,并给他登记分数的权利1.注册用户exec register 4,学委,12.分配角色exec distributeRole 4,43.分配权力exec distributePermit 4,205.3 场景3:用户密码遗忘,管理员修改1.修改密码exec alterPwd 1,2,1

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

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号