MSSQL数据库安全实验

一. 管理SQL Server认证模式

    (1)确认 SQL Server 验证

    1.在桌面上单击“开始”,选择“程序”→“Microsoft SQL Server 2005” →“SQL Server Management Studio”,出现“连接到服务器”对话框。

    2.在“连接到服务器”对话框中,选择windowns身份验证

    

    3.在“对象资源管理器”中,右击服务器,然后单击“属性”并单击“安全性”。

    

 

    4.在“服务器身份验证”选项区中,身份验证模式,选择“SQL Server 和Windows 身份验证模式”。

    

    5在“对象资源管理器”中,右击服务器,然后单击“重新启动”。

    

 当提示确认时,请单击“是”。

    6在“摘要”面板中,右击“SQL Server 代理”,然后单击“启动”。

    

 

 

 

 

    当提示是否确实要启动SQLSERVERAGENT服务时,点击是。

 管理数据库登录

    (1)使用企业管理器管理Windows身份验证的登录帐号。

    1右击我的电脑,点击管理。

    然后一次展开系统工具-本地用户和组-用户,此时在右边可以看到当前系统中所有的用户。

    

 

 

 

 

    在右侧空白处右击,点击新用户。

    

 

    添加一个用户WinUser,并给该用户设置密码admin,把用户下次登录时须更改密码前面的勾选去掉,把密码永不过期的选项选上,然后点击创建

    

    创建完后点击关闭。

       此时在用户列表中可以看到该用户已经添加成功。

    

 

    然后右击该用户,选择属性,弹出如下对话框:

    

    点击隶属于选项卡。

    

 

    然后点击左下角的添加按钮。弹出选择组对话框。

    

    点击左下角的高级,弹出如下对话框:

    

 

    点击立即查找,在搜索结果中选择 administrators。

    然后点击确定按钮,此时,在winuser属性的隶属于选项卡下可以看到,多了一个administrators。

    

 

 

 

 

    然后点击右下角的应用,最后点击确定。

    2.在SQL Server Management Studio中,右击数据库,选择新建数据库,在数据库名称内输入student新建一个student数据库,然后点击确定 。

    

 

 

 

    展开实例下的“安全性”,右击“登录名”按钮,在弹出的快捷菜单中选择“新建登录”。

    

    打开SQL Server登录属性对话框。在“常规”选项卡中,单击“名称”输入框右侧的按钮。

    

 

 

 

    弹出选择用户或组对话框,点击高级,弹出新的对话框,点击右侧的立即查找,在搜索结果中,找到winuser并选择该用户,然后点击确定。然后点击确定。

    验证方式选择 “Windows 身份验证”。

    

    默认数据库选择student

    

    3选择“服务器角色”选项卡。可以在服务器角色列表框中选择相应的服务器角色成员。在这里,设置登录用户winuser的服务器角色为系统管理员。

    

 

    4。选择“用户映射”选项卡,在列表框中列出了该账号可以访问的数据库,如果单击数据库左边的复选框,表示该用户可以访问相应的数据库。在这里,选中数据库master和student左边的复选框,表示登陆用户winuser可以访问的数据库为master和student。在下方的数据库角色成员身份都选择public。然后点击确定。

    

 

    在对象资源管理器中,展开安全性-登录名,可以看到winuser已存在。

    

    同时,展开数据库-系统数据库-student-安全性-用户,在用户列表中可以看到数据库student中已经建立一个数据库用户winuser。

    

 

 

 

 

    验证用WinUser账号登录SQL Server:首先在操作系统中注销当前用户的登陆,将用户切换到WinUser,再用此账号连接SQL Server查询分析器,用Windows身份验证登录,可以进入查询分析器,使用数据库master和student。

    来到桌面,右击我的电脑,点击管理,在计算机管理窗口,依次展开 系统工具-本地用户和组-用户,在右侧右击administrator,选择设置密码。

    

 

 

 

 

    会弹出如下对话框,点击继续。

    

    然后设置密码admin,点击确定,会提示密码已设置

    

 

    然后点击左下角的开始,选择注销

    

 

 

 

 

    弹出确认窗口,点击注销。

    

    然后会自动到登陆页面,输入之前新建的winuser和密码,点击确定登录。

    

 

 

 

 

    登录后,进入SQL Server Management Studio。

    身份验证选择 Windows 身份验证。

    

 

 

 

 

    点击连接后,登陆成功。

    (2)使用SQL Server Management Studio管理SQL Server身份验证的登录帐号。

    ①在 SQL Server Management Studio中,展开实例下的“安全性”,右击“登录名”按钮,在弹出的快捷菜单中选择“新建登录”

    ②在登录名输入框内输入需要新建的用户名,这里新建的用户名是SQLUser。验证方式选择SQL Server身份验证,然后在密码框输入SQLUser的密码。默认数据库选择master,然后点击确认。

    

 

    3.单击“用户映射”,在“映射到此用登录名的用户”中,将所有数据库都选中,下方的数据库角色成员身份全部选择public,然后单击确定完成账号的创建。

    

 

 

 

    4关闭SQL Server Management Studio重新打开,在登录页面处身份验证选择SQL Server身份验证。然后输入刚才新建的账号和密码,然后点击连接。

    

 

 

 

 

    登录成功,此时可以新建查询来查询数据。

 

    三. 管理数据库用户

    数据库用户对数据的访问权限以及对数据库对象的所有关系都是通过用户账号来控制的。在数据库中,用户账号与登录账号是两个不同的概念。一个合法的登录账号只表明该账号通过了Windows认证或SQL Server 认证,但不能表明其可以对数据库数据和数据对象进行某种或某些操作,只有其同时拥有了用户账号后,才能够访问数据库。所以一个登录账号总是与一个或多个数据库用户账号相对应,这样才可以访问数据库。

    (1)创建数据库用户

    打开SQL Server Management Studio,展开服务器-数据库,选择要创建用户的数据库,如student,展开student,用鼠标右键单击“安全性”节点,从弹出的菜单中选择“新建-用户”命令。

    

 

 

 

 

    弹出“新建用户”对话框,在用户名输入框输入要新建的数据库用户名称,如dbuser

    

    在“登录名”处点击后面的按钮

    

    弹出选择登录名对话框,在该对话框选择浏览

    弹出查找对象对话框,在里面选择一个用户,选择SQLuser

    然后点击确定

    点击确定,在此用户拥有的架构勾选db_owner,数据库角色成员身份同样选择db_owner,单击“确定”按钮,完成数据库用户的创建。

    

 

 

 

 

    (2)修改用户信息

    用鼠标右键单击要修改的用户,在系统弹出菜单上单击“属性”

    

 

 

 

 

    可打开“数据库用户”对话框查看该用户的信息,同时需要时能直接修改相应用户的设置信息。

    

 

 

 

 

    (3)删除数据库用户。

    用鼠标右键单击要删除的数据库用户,如数据库student中的数据库用户dbuser,从快捷菜单中选择“删除”命令即可。

    

 

 

 

 

 

    四. 管理数据库角色

    SQL Server有自己的固有角色。固有角色是指 SQL Server预先定义好的系统角色。用户不能修改这些角色的任何属性,也不能创建新的服务器固有角色和数据库固有角色。

    数据库角色是在数据库的安全级别上创建,一个数据库角色只在其所在的数据库中有效,对其他数据库无效。在数据库中,除了有固有的数据库角色外,还可以自定义数据库角色,同时根据需要,可以为数据库角色添加成员或删除自定义角色。

    1.创建数据库角色

    打开SQL Server Management Studio,展开服务器-数据库,选择要创建用户的数据库,如student,展开student,用鼠标右键单击“安全性”节点,从弹出的菜单中选择“新建-数据库角色”命令。

    

 

 

 

 

    弹出“新建角色”对话框,在角色名称输入框中输入数据库新角色的名称,如NewRole,点击所有者后面的按钮

    

    在里面选择一个用户

    

    在此角色拥有的架构中选择db_owner,然后点击确定,完成角色创建。

    

 

 

 

 

    可以在安全性-角色-数据库角色中看到,刚才添加的角色已经成功。

    

 

 

 

 

    (2)删除自定义的数据库角色

    在SQL Server Management Studio中,用鼠标右键单击要删除的自定义角色,如NewRole,从弹出的菜单中选择“删除”命令即可删除自定义角色。

    

 

 

  五. 管理数据库权限

    权限用来指定授权用户可以使用的数据库对象和这些授权用户可以对这些数据库对象执行的操作。用户在登录到SQL Server之后,其用户账号所归属的NT组或角色所被赋予的权限决定了该用户能够对哪些数据库对象执行哪种操作以及能够访问、修改哪些数据。在SQL Server中包括语句级权限和对象级权限。

    (1)进行语句级权限管理:

    启动SQL Server Management Studio,展开实例数据库,右击student数据库,在弹出的快捷菜单中选择“属性”,然后选择“权限”选项卡。在用户WinUser一栏中,将“创建表”和“创建视图”选中.

    

 

    在SQLUser一栏中,则选择除“创建表”和“创建视图”以外的选项

    

 

 

 

 

