数据库 实验8 数据控制(安全管理)

合集下载

实验--数据库安全性管理

实验--数据库安全性管理

北华航天工业学院《数据库原理与应用》实验报告报告题目:_______ 数据库安全性管理__________ 作者所在系部:计算机作者学号:201322542作者所在专业:—软件工程____________________作者姓名:魏志鹏指导教师姓名:贾振华完成时间:2015.5.20北华航天工业学院教务处制数据库安全性管理1、2理解数据库的安全性机制;掌握SQL Server 2008的验证模式、登录管理、用户管理、角色管理以及权限管理;_ 、实验内容(一)附加上次实验所创建的数据库“db_Library ”,并回顾该库的数据表信息。

(二)设置SQL Server的安全验证模式,并以两种方式尝试登录。

(三)登录账户管理1、在当前Windows系统中新建一个用户Test,密码为secret,然后以管理员身份登录SQL Server,并将该系统用户添加为登录用户,并赋予系统管理员的权限。

然后以该用户身份登录SQL Server。

2、使用SQL语句创建一个SQL Server登录账户,账户名为你的名字拼音,密码自定义。

创建完成后,以该账户来进行登录。

3、使用SQL语句来修改上述登录账户的密码。

4、禁用上述登录账户连接SQL Server,并进行验证。

5、设置上述登录账户为数据库创建者的权限。

(四)数据库用户管理1、使用SSMS添加db_Library数据库用户User1,其登录账户为上题所创建的Windows账户,使用默认dbo架构。

2、使用SQL语句添加db_Library数据库用户User2,其登录账户为上题所创建的SQL Server 登录账户,使用默认dbo架构,并赋予该用户能够运行Select语句的权限。

(五)权限管理1、使用SSMS将创建数据表和创建视图的权限授予User2。

2、使用SQL语句将对db_Library数据库中图书信息表的查询、插入、以及对书名和作者列的修改权限授予用户User2。

数据控制_实验报告

数据控制_实验报告

一、实验目的1. 理解数据控制的基本概念和原理;2. 掌握数据控制技术的应用方法和技巧;3. 培养实际操作能力和分析问题、解决问题的能力。

二、实验环境1. 操作系统:Windows 102. 数据库管理系统:MySQL 5.73. 开发工具:Visual Studio 20194. 实验数据:学生信息表(包括姓名、性别、年龄、班级、成绩等字段)三、实验内容1. 数据库设计2. 数据插入与查询3. 数据更新与删除4. 数据完整性控制5. 数据并发控制四、实验步骤1. 数据库设计(1)创建数据库:打开MySQL,创建一个名为“DataControl”的数据库。

(2)创建表:在“DataControl”数据库中创建一个名为“student”的表,包含以下字段:字段名 | 类型 | 说明--- | --- | ---id | int | 学生ID(主键)name | varchar(50) | 学生姓名gender | varchar(10) | 学生性别age | int | 学生年龄class | varchar(50) | 学生班级score | float | 学生成绩2. 数据插入与查询(1)插入数据:使用SQL语句向“student”表中插入数据。

INSERT INTO student (id, name, gender, age, class, score) VALUES (1, '张三', '男', 20, '计算机科学与技术1班', 90.5);INSERT INTO student (id, name, gender, age, class, score) VALUES (2, '李四', '女', 21, '计算机科学与技术2班', 85.0);INSERT INTO student (id, name, gender, age, class, score) VALUES (3, '王五', '男', 20, '计算机科学与技术3班', 92.0);(2)查询数据:使用SQL语句查询“student”表中的数据。

数据库原理与技术实验报告

数据库原理与技术实验报告

数据库原理与技术实验报告
一、实验目的
本次实验的主要目的是了解和学习数据库原理与技术,具体要求是:
1.熟悉数据库系统的基本概念;
2.理解数据库管理系统(DBMS)的核心功能;
3.掌握数据库系统的创建,维护和应用技术;
4.掌握基于SQL查询语言(SQL)的SQL语句的使用;
5.学习SQL语言的基本知识;
6.学习和应用数据库的实用技术;
7.掌握数据库的安全保护技术;
8.熟悉数据的事务处理;
9.掌握数据的并发控制等。

二、实验环境
本次实验所使用的系统环境为Oracle Database,版本为11g。

