您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > SQLServer的安全管理
浙江商业职业技术学院信息技术系第11章SQLServer的安全管理11.1SQLServer2000的安全认证模式11.2创建和管理安全账户11.3管理数据库用户和角色11.4SQLServer权限管理浙江商业职业技术学院信息技术系11.1SQLServer2000的安全认证模式用户使用SQLServer时,需要经过两个安全性阶段:身份验证和权限认证。身份验证阶段:用户在SQLServer上获得对任何数据库的访问权限之前,必须登录到SQLServer上,并且被认为是合法的。权限认证阶段:检验用户是否有访问服务器上数据库的权限,为此需要授予每个数据库中映射到用户登录的帐户访问权限,权限认证可以控制用户在数据库中进行的操作。浙江商业职业技术学院信息技术系11.1.1身份验证11.1.2权限认证11.1SQLServer2000的安全认证模式浙江商业职业技术学院信息技术系11.1.1身份验证Windows身份验证模式使用Windows操作系统的安全机制验证用户身份,如用户能通过Windows用户帐户验证,即可连接到SQLServer。使用该验证模式须满足下列条件之一:浙江商业职业技术学院信息技术系11.1.1身份验证混合身份验证模式用户可以使用Windows身份验证或SQLServer身份验证与SQLServer实例连接。它将区分用户帐号在Windows操作系统下是否可信,对于可信连接用户,系统直接采用Windows身份验证机制,否则SQLServer会通过帐户的存在性和密码的匹配性自行进行验证。浙江商业职业技术学院信息技术系11.1.2权限认证一般来说,数据库的所有者或者对象的所有者可以对其他数据库用户授予或者解除权限。用户连接后虽然可发送SQL命令,但是这些命令在数据库中是否能够成功的执行,还取决于用户帐户在数据库中对这些操作的权限设置。如果发出命令的用户没有执行语句的权限或者没有访问对象的权限,则SQLServer将不会执行该命令。所以没有通过数据库中的权限认证,即使用户连接到了SQLServer实例上,也是无法使用数据库。浙江商业职业技术学院信息技术系11.2创建和管理安全账户11.2.1创建安全账户11.2.2管理安全账户11.2.3删除登录和用户浙江商业职业技术学院信息技术系11.2.1创建安全账户登录账户和用户账户不管使用哪种验证方式,都必须首先具备有效的登录账户。SQLServer有三个默认的用户账户:sa、BUILTIN\Administrators和guest。使用企业管理器或使用系统存储过程来创建SQLServer登录账户。浙江商业职业技术学院信息技术系11.2.1创建安全账户在企业管理器中展开“SQLServer组”,找到需要建立登录账号的服务器并展开其文件夹,再展开“安全性”,在“登录”选项上右击,出现快捷菜单,单击“新建登录”,打开“SQLServer登录属性-新建登录”对话框,选择Windows身份验证或SQLServer身份验证,单击“服务器角色”标签,设置登录账号所属的服务器角色;单击“数据库访问”标签,选择登录账号可以访问的数据库,设置完毕后,单击“确定”,完成登录账号的创建。浙江商业职业技术学院信息技术系11.2.1创建安全账户每个登录账号在一个数据库中只能有一个用户账号,但是每个登录账号可以在不同的数据库中各有一个用户账号。如果在新建登录账号过程中,指定对某个数据库具有存取权限,则在该数据库中将自动创建一个与登录账号同名的用户账号。同样,可以使用企业管理器或使用系统存储过程来创建数据库的用户,以及设置数据库用户账号的权限。浙江商业职业技术学院信息技术系11.2.2管理安全账户使用企业管理器查看登录账号进入企业管理器,展开“SQLServer组”,找到所要连接的SQLServer服务器,展开该服务器对应的文件夹,再展开“安全性”文件夹,单击“登录”选项,即可看到系统创建的默认登录账号及已建立的其他登录账号。浙江商业职业技术学院信息技术系11.2.2管理安全账户使用企业管理器修改登录账户属性展开服务器组和服务器→展开“安全性”项,单击“登录”→在“详细信息”中,右击要修改的登录,从弹出菜单中选择“属性”→单击“常规”标签,在“密码”文本框中输入新的密码;或在“数据库”列表中,单击登录之后连接的默认数据库;或者在“语言”列表中,单击要使用的默认语言→单击“服务器角色”标签或“数据库访问”标签,即可完成其中各项的修改→单击“确认”,完成登录账户的修改。浙江商业职业技术学院信息技术系11.2.3删除登录和用户使用企业管理器删除登录账号进入企业管理器,展开SQLServer组、服务器、安全性,单击“登录”,在企业管理器的右侧窗格中即可看到系统创建的默认登录账号及已建立的其他登录账号。在需要更改属性的账号上右击,在出现的快捷菜单中,单击“删除”,在对话框中单击“是”,确定删除。浙江商业职业技术学院信息技术系11.2.3删除登录和用户使用企业管理器删除用户账号在企业管理器中,展开SQLServer组、服务器、数据库,、单击“用户”选项,在“详细信息”窗格中,右击要删除的用户,从弹出菜单中选择“删除”,在出现的提示框中,单击“确认”,确认删除。浙江商业职业技术学院信息技术系11.3管理数据库用户和角色11.3.1服务器角色11.3.2数据库角色浙江商业职业技术学院信息技术系11.3.1服务器角色sysadmin:可以在SQLServer中执行任何活动。serveradmin:可设置服务器范围的配置选项。setupadmin:可管理链接服务器和启动过程。securityadmin:可管理登录和创建数据库的权限,还可以读取错误日志和更改密码。processadmin:可管理运行中的进程。dbcreator:可创建、更改和除去数据库。diskadmin:可管理磁盘文件。bulkadmin:可执行大容量插入语句。浙江商业职业技术学院信息技术系11.3.2数据库角色标准角色db_owner:在数据库中有全部权限。db_accessadmin:可以添加或删除用户ID。db_securityadmin:可以管理全部权限、对象所有权、角色和角色成员资格。db_ddladmin:可以发出除GRANT、REVOKE、DENY之外的所有数据定义语句。db_backupoperator:可以发出DBCC、CHECKPOINT和BACKUP语句。浙江商业职业技术学院信息技术系11.3.2数据库角色标准角色db_datareader:可选择数据库内任何表中所有数据。db_datawriter:可更改数据库内任何表中所有数据。db_denydatareader:不能选择数据库内任何用户表中的任何数据。db_denydatawriter:不能更改数据库内任何用户表中的任何数据。Public:最基本的数据库角色。浙江商业职业技术学院信息技术系11.3.2数据库角色用户和角色的权限问题用户是否具有对数据库存取的权力,要看其权限设置而定。但是,它还要受其角色的权限的限制。用户权限继承角色的权限用户分属于不同的数据库角色浙江商业职业技术学院信息技术系11.4SQLServer权限管理对象权限包括:①SELECT、INSERT、UPDATE和DELETE语句权限,可以应用到整个表或视图中。②SELECT和UPDATE语句权限,可以有选择性地应用到表或视图中的单个列上。③SELECT权限,可以应用到用户定义函数。④INSERT和DELETE语句权限,会影响整行,因此只可以应用到表或视图中,而不能应用到单个列上。⑤EXECUTE语句权限,可以影响存储过程和函数。浙江商业职业技术学院信息技术系11.4SQLServer权限管理语句权限包括:①BACKUPDATABASE②BACKUPLOG③CREATEDATABASE④CREATEDEFAULT⑤CREATEFUNCTION⑥CREATEPROCEDURE⑦CREATERULE⑧CREATETABLE⑨CREATEVIEW浙江商业职业技术学院信息技术系11.4.1使用企业管理器管理权限11.4.2使用Transact-SQL语句管理权限11.4SQLServer权限管理浙江商业职业技术学院信息技术系11.4.1使用企业管理器管理权限给用户授予数据库中的语句权限展开服务器组,展开服务器,展开“数据库”项,右击将被授予语句权限的用户所在的数据库,从弹出菜单中选择“属性”选项;单击“权限”标签页,选择授予每位用户的语句权限。其中,选中标记表示授予权限。浙江商业职业技术学院信息技术系11.4.1使用企业管理器管理权限通过授权允许访问某个对象展开服务器组,展开服务器;展开“数据库”项,展开对象所属的数据库;根据对象类型,单击表、视图、存储过程等对象;在“详细信息”窗格中,右击授予权限所在的对象,从弹出菜单中选择“所有任务”→“管理权限”;单击“列出全部用户/用户定义的数据库角色/public”选项,选择授予每位用户的权限。其中,选中标记表示授予权限。浙江商业职业技术学院信息技术系11.4.1使用企业管理器管理权限授予、拒绝或废除用户定义角色在多个对象上的权限展开服务器组、服务器、数据库,单击“角色”;在“详细信息”窗格中,右击要授予、拒绝、废除其权限的用户定义的角色,从弹出菜单中选择“属性”;单击“权限”;单击“列出全部对象”,选择在每个对象上授予、拒绝或废除的权限。其中,选中标志表示授予权限;“×”表示拒绝权限;空框表示废除权限。浙江商业职业技术学院信息技术系实习训练⑴创建登录账户①使用企业管理器创建通过SQLServer身份验证模式的登录,其中登录名称为stud_login1,密码为computer1,默认数据库为student,其他保持默认值。②使用企业管理器创建通过windows身份验证模式的登录。浙江商业职业技术学院信息技术系实习训练⑴创建登录账户③使用系统存储过程sp_addlogin创建登录,其登录名称为stud_login3,密码为computer3,默认数据库为student。④使用企业管理器删除登录账户stud_login1、stud_login2。⑤使用系统存储过程sp_droplogin,从SQLServer中删除登录账户stud_login3。浙江商业职业技术学院信息技术系实习训练⑵创建和管理数据库用户和角色①创建登录名为stud_user1,密码为computer,默认数据库为student,并能连接到student数据库的用户。②使用企业管理器先创建数据库角色(标准角色),新角色名称为stud_role1;然后将角色成员stud_user1添加到标准角色中,最后在企业管理器中删除数据库角色stud_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后,重新执行SELECT语句。⑤创建一个应用程序角色stud_role,此角色能够访问student数据库,并具有读取、修改数据表的权限。浙江商业职业技术学院信息技术系实习训练⑶管理权限①把查询表stud_grade的权限授给用户stud_user1。②把对表stud_grade的全部操作权限授予用户stud_user1。③把对表stud_grade的查询权限授予所有用户。④把查询表stud_grade和修改学生学
本文标题:SQLServer的安全管理
链接地址:https://www.777doc.com/doc-2850385 .html