数据库实验报告--安全性实验

这篇具有很好参考价值的文章主要介绍了数据库实验报告--安全性实验。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、 实验目的

(1)理解SQL Server验证用户身份的过程,掌握设置身份验证模式的方法。

(2)理解登录账号的概念,掌握混合认证模式下登录账号的建立与取消方法。

(3)掌握混合认证模式下数据库用户的建立与取消方法。

(4)掌握数据库用户权限的设置方法。

(5)理解角色的概念,掌握管理角色技术

二、实验内容

(1)在企业管理器中打开“SQL Server属性(配置)”对话框,设置身份验证模式为“SQL Server和Windows”模式(即混合模式)。

(2)创建、管理数据库服务器的登录账号。

① 用T-SQL语句创建、查看、删除登录账号。

② 在企业管理器中使用A.5.2节中介绍的方法创建一个登录账号。

(3)创建、管理数据库用户。用户是基于数据库的名称是和登录账号相关联的。只有DBA和数据库所有者才有执行系统存储过程sp_granddbaccess的权力。

① 用T-SQL语句创建、查看、删除数据库用户。

② 使用企业管理器创建、查看、删除数据库用户。

(4)管理用户权限。用户权限的管理可以使用企业管理器,也可以使用T-SQL语句。分别使用企业管理器和T-SQL语句完成第4章习题中的用户管理和用户权限管理。

(5)创建、管理数据库角色。

三、实验环境

SQL Server 2019

四、实验前准备

基于前三次实验建立的数据库和表

五、实验步骤及实验结果

1. 设置身份验证模式为“SQL Server和Windows”模式

如下图:
数据库实验报告--安全性实验

2. 创建、管理数据库服务器的登录账号。

① 用T-SQL语句创建、查看、删除登录账号。

创建一个名为student、密码为111、使用的默认数据库为JWGL的登录账号。如下图:

数据库实验报告--安全性实验

查看登录账号:
数据库实验报告--安全性实验
删除登录账号
数据库实验报告--安全性实验
② 在企业管理器中创建一个登录账号。

在企业管理器中, 展开要在其中创建新登录名的服务器实例的文件夹, 即图中的根目录. 展开【安全性】文件夹,右键单击【登录名】, 选择【新建登录名】.

数据库实验报告--安全性实验
接着输入登录名, 以SQL Server身份验证为例, 输入密码, 下面的三个选项中我取消了“用户在下次登录时必须更改密码” 这一项, 再点击确定.

数据库实验报告--安全性实验
就可以看到刚刚新建的登录名student了.

数据库实验报告--安全性实验

3. 创建、管理数据库用户

用户是基于数据库的名称是和登录账号相关联的。只有DBA和数据库所有者才有执行系统存储过程sp_granddbaccess的权力。

① 用T-SQL语句创建、查看、删除数据库用户。

为数据库JWGL创建一个用户user1, 该用户登录SQL Server服务器的账号为wang, 登录密码为secret.

数据库实验报告--安全性实验
查看数据库用户

数据库实验报告--安全性实验
查看结果如下:

数据库实验报告--安全性实验
删除数据库中的wang用户

数据库实验报告--安全性实验

② 使用企业管理器创建、查看、删除数据库用户。

为数据库JWGL创建一个用户user2,该用户登录SQL Server服务器的账号为zheng,登录密码为123456。

第一步: 使用上述创建登录用户的方法创建一个登录名为zheng, 登录密码为123456的用户.

第二步: 在展开数据库【JWGL】,右键点击【安全性】,选择【新建】–>【用户】.

数据库实验报告--安全性实验

输入用户名为user2, 登录名选择刚才创建的zheng登录用户, 点击确定.

数据库实验报告--安全性实验
就可以看到刚刚创建的数据库用户user2了

数据库实验报告--安全性实验

要想删除数据库用户, 右键点击user2, 点击删除即可

数据库实验报告--安全性实验

4. 管理用户权限。

用户权限的管理可以使用企业管理器,也可以使用T-SQL语句。完成第4章习题中的用户管理和用户权限管理。

习题6.对下列两个关系模式:

学生(学号, 姓名, 年龄, 性别, 家庭住址, 班级号)