三、实验内容
1.概念部分:
(1)数据库概念:数据库概念主要是指数据库的概念、特点、应用领域、数据库结构与模式等;
(2)数据库管理系统:数据库管理系统(DBMS)是一种综合的数据管理软件,它有助于保护组织内的数据,并帮助实现全面的数据管理;
(3)数据库应用:数据库应用是一种以数据库管理系统为基础的应用程序,它主要是用来收集、组织、存储、操作和检索数据,以满足组织内的信息需要;
(4)SQL查询语言:SQL查询语言(SQL)是一种关系型数据库管理系统的标准化数据库查询语言。

XX学院教学空间智慧化管理改革项目建设意见

XX学院教学空间智慧化管理改革项目建设意见

XX学院教学空间智慧化管理改革项目建设意见一、项目概况XX学院实验(实训)室建设项目通过智慧化教学设施建设,全面提升教务管理水平,使教学资源分布优化、教学督导便捷化、实验室管理科学化,满足更高要求的职业教学环境。

本次项目建设在充分融合已有系统基础上扩充新增功能,集成现有软硬件设备,对采购人教务管理进行全面的数字化改造。

二、项目建设方案(一)整体设计思路本次改革将基于学校现有教务管理业务系统架构,本着打通现有孤岛系统、新建部分数字化教务管理业务的思路。

建立线上业务办理模式,对教务管理业务进行全方位数字化改革。

具体包括以下几个方面:1.普通教室和实验室改造:对现有普通教室和实验室进行硬件改造,安装监控和拾音器等设备,进行授课情况的图像和声音采集。

配合巡课督导管理软件,实现在线巡课和远程督导评价。

2.管理数字化改革:提升学校教务各业务流程线上办公、线上审批、数据统计自动生成。

(1)新建管理系统包括:巡课督导系统(包含硬件设备部署、软件开发)、实习管理系统、教学与实验室建设项目管理系统、教材管理系统、竞赛与证书管理系统、专业(群)建设与评价管理系统、专业资源库管理系统;(2)原有教务系统升级。

3.系统运行模式:各个系统纳入数字校园平台统一管理,采用开放式接口,方便后续功能延展。

系统采用B/S架构,采用本地部署+云部署。

管控平台数据展示可支持PC端、移动端、9-109大屏、智慧教室大屏。

用户可通过电脑端、手机端钉钉、微信端、APP(安卓)、等方式操作业务功能。

(二)建设内容建设巡课督导系统(包含硬件设备部署、软件开发)、实习管理系统、教学与实验室建设项目管理系统、教材管理系统、竞赛与证书管理系统、专业(群)建设与评价管理系统、教务系统软件升级、专业资源库管理系统。

1三、建设清单234567891011121314151617181920212223242526272829303132四、建设集成要求;1.硬件安装:包含机柜、6类网线、光纤等学校网络要求的辅材及人工费用。

数据库实验-数据控制(安全性和完整性)

数据库实验-数据控制(安全性和完整性)

数据库原理及应用实验报告实验四实验题目:数据控制(安全性和完整性)实验类型:验证_______________________________ 实验地点:软件实验室二系班级:计科系***班_____________________姓名:***______________________学号:***______________________2013年11月10日一、实验项目名称:数据控制(安全性和完整性)二、实验目的和任务:理解SQL Server的用户与权限管理机制,通过企业管理器创建用户,并给定的用户分配权限,并掌握数据库完整性概念,实现实体、参照和自定义约束。

三、实验内容:1.创建数据库ycudata,它包含两个关系模式:职工(职工号,姓名,年龄,职务,工资,部门号),部门(部门号,名称,经理名,地址,电话号)2.创建用户sqlaa,它对关系模式职工具有查询和删除权限3.创建用户sqlbb,它对关系模式职工和部门具有所有的权限(所有权限的表达)4.对该用户sqlcc授予查找职工关系模式,更新部门关系模式的权限,同时可以将该权限进行传播,并将权限传播给用户sqlaa5.创建用户sqldd,它对关系模式职工修改表结构的权限6.收回用户sqlcc的相应权限,了解sqlaa的权限情况7.创建角色role1,它的权限是对部门关系模式进行查、插、改、删,将用户sqldd 和sqlcc归于角色role1,查看用户的权限8.定义部门和职工关系模式的主键,外键,定义职工年龄不超过60岁,部门名称必须取值唯一以下为选做内容:1.定义用户sqlee,具有从每个部门职工中查看最高工资,最低工资和平均工资的权力,但他不能查看每个人的工资2.在对关系模式定义外键时,分别设置无行动和级连两种方式,并进行数据插入四、实验步骤及截图:1、打开SQL Server 2005,建立连接。