原文地址:https://www.cnblogs.com/yuyushan/p/15321797.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


本篇内容主要讲解“sqlalchemy的常用数据类型怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“sqlalche...
今天小编给大家分享一下sqlServer实现分页查询的方式有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家
这篇文章主要介绍“sqlmap之osshell怎么使用”,在日常操作中,相信很多人在sqlmap之osshell怎么使用问题上存在疑惑,小编查阅了各式资料,整理出
本篇内容介绍了“SQL注入的知识点有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧...
1. mssql权限sa权限:数据库操作,文件管理,命令执行,注册表读取等system。是mssql的最高权限db权限:文件管理,数据库操作等 users-administratorspublic权限:数据库操作 guest-users2、sql server注入执行命令查
sql执行计划如何查看?在SPL庞大的数据中我们不知道如何查看实际数据库中发生了什么事情,有必要定期进行查询优化和索引否则会影响我们后期的SQL的查询速度。那么针对这样的问题我们必须要知道SQL执行的计划,在本文中winwin7小编给大家分享下SQL执
SQL Server 是Microsoft 公司推出的关系型数据库管理系统。具有使用方便可伸缩性好与相关软件集成程度高等优点应用非常广泛。不过在使用中,我们会遇到非常多的错误,面对这么庞大的数据库环境,当然会有精确的错误代码的对照季,下面小编分享的
SQL Server本地账户无法登陆出现错误提示:error:40-Could not open a connenction to SQL Server的问题很常见,对于初学者来说可能不知道如何解决,一起来看看下面的解决方案。解决步骤如下:1、这种情况需要开启 SQL Server service
微软推出的SQL2008是一款非常好用的数据库软件,它稳定、功能强大,为众多企业提供了最佳的数据库解决方案,那么我们如何在Windows中安装它呢,一些朋友对SQL Server 2008的安装过程还不是很熟悉,下面就一起来看看SQL Server 2008详细安装图解...
本页概要如果您使用的是 SQL Server 2005备份和还原Sp_detach_db 和 Sp_attach_db 存储过程关于排序规则的说明导入和导出数据(在 SQL Server 数据库之间复
DBCC CHECKIDENT 检查指定表的当前标识值,如有必要,还对标识值进行更正。 语法 DBCC CHECKIDENT ( 'table_name' [ , { NORESEED
这里对 SQL Server 字符串函数进行分门别类地列出,便于查阅和记忆,相信大家都在其它方面有高深的编程基础,从字面上来说大家都知道这些函数的意义,就不对这些函数作过多的解释了,主要谈些经验,具体
查询及删除重复记录的方法 1、查找表(people)中多余的重复记录,重复记录是根据单个字段(peopleId)来判断select*frompeoplewherepeopleIdin(selectpe
微软发SQL Server 2008第二个CTP预览版from: http://news.csdn.net/n/20070807/107158.html8月7日消息,微软公司本周发布了SQL Serv
症状当您将数据库备份恢复到另一台服务器时,可能会遇到孤立用户的问题。SQL Server 联机丛书中的孤立用户疑难解答主题中没有讲述解决此问题的具体步骤。本文介绍了如何解决孤立用户问题。更多信息虽然术
当登录SQL Server 2005时可能碰到错误: 'No Process is on the Other End of the Pipe'。解决方法:(1)Open up SQL
概要本文描述如何映射标准登录和集成登录来解决在运行 SQL Server 的服务器之间移动数据库时的权限问题。更多信息当您将数据库从一个运行 SQL Server 的服务器移到另一个运行 SQL Se
----------------------------------------问题:该用户与可信的SQL SERVER 连接无关联使用sa用户或自建用户使用“SQL SERVER 身份认证”连接数据
更新日期: 2007 年 5 月 20 日 使用下表可以确定各种版本的 Microsoft SQL Server 2005 支持哪些功能。有关 SQL Server 2005 Enterprise E
当从Excel导入数据到Sql Sever中,可能会出现以下问题:
对于指定的缓冲区大小而言,源列的数据太大