sql_server的安全管理

上传人:n**** 文档编号:82946344 上传时间:2019-02-25 格式:PPT 页数:34 大小:397.50KB
返回 下载 相关 举报
sql_server的安全管理_第1页
第1页 / 共34页
sql_server的安全管理_第2页
第2页 / 共34页
sql_server的安全管理_第3页
第3页 / 共34页
sql_server的安全管理_第4页
第4页 / 共34页
sql_server的安全管理_第5页
第5页 / 共34页
点击查看更多>>
资源描述

《sql_server的安全管理》由会员分享,可在线阅读,更多相关《sql_server的安全管理(34页珍藏版)》请在金锄头文库上搜索。

1、第11章 SQL Server的安全管理,11.1 SQL Server 2000的安全认证模式 11.2 创建和管理安全账户 11.3 管理数据库用户和角色 11.4 SQL Server权限管理,11.1 SQL Server 2000的安全认证模式,用户使用SQL Server时,需要经过两个安全性阶段:身份验证和权限认证。 身份验证阶段:用户在SQL Server上获得对任何数据库的访问权限之前,必须登录到SQL Server上,并且被认为是合法的。 权限认证阶段:检验用户是否有访问服务器上数据库的权限,为此需要授予每个数据库中映射到用户登录的帐户访问权限,权限认证可以控制用户在数据库

2、中进行的操作。,11.1.1 身份验证 11.1.2 权限认证,11.1 SQL Server 2000的安全认证模式,11.1.1 身份验证,Windows身份验证模式 使用Windows操作系统的安全机制验证用户身份,如用户能通过Windows用户帐户验证,即可连接到SQL Server。使用该验证模式须满足下列条件之一:,11.1.1 身份验证,混合身份验证模式 用户可以使用Windows身份验证或SQL Server身份验证与SQL Server实例连接。它将区分用户帐号在Windows操作系统下是否可信,对于可信连接用户,系统直接采用Windows身份验证机制,否则SQL Serve

3、r会通过帐户的存在性和密码的匹配性自行进行验证。,11.1.2 权限认证,一般来说,数据库的所有者或者对象的所有者可以对其他数据库用户授予或者解除权限。用户连接后虽然可发送SQL命令,但是这些命令在数据库中是否能够成功的执行,还取决于用户帐户在数据库中对这些操作的权限设置。如果发出命令的用户没有执行语句的权限或者没有访问对象的权限,则SQL Server将不会执行该命令。所以没有通过数据库中的权限认证,即使用户连接到了SQL Server实例上,也是无法使用数据库。,11.2 创建和管理安全账户,11.2.1 创建安全账户 11.2.2 管理安全账户 11.2.3 删除登录和用户,11.2.1

4、 创建安全账户,登录账户和用户账户 不管使用哪种验证方式,都必须首先具备有效的登录账户。SQL Server有三个默认的用户账户:sa、BUILTINAdministrators和guest。 使用企业管理器或使用系统存储过程来创建SQL Server登录账户。,11.2.1 创建安全账户,在企业管理器中展开“SQL Server组”,找到需要建立登录账号的服务器并展开其文件夹,再展开“安全性”,在“登录”选项上右击,出现快捷菜单,单击“新建登录”,打开“SQL Server登录属性-新建登录”对话框,选择Windows身份验证或SQL Server身份验证,单击“服务器角色”标签,设置登录账

5、号所属的服务器角色;单击“数据库访问”标签,选择登录账号可以访问的数据库,设置完毕后,单击“确定”,完成登录账号的创建。,11.2.1 创建安全账户,每个登录账号在一个数据库中只能有一个用户账号,但是每个登录账号可以在不同的数据库中各有一个用户账号。如果在新建登录账号过程中,指定对某个数据库具有存取权限,则在该数据库中将自动创建一个与登录账号同名的用户账号。 同样,可以使用企业管理器或使用系统存储过程来创建数据库的用户 ,以及设置数据库用户账号的权限 。,11.2.2 管理安全账户,使用企业管理器查看登录账号 进入企业管理器,展开“SQL Server组”,找到所要连接的SQL Server服

6、务器,展开该服务器对应的文件夹,再展开“安全性”文件夹,单击“登录”选项,即可看到系统创建的默认登录账号及已建立的其他登录账号。,11.2.2 管理安全账户,使用企业管理器修改登录账户属性 展开服务器组和服务器展开“安全性”项,单击“登录”在“详细信息”中,右击要修改的登录,从弹出菜单中选择“属性”单击“常规”标签,在“密码”文本框中输入新的密码;或在“数据库”列表中,单击登录之后连接的默认数据库;或者在“语言”列表中,单击要使用的默认语言单击“服务器角色”标签或“数据库访问”标签,即可完成其中各项的修改单击“确认”,完成登录账户的修改。,11.2.3 删除登录和用户,使用企业管理器删除登录账

7、号 进入企业管理器,展开SQL Server组、服务器、安全性,单击“登录”,在企业管理器的右侧窗格中即可看到系统创建的默认登录账号及已建立的其他登录账号。在需要更改属性的账号上右击,在出现的快捷菜单中,单击“删除”,在对话框中单击“是”,确定删除。,11.2.3 删除登录和用户,使用企业管理器删除用户账号 在企业管理器中,展开SQL Server组、服务器、数据库,、单击“用户”选项,在“详细信息”窗格中,右击要删除的用户,从弹出菜单中选择“删除”,在出现的提示框中,单击“确认”,确认删除。,11.3 管理数据库用户和角色,11.3.1 服务器角色 11.3.2 数据库角色,11.3.1 服