2、创建数据库ycudata,它包含两个关系模式:职工(职工号,姓名,年龄,职务,工资,部门号),部门(部门号,名称,经理名,地址,电话号)(1)创建职工关系模式:(2)创建部门关系模式:3、创建用户sqlaa,它对关系模式职工具有查询和删除权限(1)创建登录名为work的用户:打开安全性,右击登录名,然后新建一个登录名,点击确定。

数据库安全与管理实验报告

数据库安全与管理实验报告

数据库安全与管理实验报告实验报告课程名称数据库原理实验项目名称实验6:数据库安全管理班级与班级代码实验室名称(或课室)专业计算机科学与技术任课教师学号:实验日期: 2019年 5月27 日广东财经大学教务处制姓名实验报告成绩指导教师(签名) 2019 年月日说明:指导教师评分后,实验报告交院(系)办公室保存。

实验六:数据库安全管理1.实验目的及要求:目的:通过本次实验的学习与实践,应重点掌握用户创建和授权方法,了解Microsoft SQL Server 2019数据库备份的基本策略和方法,掌握使用企业管理器和Transact-SQL 命令进行数据库备份和恢复的方法。

要求:理解和体会数据库安全性的内容,加强对DBMS 功能的认识;学会创建登陆用户并向其授予数据库访问权限;熟练对用户权限的授予和收回操作;学会使用企业管理器和使用Transact-SQL 命令两种方法对数据库进行备份和恢复操作。

2.实验器材和实验环境:计算机,网络环境,投影设备。

实验相关软件:Window 8.1、SQL Server 2019。

实验准备:实验一、实验二、实验三、实验四和实验五。

3.实验内容和步骤:本实验通过使用Transact-SQL 语句和“企业管理器”两种方法,对数据库进行用户的创建和权限管理以及数据库的备份和恢复。

3.1 使用企业管理器进行用户的创建和权限管理利用企业管理器创建一个名为“MyUser ”的用户,使它可以对“教学管理”数据库中的“学生档案表”只有查询的权限,没有删除、插入、更改等维护权限。

然后以该登录名通过查询分析器登录到SQLSever 服务器,对“学生档案表”进行增、删、改以及查询操作,以检验用户权限。

第一步:“安全性”->“登录”,单击右键选择“新建用户名”。

第二步:输入登录账号名“MyUser ”,登录口令为空,选择SQL Sever 身份验证,选择数据库为“教学管理”。

第三步:打开“用户映射”选项卡,设置“MyUser ”账户可以访问的数据库为“教学管理”,数据角色为“public ”。

数据库实验报告 数据控制(完整性部分) 实验四

数据库实验报告  数据控制(完整性部分)  实验四

题目:实验4 数据控制(完整性部分)姓名:* * * 日期:2012年4月26日一、实验目的熟悉通过SQL对数据进行完整性控制。

完成作业的上机练习。

二、实验平台在实验1中安装的RDBMS及其交互工具。

三、实验内容和要求使用SQL对数据进行完整性控制(三类完整性、check短语、constraint字句、触发器)。

用实验证实,当操作违反了完整性约束条件时,系统是如何处理的。

根据以下要求认真填写实验报告,记录所有的实验用例。

四、实验报告1、三类完整性,check短语。

关系模型的实体完整性在create table 中用primary key 定义。

定义主码的方法分为定义为列级约束条件和定义为表级约束条件两种。

对多个属性构成的码只能用表级约束条件。

习题5的第6题,要求定义实体完整性(主码)、参照完整性(外码)、check语句,用户定义的完整性(not null)。