班级(班级号, 班级名, 班主任, 班长)

使用grant语句完成下列授权功能:

a. 授予用户U1对两个表的所有权限,并可给其他用户授权。

首先按上面的方法建立两个用户U1和U2, 再执行sql语句

数据库实验报告--安全性实验
b. 授予用户U2对学生表具有查看权限,对家庭住址具有更新权限。

数据库实验报告--安全性实验

c. 将对班级表查看授权授予所有用户。

数据库实验报告--安全性实验
d. 将对学生表的查询、更新权限授予角色R1。

数据库实验报告--安全性实验

e. 将角色R1授予用户U1,并且U1可继续授权给其他角色。

使用书上的语句报错(会在第六点详细说明), 所以我用了alter语句

数据库实验报告--安全性实验

创建、管理数据库角色。

若一个小组共3个成员,他们对JWGL具有相同的操作权限,具体权限为对Student、Course表只能进行数据查询;对SC表可以进行查询、修改、删除和插入。

可以创建一个角色(如role),给该角色赋予相应的权限,然后给每个成员建立一个登录账号(如分别为lin,wang,zheng),并将每个成员的登录账号添加为数据库角色role的成员。

使用sql语句:

第一步: 创建一个role角色并赋予上述操作权限(对Student,Course表只能进行数据查询, 对SC表可以进行查询,修改,删除和插入)

数据库实验报告--安全性实验
第二步: 创建3个成员, 给每个成员建立一个登录账号(lin, wang, zheng), 并且将每个成员的登录账号添加为数据库角色role的成员.

数据库实验报告--安全性实验
第三步: 删除角色role, 删除时必须保证它不含任何数据库用户, 即要先删除其下的所有成员

数据库实验报告--安全性实验
然后删除角色role

数据库实验报告--安全性实验
使用企业管理器:

第一步: 新建三个登录名分别为lin, wang, zheng的登录用户(此时选择不带登录名的SQL用户)

数据库实验报告--安全性实验
第二步: 新建一个角色role, 并且给此角色添加刚才创建的三个用户作为角色成员

数据库实验报告--安全性实验

第三步: 因为要让成员对Student, Course表只能进行数据查询, 对SC表可以进行查询、修改、删除和插入

首先选择一张表, 右键点击选择属性

数据库实验报告--安全性实验

因为已经将三个成员的登录账号添加为角色role的成员,所以此时只需要给role授予相应的权限即可.如图所示(这里以SC表为例,Student, Course表也是同样), 用户或角色选择role, 再勾选需要授予的权限即可.

数据库实验报告--安全性实验

评价分析及心得体会

遇到的问题:

(1) 在编写授权语句时, 按照书上的原封不动的敲就会显示报错.书上使用的都是2008版, SSMS已经不怎么兼容了, 所以只需要把table删掉即可, 并且授权每次只可以授权一张表, 不可以多张, 如下图所示:

数据库实验报告--安全性实验
改成下图这样即可

数据库实验报告--安全性实验

(2) 将角色R1授予用户U1时, 使用书上语句出现错误

数据库实验报告--安全性实验

采用alter语句, 结果成功执行

数据库实验报告--安全性实验

按照属性查看角色R1的成员, 可以找到.

数据库实验报告--安全性实验
通过这次实验学习到了登录名和用户名的概念及其之间的关系, 数据库登陆名和数据库用户名是有差别的,在一个数据库中是一一相对应的关系。
登录名是访问 SQL Server 的通行证,是服务器级别的对象,登录到 SQL Server 之后还要创建数据库用户才能访问数据库资源;
创建数据用户的过程实际上就是建立登录名和数据用户之间映射关系的过程,一个登录名能为多个数据库用户,这种映射关系为同一服务器上不同数据库的权限管理带来更多便利.文章来源地址https://www.toymoban.com/news/detail-436123.html