8、务器角色,sysadmin:可以在SQL Server中执行任何活动。 serveradmin:可设置服务器范围的配置选项。 setupadmin:可管理链接服务器和启动过程。 securityadmin:可管理登录和创建数据库的权限,还可以读取错误日志和更改密码。 processadmin:可管理运行中的进程。 dbcreator:可创建、更改和除去数据库。 diskadmin:可管理磁盘文件。 bulkadmin:可执行大容量插入语句。,11.3.2 数据库角色,标准角色 db_owner:在数据库中有全部权限。 db_accessadmin:可以添加或删除用户ID。 db_securit

9、yadmin:可以管理全部权限、对象所有权、角色和角色成员资格。 db_ddladmin:可以发出除GRANT、REVOKE、DENY之外的所有数据定义语句。 db_backupoperator:可以发出DBCC、CHECKPOINT和BACKUP语句。,11.3.2 数据库角色,标准角色 db_datareader:可选择数据库内任何表中所有数据。 db_datawriter:可更改数据库内任何表中所有数据。 db_denydatareader:不能选择数据库内任何用户表中的任何数据。 db_denydatawriter:不能更改数据库内任何用户表中的任何数据。 Public:最基本的数据库

10、角色。,11.3.2 数据库角色,用户和角色的权限问题 用户是否具有对数据库存取的权力,要看其权限设置而定。但是,它还要受其角色的权限的限制。 用户权限继承角色的权限 用户分属于不同的数据库角色,11.4 SQL Server权限管理,对象权限包括: SELECT、INSERT、UPDATE和DELETE语句权限,可以应用到整个表或视图中。 SELECT和UPDATE语句权限,可以有选择性地应用到表或视图中的单个列上。 SELECT权限,可以应用到用户定义函数。 INSERT和DELETE语句权限,会影响整行,因此只可以应用到表或视图中,而不能应用到单个列上。 EXECUTE语句权限,可以影响

11、存储过程和函数。,11.4 SQL Server权限管理,语句权限包括: BACKUP DATABASE BACKUP LOG CREATE DATABASE CREATE DEFAULT CREATE FUNCTION CREATE PROCEDURE CREATE RULE CREATE TABLE CREATE VIEW,11.4.1 使用企业管理器管理权限 11.4.2 使用Transact-SQL语句管理权限,11.4 SQL Server权限管理,11.4.1 使用企业管理器管理权限,给用户授予数据库中的语句权限 展开服务器组,展开服务器,展开“数据库”项,右击将被授予语句权限的用

12、户所在的数据库,从弹出菜单中选择“属性”选项;单击“权限”标签页,选择授予每位用户的语句权限。其中,选中标记表示授予权限。,11.4.1 使用企业管理器管理权限,通过授权允许访问某个对象 展开服务器组,展开服务器;展开“数据库”项,展开对象所属的数据库;根据对象类型,单击表、视图、存储过程等对象;在“详细信息”窗格中,右击授予权限所在的对象,从弹出菜单中选择“所有任务”“管理权限”;单击“列出全部用户/用户定义的数据库角色/public”选项,选择授予每位用户的权限。其中,选中标记表示授予权限。,11.4.1 使用企业管理器管理权限,授予、拒绝或废除用户定义角色在多个对象上的权限 展开服务器组

13、、服务器、数据库,单击“角色”;在“详细信息”窗格中,右击要授予、拒绝、废除其权限的用户定义的角色,从弹出菜单中选择“属性”;单击“权限”;单击“列出全部对象”,选择在每个对象上授予、拒绝或废除的权限。其中,选中标志表示授予权限;“”表示拒绝权限;空框表示废除权限。,实习训练, 创建登录账户 使用企业管理器创建通过SQL Server身份验证模式的登录,其中登录名称为stud_login1,密码为computer1,默认数据库为student,其他保持默认值。 使用企业管理器创建通过windows身份验证模式的登录。,实习训练, 创建登录账户 使用系统存储过程sp_addlogin创建登录,其

14、登录名称为stud_login3,密码为computer3,默认数据库为student。 使用企业管理器删除登录账户stud_login1、stud_login2。 使用系统存储过程sp_droplogin,从SQL Server中删除登录账户stud_login3。,实习训练, 创建和管理数据库用户和角色 创建登录名为stud_user1,密码为computer,默认数据库为student,并能连接到student数据库的用户。 使用企业管理器先创建数据库角色(标准角色),新角色名称为stud_role1;然后将角色成员stud_user1添加到标准角色中,最后在企业管理器中删除数据库角色s

15、tud_role1。,实习训练, 创建和管理数据库用户和角色 使用系统存储过程sp_addrole添加名为“stud_role2”的标准角色到student数据库。然后,使用系统存储过程sp_droprole删除student数据库中名为“stud_role2”的角色。,实习训练, 创建和管理数据库用户和角色 使用系统存储过程sp_addapprole创建名为stud_role3的应用程序角色,授权stud_role3具有stud_grade表的SELECT权限,以stud_user1身份连接另一查询分析器,在新的查询分析器输入和执行SELECT语句,激活应用程序角色stud_role3后,重

16、新执行SELECT语句。 创建一个应用程序角色stud_role,此角色能够访问student数据库,并具有读取、修改数据表的权限。,实习训练, 管理权限 把查询表stud_grade的权限授给用户stud_user1。 把对表stud_grade的全部操作权限授予用户stud_user1。 把对表stud_grade的查询权限授予所有用户。 把查询表stud_grade和修改学生学号的权限授给用户stud_user1。 把对表stud_grade的INSERT权限授予用户stud_user1,并允许将此权限再授予其他用户。,实习训练, 管理权限 DBA把在数据库student中建立表的权限授予用户stud_user1。 把用户stud_user4修改学生学号的权限撤消。 撤消所有用户对表stud_grade

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号