代码如下:create table 职工( Dno numeric(4) primary key,Dname char(20) unique,Dbossname char(20),Dnum numeric(4));create table职工( Eplno smallint primary key,Eplname char(20) not null,Eplage smallint check (Eplage<=60),job char(9),Sal numeric(7,2),Dno numeric(4),foreign key(Dno)references部门(Dno) );2、constraint 字句完整性约束命名字句:create table student(SNO NUMERIC(5)CONSTRAINT C1 CHECK (SNO BETWEEN 90000 AND 99999), SNAME V ARCHAR(20)CONSTRAINT C2 NOT NULL,SAGE NUMERIC(3)CONSTRAINT C3 CHECK (SAGE < 30),SSEX V ARCHAR(2)CONSTRAINT C4 CHECK (SSEX IN ('男','女')), CONSTRAINT StudentKey PRIMARY KEY(SNO));1、触发器(1)创建触发器:(after 行级触发器)create trigger insert_or_update_Sal on 职工after insert as update 职工set Sal=12000 where (job='软件工程师')and (Sal<12000)激活触发器:insertinto职工values('24','小露','21','软件工程师','10000','8')(2)插入触发器:create trigger insert_0table on 职工for insertasdeclare @Eplno smallintselect @Eplno=Eplno from insertedupdate 职工set job='软件工程师' where Eplno=@Eplno激活触发器如下图所示:(3)创建触发器:(instead 表级触发器)create trigger J_updateon Jinstead of updateasbeginraiserror('J表的数据不能被修改!',16,10)end激活触发器:update Jset Jname='大众'where Jno='J1'执行顺序为:执行SQL“update”语句—>执行触发器删除触发器:代码:drop trigger J_update;执行结果如下:3、违反完整性约束条件时,系统处理如下:4、实验小结:(1) 遇到的问题:创建before行级触发器时出现问题create trigger insert_or_update_Salbefore insert or update on 职工for each rowas beginif(new.job='软件工程师')and (new.Sal<12000) then new.Sal:= 12000;end if;end;解决方案:待解决??。

数据库系统实验报告 实验三 数据控制(安全性)

数据库系统实验报告 实验三 数据控制(安全性)

可得到最后界面如下:3.以sa用户(DBA)登录,运行教材上4.2.4中的例1~例7对7个新用户授权。

每运行一个例子后,以相应的用户名重新登录,验证新用户是否具有授予的权限。

注:SQL Server中的权限授予与回收命令与教材例题上的细节有所不同,这里只写出在SQL 2000中的权限授予与回收命令语句。

【例1】把查询student表的权限授给用户u1。

GRANT SELECTTO u1;执行完授权语句后,用u1登录,验证其是否已有查询权利。

重新连接数据库,登录界面如下:用u1登录后,执行一条SELECT命令,显示了查询结果如下所示,说明u1已具有了对student表的查询权限。

【例2】把对student表和course表的全部操作权限授予用户u2和u3。

GRANT ALL PRIVILEGESON studentTO u2,u3;GRANT ALL PRIVILEGESTO u2,u3;执行完授权语句后,用u2登录,验证其是否已有所有权利。

用u2登录后,执行两条SELECT命令,显示了查询结果如下所示,说明u2已具有了对student表的查询权限,再执行INSERT命令,DELETE命令,UPDATE 命令,同样可得到结果。

说明u2已具有了对student表和SC表的所有权限。

同u2一样,u3也已具有了对student表和SC表的所有权限。

【例3】把对表SC的查询权限授予所有的用户。

GRANT SELECTON SCTO PUBLIC;【例4】把查询student表和修改学生学号的权限授予用户u4。

GRANT UPDATE(Sno),SELECTON studentTO u4;执行完授权语句后,用u4登录,验证其是否已有相应权利。

用u4登录后,执行一条SELECT命令和一条UPDATE命令,显示了查询结果如下所示,说明u4已具有了对student表的查询权限,和对学生学号的修改权限。

【例5】把对表SC的insert权限授予u5用户,并允许将此权限再授予其他用户。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验8 数据控制(安全性)
实验8.1 用户标识与鉴别
一、实验目的
通过实验加深对数据安全性的理解,并掌握SQL Server中有关用户登录认证及管理的方法。

二、实验内容与要求
1)在SQL Server企业管理器中,设置SQL Server的安全认证模式
2)创建使用Windows身份验证的登录账号WinUser
3)创建使用SQL Server身份验证的登录账号SQLUser,设置可访问的数据库“教学管理”或“SPJ”
4)为登录账号WinUser创建访问local实例中数据库“教学管理”的用户账号
5)为登录账号SQLUser创建访问local实例中所有数据库的用户账号
6)在SQL Server中建立一个名为“李勇”的登录用户,数据库用户
7)演示在SQL Server 中取消“李勇”这个用户
8)在school数据库中创建帐号“王二”,密码是123,并向他授予数据库访问权。