到了这里,关于数据库实验报告--安全性实验的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于物理安全的数据库访问控制:确保数据安全性

    作者:禅与计算机程序设计艺术 引言 1.1. 背景介绍 随着大数据时代的到来,各类组织机构和企业纷纷开始关注数据安全和隐私保护。在数据处理和存储过程中,确保数据的物理安全和逻辑安全至关重要。数据库访问控制作为保障数据安全的一项基础工作,也应受到足够的重

    2024年02月12日
    浏览(43)
  • 第四章——数据库的安全性

    问题的提出:数据库安全性产生的原因 数据库的一大特点是共享性 数据共享必然带来数据库安全性问题 数据库系统中的数据共享不能是无条件的共享 数据库的安全性是指保护数据库以防止不合法的使用所造成的的数据泄露、更改或破坏 系统安全保护措施是否有效是数据库

    2023年04月08日
    浏览(33)
  • 【MySQL】数据库完整性和安全性

    目录   一、完整性 1.概念 2.sql语言支持的两种约束     2.1静态约束          撤销追加约束          断言     2.3动态约束           触发器 二、安全性 用DBMS对数据库实现的两个特性  1.概念 指dbms保证的db的一种特性,在任何情况下的正确性、有效性、一致性 原理图

    2023年04月24日
    浏览(77)
  • 五、C#与数据库交互( SQL注入与安全性)

    在C#与数据库交互时,安全性是非常重要的一部分,特别是要防止SQL注入攻击。SQL注入是一种常见的网络攻击手段,攻击者通过在输入字段中注入恶意SQL代码来操纵数据库查询。以下是一些关于如何防止SQL注入的建议: 使用参数化查询 : 这是防止SQL注入的最有效方法。参数化

    2024年02月02日
    浏览(49)
  • 技术应用:Docker安全性的最佳实验|聊聊工程化Docker

    🔥 技术相关:《技术应用》 ⛺️ I Love you, like a fire! 不可否认,能生存在互联网上的软件都是相互关联的,当我们开发一款应用程序时,它必须与其他的服务进行通信,无论是在你的基础设施,还是云服务,亦或是第三方应用程序上。当然,你不希望你不认识的人伪装成你

    2024年02月13日
    浏览(28)
  • 数据库实验报告一

    实验要求: 创建名为 TESTDB 的数据库。 相关SQL语句如下: 实验要求: 在 TESTDB 数据库中创建教师表( teacher ),表结构如下: 字段名 数据类型(长度) 备注 tno CHAR(4) 工号 tname VARCHAR(12) 姓名 sex CHAR(3) 性别 title VARCHAR(15) 职称 birthday DATE 出生日期 相关SQL语句如下: 实验要求

    2023年04月19日
    浏览(41)
  • 数据库实验报告

    实验报告一 数据库工具使用及数据库的创建与管理 实验目的 希望学生通过上机操作了解并掌握SQL Server 各组件的主要功能以及查询编译器是如何使用的 了解数据库及数据库对象 了解数据库的结构并熟练掌握使用SQL Server 管理平台和SQL 语句直接创建数据库的方法 实验内容 查

    2024年02月04日
    浏览(33)
  • 数据库原理实验报告

    这门课是大二学年数据库原理这门必修理论课中需要写报告的部分,要求学会使用sql语句,之前忘发了,今天想起来上传一下。 当时是和室友一起讨论着写完的,因为其中有几个问题实现起来还是比较复杂的,我推荐大家不要闷头自己写,否则万一写错了也不知道。但也不是

    2024年02月09日
    浏览(36)
  • 数据库实验报告一-创建数据库和表

    一 ,实验目的 1、了解SQL Server数据库的操作环境; 2、了解SQL Server的基本数据类型、表的结构和空值的概念; 3、掌握在企业管理器中创建数据库和表; 4、熟练掌握使用T-SQL语句创建数据库和表; 5、熟悉主码、外码、Check约束和索引的建立和删除操作 二,实验原理 建立表,

    2023年04月13日
    浏览(36)
  • 加密数据安全性的两大安全护盾-前向安全性与后向安全性详解

    在数字安全的世界里,加密技术是用来保护数据不被未经授权访问的重要机制。然而,即使使用了最强的加密算法,也不能保证永远是安全的。攻击者可能会在未来某个时间点获得了解密密钥,从而能够解密拦截的密文。为了解决这个问题,密码学引入了前向安全性(Forwar

    2024年02月04日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包