中南大学 数据库系统安全课程设计报告Word格式.docx
- 文档编号:16114800
- 上传时间:2022-11-20
- 格式:DOCX
- 页数:35
- 大小:728.29KB
中南大学 数据库系统安全课程设计报告Word格式.docx
《中南大学 数据库系统安全课程设计报告Word格式.docx》由会员分享,可在线阅读,更多相关《中南大学 数据库系统安全课程设计报告Word格式.docx(35页珍藏版)》请在冰豆网上搜索。
4.2关系表(及相关视图)创建SQL代码………………………8
4.3存储过程、触发器等的创建SQL代码………………………14
第五章RBAC应用场境描述…………………………………18
5.1场境1描述………………………………………………18
5.2场境2描述………………………………………………20
5.3场境3描述………………………………………………22
5.4场境4描述………………………………………………23
第六章心得体验……………………………………………26
第七章总结…………………………………………………26
第一章问题描述及设计目标
1.1问题描述
随着学校规模的不断扩大,专业、班级、学生的数量急剧增加,有关学生选课的各种信息量也成倍增长,而目前许多高校的学生成绩管理仍停留在复杂的人工操作上,重复工作较多,工作量大,效率低。
除此之外,虽然大量数据库实现了基于角色的访问控制功能,却没有对其特征集达成一致。
缺乏广为接受的模型,导致了对基于角色的访问控制作用和含义理解的不规范性和不确定性。
基于以上情况,为了解决学生成绩查询和管理上遇到的实际困难,设计了一套基于RBAC模型的大学学生成绩管理系统,使学生成绩的录入和管理更加信息化、智能化,使成绩的查询更加高效,系统价值有了更高的体现。
1.2设计总目标
(1)掌握如何在真实数据库系统中实现基于角色访问控制(RBAC)模型。
(1)掌握如何在特定软件系统中基于RBAC模型访问和操控数据库。
1.3设计总要求
∙在真实数据库系统中实现RBAC模型
∙开发应用演示界面,演示如何基于RBAC访问某数据库
o演示界面最好是可实际操作的可视化界面,要能演示。
o如果未可视化,必须演示代码运行过程及结果。
∙数据库依据应用系统的需求而定,应用系统从如下列表中选择。
1.4RBAC简介
基于角色访问控制(RBAC)是当前主流的数据库访问控制技术。
RBAC的一般模型如下:
第二章系统需求分析
2.1需求描述
2.1.1学生成绩管理
负责对学生成绩的录入、删除、更改、查询以及其他功能的管理。
(1)管理员负责学生表、教师表、课程表等基本表的基本数据的录入、删除和更改,并且可修改成绩表的选课情况。
(2)教师、学生分别可以查询及更改教师表、学生表中属于自己的相应数据。
(3)教师可以查询及更改成绩表中所教学生的成绩,学生只能查询成绩表中属于自己的成绩。
2.1.2用户和权限管理
实现对系统用户以及不同角色的权限的管理
(1)管理员可以创建、删除系统用户
(2)用户可以在登录系统后修改自己的相应资料
(3)每个用户在创建时须赋于相应角色
(4)每个角色在被创建时可以赋于相应权限,其所具有的权限可以修改
(5)角色创建后可以修改、删除
(6)默认的系统角色:
管理员
教师
班长
学生
2.2系统功能结构
权限管理
用户管理
角色查询管理
成绩录入管理
权限分配管理
操作管理
角色管理
角色分配管理
数据库系统结构图
2.3数据流图
界面显示模块
用户操作用户操作信息
合法数据信息
传输数据
数据库
数据库连接池
查询结果信息数据操作信息
第三章数据库设计
3.1全局E-R图
全局E-R图如下:
3.2数据字典
3.2.1表单信息
数据库表名
说明
users
用户表
roles
角色表
user_role
用户角色映射表
Permissions
权限表
role_permission
角色权限映射表
Student
学生信息表
Teacher
教师信息表
Course
课程信息表
SCT
成绩表
LoginInfo
登录用户信息表
3.2.1各表信息
表名:
userid
用户ID
username
用户姓名
userpassword
用户密码
rolerid
角色ID
rolename
角色名称
roleid
Pid
权限ID
Operation
执行动作
objtable/view
对象表/视图
objcolumn
对象列名
Sno
学号
Sname
姓名
Ssex
性别
Sage
年龄
Sdept
专业
Sentertime
入学时间
Sclass
班级
Tno
教师编号
Tname
Tsex
Tage
Cno
课程编号
Cname
课程名
Ccredit
学分
Grade
成绩
CURRENTUSER
当前登录用户ID
3.3数据库内关系表定义
数据库内关系图如下:
第四章数据库实现
4.1数据库创建SQL代码
USE[master]
GO
CREATEDATABASE[StudentGrade]ONPRIMARY
(NAME=N'
StudentGrade'
FILENAME=N'
D:
\ProgramFiles\MicrosoftSQLServer\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\StudentGrade.mdf'
SIZE=2304KB,MAXSIZE=UNLIMITED,FILEGROWTH=1024KB)
LOGON
StudentGrade_log'
\ProgramFiles\MicrosoftSQLServer\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\StudentGrade_log.LDF'
SIZE=832KB,MAXSIZE=2048GB,FILEGROWTH=10%)
ALTERDATABASE[StudentGrade]SETCOMPATIBILITY_LEVEL=100
IF(1=FULLTEXTSERVICEPROPERTY('
IsFullTextInstalled'
))
begin
EXEC[StudentGrade].[dbo].[sp_fulltext_database]@action='
enable'
end
4.2关系表(及相关视图)创建SQL代码
Student表的建立:
CREATETABLE[dbo].[Student](
[Sno][varchar](20)NOTNULL,
[Sname][varchar](20)NULL,
[Ssex][char]
(2)NULL,
[Sage][smallint]NULL,
[Sdept][varchar](20)NULL,
[Sentertime][date]NULL,
[Sclass][varchar](50)NULL,
PRIMARYKEYCLUSTERED
(
[Sno]ASC
)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY]
)ON[PRIMARY]
Teacher表的建立:
CREATETABLE[dbo].[Teacher](
[Tno][varchar](9)NOTNULL,
[Tname][varchar](20)NULL,
[Tsex][char]
(2)NULL,
[Tage][smallint]NULL,
[Tno]ASC
Course表的建立:
CREATETABLE[dbo].[Course](
[Cno][varchar](4)NOTNULL,
[Cname][varchar](40)NULL,
[Ccredit][smallint]NULL,
[Cno]ASC
SCT表(成绩表)的建立:
CREATETABLE[dbo].[SCT](
[Grade][smallint]NULL,
CONSTRAINT[PK__SCT__8AC4525145F365D3]PRIMARYKEYCLUSTERED
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 中南大学 数据库系统安全课程设计报告 中南 大学 数据库 系统安全 课程设计 报告
![提示](https://static.bdocx.com/images/bang_tan.gif)