9)撤销“王二”这个帐号。

实验8.2 自主存取控制
一、实验目的
通过实验加深对数据库存取控制机制的理解,熟悉SQL的数据控制功能,能够使用SQL语句来向用户授予和收回权限,进行权限管理,熟悉SQL Server 中的角色管理。

二、实验内容与要求
(1)授予用户WINUser可以在数据库“教学管理”中创建视图和表
SP_ADDROLE WINUSER
Use 教学管理
Go
GRANT CREATE VIEW,CREATE TABLE
TO WINUSER
(2) 不允许用户SQLUser在数据库“教学管理”中创建视图、表,但允许其他操作
Use 教学管理
go
GRANT ALL PRIVILEGES TO SQLUSER
REVOKE CREATE VIEW,CREATE TABLE FROM SQLUSER
或者
Use 教学管理
Go
GRANT ALL PRIVILEGES TO SQLUSER
DENY CREATE TABLE,CREATE VIEW,CREATE TABLE TO SQLUSER
(3)分别通过SQL Server企业管理器和SQL 的数据控制功能,设置和管理数据操作权限。

对新建用户李勇授予SPJ数据库中S表的select权限。

GRANT SELECT
ON TABLE S
TO 李勇
(4) 通过SQL Server企业管理器,实现对SQL Server的用户和角色管理。

具体是创建一个数据库角色OP_of_S,它代表一个可以对S表进行操作的操作员,对角色的权限进行设置,并将用户“李勇”、“web”添加到这个角色中。

该实验体现角色应用灵活高效的特点。

(5) 以SA登录查询分析器,输入下列代码并执行:
EXEC sp_addlogin ‘李勇’, ‘’;
USE SPJ
EXEC sp_grantdbaccess ‘李勇’, ‘happyrat’;
GRANT select,insert,update ON S TO public;
GRANT ALL ON S TO happyrat;
REVOKE select ON S TO happyrat;
DENY update ON S TO happyrat,
(6) 针对(5)回答下列问题:
第1行代码新建了一个名为李勇的登录帐户,“”是什么?“李勇”这个登录帐户将映射为数据库用户名happyrat,为什么?将是哪个数据库的用户。

分别解释第4~7行代码的作用。

若以帐户李勇登录服务器,能否对SPJ数据库的表S进行select和update操作,为什么?
(1)‘’是登录的密码
(2)EXEC sp_grantdbaccess ‘李勇’, ‘happyrat’;这行代码授予了李勇这个登陆账号访问该数据库的权限,并且happrat是李勇的一个成员,所以能映射!这是SPJ数据库的用户
(3)GRANT select,insert,update ON S TO public;这个代码是将S表的选择,插入,更新的权限授予public
GRANT ALL ON S TO happyrat;
这个代码是将S表的所有权限授予happyrat
REVOKE select ON S TO happyrat;
这个代码是移去happyrat中权限中的选择权限
DENY update ON S TO happyrat,表示happyrat对表S拥有除更新外的所有操作
实验8.3 视图机制在自主存取控制上的应用
一、实验目的
通过实验加深对数据安全性的理解,熟悉视图机制在自主存取控制上的应用。

二、实验内容与要求
(1)创建在SPJ表上的视图SPJ_View,授权给三建项目(JNO=J1)的负责人数据库用户李勇,让他具有视图上的select权限。

CREATE SPJ_VIEW
AS
SELECT *
FROM SPJ
GRANT SELECT
ON SPJ_VIEW
TO JNO IN
(
SELECT JNO
FROM SPJ
WHERE NAME=’李勇’
)
(2)对视图上的SNO属性列的update权限授予用户李勇,让他可以修改供应商,但是不能对其他属性进行修改。

GRANT UPDATE(SNO)
ON SPJ_VIEW
TO 李勇
(3)在数据库School上创建用户“王二”,在students表上创建视图grade2000,将年级为2000的学生元组放入视图。

CREATE ROLE 王二;
CREATE VIEW GRADE2000
AS
SELECT *
FROM SCHOOL
WHERE GADE=’2000’
(4)授予用户王二在视图grade2000的select权限。

GRANT SELECT ON GRADE2000 TO 王二。

相关文档
最新文档