版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第十章 SQL Server2000的安全性管理 本章要点:了解SQL Server 2000的两种登录模式 掌握管理两类SQL Server 2000登录账户的方法 掌握管理SQL Server 2000数据库用户的方法 掌握管理SQL Server 2000数据库对象的方法 掌握管理语句权限和对象权限的方法本章教学内容:10.1 安全性管理概述10.2 SQL Server 2000的登录身份验证管理10.3 角色管理10.4 SQL Server 2000数据库的安全性管理10.5 SQL Server 2000数据库对象的安全性管理安全性:主要是指根据用户访问权限的不同,来决定用户是否
2、可以登录到当前的SQL Server数据库,以及可以对数据库实施哪些操作。数据的安全性:是指保护数据以防止因不合法的使用造成数据的泄密和破坏。认证:是指SQL Server对来访用户身份进行了检验,并根据结果,决定该用户是否可以连接服务器以该用户可以访问哪些数据的过程。认证:服务器认证数据库认证10.1.1 服务器认证服务器认证是在用户访问SQL Server数据库服务器之前,操作系统本身或数据库服务器对来访用户进行的身份合法性验证。服务器认证:Windows认证SQL Server认证服务器认证是SQL Server安全性认证的第一步,用户只有通过服务器认证后,才可以连接到SQL Serve
3、r服务器,否则,服务器将拒绝用户对数据库的连接请求。一、Windows认证其实质就是使用“服务器平台”对用户账号安全性的认证。只需要用户通过“服务器平台”用户的检验, SQL Server就不再对该用户进行安全性检验了,此用户可以成功地连接到SQL Server数据库服务器。优点:SQL Server 身份验证相比,Windows 身份验证有某些优点,主要是由于它与 Windows NT 4.0 和 Windows 2000 安全系统的集成。Windows NT 4.0 和 Windows 2000 安全系统提供更多的功能,如安全验证和密码加密、审核、密码过期、最短密码长度,以及在多次登录请求
4、无效后锁定帐户。 说明当 SQL Server 实例在 Windows 98 或 Microsoft Windows Millennium 版上运行时,Windows 身份验证模式不可用。 二、SQL Server认证在该认证模式下,用户在连接SQL Server时必须提供SQL Server管理员为其设定的登录名和密码。使用的用户名和密码存储在master库中的syslogins表中。认证的工作是由SQL Server自身完成的,只有当用户输入正确的用户和密码后,才可以登录SQL Server服务器。当用户用指定的登录名称和密码从非信任连接进行连接时,SQL Server 通过检查是否已设置
5、 SQL Server 登录帐户,以及指定的密码是否与以前记录的密码匹配,自己进行身份验证。如果 SQL Server 未设置登录帐户,则身份验证将失败,而且用户收到错误信息。提供 SQL Server 身份验证是为了向后兼容性,因为为 SQL Server 7.0 版或更早的版本编写的应用程序可能要求使用 SQL Server 登录和密码。另外,当 SQL Server 实例在 Windows 98 上运行时,必须使用 SQL Server 身份验证,因为在 Windows 98 上不支持 Windows 身份验证模式。因此,SQL Server 在 Windows 98 上运行时使用混合模
6、式(但只支持 SQL Server 身份验证)。优点:支持更大范围的用户,非Windows用户不受Windows操作系统用户的限制;创建了Windows之上的另一个安全层次;一个应用程序可以使用单个SQL Server登录和口令访问数据库中的数据层次安全SQL Server中的安全环境通过用户的层次结构系统进行存储、管理和强制执行。用简化对很多用户的管理,使用组和角色。组:是indows内的管理单元,包含Windows用户和其它组。角色:是SQL Server内的管理单元,其中包含SQL Server登录、 Windows登录、组或其它角色。将用户分成组或角色可以更方便地同时对许多用户授予或拒
7、绝权限。对组定义的安全设置适用于该组中的所有成员。当某个组是更高组别组中的成员时,除为该组自身或用户账户定义的安全设置外,该组中的所有成员还将继承更高级别组的安全设置。10.1.2 数据库认证数据库用户权限当用户通过服务器认证后,就可以访问数据库中的所有数据,显然没有安全性可言,所以在用户访问SQL Server数据库前,还必须得到数据库认证,包括数据库用户和权限一、数据库用户SQL Server是以数据库用户为依据来决定来访用户可以访问哪些数据。数据库用户总是基于数据库的。二、权限权限:指该用户能够使用的数据对象和对这些数据库对象执行的操作。 权限分类:对象权限语句权限1.对象权限对象权限:
8、处理数据或执行数据库查询等操作时使用的权限,称为。对象类型可进行的操作表Select、update、delete、insert 、reference列Select、update视图Select、update、insert 、delete存储过程execute2.语句权限语句权限:用户在创建数据库或数据库项时,要求使用的权限,称为。语句权限涉及的操作: Create database:创建数据库Create table:创建表Create view:创建视图Create rule:创建规则Create default:创建缺省Create procedure:创建存储过程Create index
9、:创建索引Backup database:备份数据库Backup log:备份事务日志10.2 登录身份验证管理10.2.1登录身份验证模式10.2.2登录账户10.2.1身份验证模式身份验证又称为标准登录模式验证系统管理员为用户创建一个登录账户和密码账户和密码保存在系统数据库中用户只有通过SQL Server2000 系统的安全身份验证,才能被允许登录到SQL Server2000服务器 10.2.2登录账户分类:indows账户“indows用户”账户“indows组”账户SQL Server账户与SQL Server2000提供的两种身份验证模式相对应,在SQL Server2000中存
10、在两类登录账户,它们是:1.查看登录账户步骤:企业管理器服务器安全性登录标志:SQL Server账户:“indows用户”账户:“indows组”账户:2.添加登录账户企业管理器系统存储过程系统存储过程sp_addlogin命令:sp_addlogin loginame,passwd, defdb,deflanguage登录账户的名称登录密码成功登录时,默认打开的数据库登录时的默认语言Loginame必须要有,其他可以采用默认添加SQL Server账户例:使用企业管理器添加“NewLogin1”账户,密码为“”例:使用系统存储过程添加“NewLogin2”账户,密码为“”,默认数据库为“m
11、aster”。sp_addlogin NewLogin2, , master添加Windows账户企业管理器(分两步)创建Windows用户添加到登录账户系统存储过程使用企业管理器创建Windows用户添加到登录账户使用系统存储过程sp_grantlogin命令:添加Windows身份验证登录账户sp_grantlogin计算机名(或域名)用户名(或组名)例:使用系统存储过程sp_grantlogin添加indows身份验证登录账户第一步:创建indows用户第二步:sp_grantlogin 计算机名称用户名修改登录账户属性企业管理器系统存储过程使用系统存储过程Sp_password:修改账
12、户密码Sp_defaultdb:修改默认数据库Sp_defaultlanguage:修改默认语言例:使用系统存储过程将账户“NewLogin2”的密码改为“12345”。Sp_password NULL,12345,NewLogin2NULL位置可以是原密码,此处写表示无论密码是什么,都改为12345删除登录账户企业管理器系统存储过程使用系统存储过程Windows账户sp_revokeloginSQL Server账户sp_droplogin例:使用系统存储过程删除indows账户sp_revokelogin 计算机名用户名使用系统存储过程删除SQL Server账户NewLogin2Sp_d
13、roplogin NewLogin210.3 角色管理10.3.1 角色10.3.2 角色管理10.3.1 角色只要对角色进行权限设置便可以实现对所有用户权限的设置。分类:固定服务器角色数据库角色 角色是SQL Server 7.0版本引进的新概念,它代替了以前版本中组的概念。利用角色,SQL Server管理者可以将某些用户设置为某一角色,这样只对角色进行权限设置便可以实现对所有用户权限的设置,大大减少了管理员的工作量。SQL Server提供了用户通常管理工作的预定义服务器角色和数据库角色。 dbo 是具有在数据库中执行所有活动的暗示性权限的用户。将固定服务器角色 sysadmin 的任何
14、成员都映射到每个数据库内称为 dbo 的一个特殊用户上。另外,由固定服务器角色 sysadmin 的任何成员创建的任何对象都自动属于 dbo。无法删除 dbo 用户,且此用户始终出现在每个数据库中。一、服务器角色服务器角色: 指根据SQL Server的管理任务,以及这些任务相对的重要性等级来把具有SQL Server管理职能的用户划分为不同的用户组,每一组所具有的管理SQL Server的权限都是SQL Server内置的,即不能对其进行添加、修改和删除,只能向其中加入用户或者其他角色。 固定服务器角色描述sysadmin在 SQL Server 中进行任何活动。该角色的权限跨越所有其它固定
15、服务器角色serveradmin配置服务器范围的设置setupadmin添加和删除连接服务器,并执行某些系统存储过程(如 sp_serveroption)securityadmin管理服务器登录processadmin管理在 SQL Server 实例中运行的进程dbcreator创建和修改数据库diskadmin管理磁盘文件bulkadmin可执行大容量插入操作系统管理员:拥有SQL Server所有的权限许可。服务器管理员:管理SQL Server服务器端的设置。磁盘管理员:管理磁盘文件。进程管理员:管理SQL Server系统进程。安全管理员:管理和审核SQL Server系统登录。安装
16、管理员:增加、删除连接服务器,建立数据库复制以及管理扩展存储过程。数据库创建者:创建数据库,并对数据库进行修改。将一个登录账户加入到一个服务器角色中,可以使该登录账户自动拥有该服务器角色预定义的权限。一个登录账户可以同时属于多个角色,也可以不属于任何角色。默认时,只有sysadmin服务器角色含有预定成员。系统管理员组账户(BUILTINAdministrators)系统管理员账户(计算机名称Administrator)SQL Server账户sa二、固定数据库角色数据库角色:为某一用户或某一组用户授予不同级别的管理或访问数据库及数据库对象的权限这些权限是专有的并且还可以使一个用户具有属于同一
17、数据库的多个角色数据库角色分类:固定数据库角色用户自定义数据库角色主要讲固定数据库角色固定数据库角色是在每个数据库中都存在的预定义组SQL Server 2000已经预定义了这些角色所具有的管理、访问数据库的权限SQL Server 2000管理者不能对这些角色所具有的权限进行任何修改SQL Server中的每一个数据库中都有一组预定义的数据库角色,在数据库使用预定义的数据库角色可以将不同级别的数据库管理工作分给不同的角色,从而有效地实现工作权限的传递。SQL Server 2000提供了10种常用的固定数据库角色,它们是:public:维护全部默认权限。db_owner:数据库的所有者,可以
18、对所拥有的数据库执行任何操作。db_accessadmin:可以增加或者删除数据库用户、工作组和角色。db_addladmin:可以增加、删除和修改数据库中的任何对象。db_securityadmin:管理角色、角色成员,管理语句和对象权限。db_backupoperator:可以备份和恢复数据库。db_datareader:能且仅能对数据库中的任何表执行select操作,从而读取所有表的信息。db_datawriter:能够增加、修改和删除表中的数据,但不能进行select操作。db_denydatareader:不能读取数据库中任何表中的数据。db_denydatawriter:不能对数据
19、库中的任何表执行增加、修改和删除数据操作。 public角色是一个特殊的数据库角色,数据库中的每个用户都是public角色中的成员。不能将用户、组或者其他角色指定给public角色。在每一个数据库都包含public角色,不能删除public角色。例如:如果准备让某一用户临时或长期具有读取数据库对象的权限,那么只要把它设置为Dbdatareader数据库角色即可。10.3.2 角色管理角色管理的方式企业管理器系统存储过程一、管理服务器角色对于服务器角色来讲,数据库管理员能做的操作:添加和删除服务器角色中的成员不能删除服务器预定义的角色使用系统存储过程sp_addsrvrolemember将某一登
20、录加入到服务器角色内,使其成为该角色的成员。sp_addsrvrolemember loginame=login,rolename=role登录者名称服务器角色sp_dropsrvrolemember将某一登录者从某一服务器角色中删除sp_dropsrvrolemember loginame=login,rolename=role该成员从服务器角色中被删除后,便不再具有该服务器角色所设置的权限例:将登录者smallfish加入sysadmin角色中。sp_addsrvrolemember smallfish,sysadmin二、管理数据库角色sp_addrole用来创建一个新的数据库角色sp_
21、 addrole rolename=role, ownername=owner数据库角色名称数据库角色的所有者名称,默认为dbosp_droprole删除数据库角色sp_ droprole rolename=role注意:数据库角色中还有成员或仍有数据库对象,则无法删除该角色,首先删除成员或数据库对象。例:在数据库pubs建立新的数据库角色sleauthors。use pubsgosp_addrole sleauthorsgo例:在数据库pubs的数据库角色sleauthors删除。use pubsgosp_droprole sleauthorsgo10.4 数据库对象的安全管理10.4.1
22、权限类型10.4.2 权限管理数据库中的所有用户并不自动拥有对该数据库中所有对象的操作权限。数据库对象的所有权归数据库对象的创建者所有。.当一个非数据库拥有者想要访问数据库中的对象时,必须事先由数据库拥有者赋予该用户对指定对象的操作权限。10.4.1 权限类型权限:指该用户能够使用的数据对象和对这些数据库对象执行的操作。 权限分类:对象权限语句权限预定义权限1.对象权限对象权限:处理数据或执行数据库查询等操作时使用的权限,称为。对象类型可进行的操作表Select、update、delete、insert 、reference列Select、update视图Select、update、inser
23、t 、delete存储过程execute2.语句权限语句权限:用户在创建数据库或数据库项时,要求使用的权限,称为。语句权限涉及的操作: Create database:创建数据库Create table:创建表Create view:创建视图Create rule:创建规则Create default:创建缺省Create procedure:创建存储过程Create index:创建索引Backup database:备份数据库Backup log:备份事务日志3.预定义权限预定义权限:指系统安装以后有些角色和用户不必授权就有的权限如固定数据库角色或数据库对象所有者。只有固定角色或数据库对象
24、所有者的成员才可以执行某些操作。可以将对象权限或语句权限明确地赋予某个用户,但预定义权限不能明确地赋予和撤销。10.4.2 权限管理权限管理:授权拒绝撤销1.授权GRANT命令用来把权限授予某一用户,以允许该用户执行针对该对象的操作(update、select、delete、execute)或允许其运行某些语句(create table、create database)()对语句的许可Grant all|statement,n to security_account,n()对对象的许可grant all priviledges|permission,n (column,n) on table|view |on table|view (column,n)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度房屋买卖合同标的及安全生产责任书
- 2024年度机床交易协议
- 2024年工程招标投标与合同管理综合教程
- 2024年员工福利与薪酬调整协议
- 2024年度地铁站点防盗门安装工程合同
- 跨步电压课件教学课件
- 2024年度船舶建造买卖合同技术规格
- 2024丁方提供保险经纪服务合同
- 2024简单家具维修合同范本
- 2024年加工承揽合同标的与质量标准
- 护理质量安全与风险管理的案例分析
- 工程流体力学课后习题答案-(杜广生)
- AI智能客服应用实践
- 《止吐药临床应用》课件
- 幕墙工程检验批质量验收记录
- 危险化学品经营企业安全生产奖惩制度范本
- 报价单模板完
- 30题药品质量检测岗位常见面试问题含HR问题考察点及参考回答
- 《婴幼儿行为观察、记录与评价》期末试卷及答案 卷3
- 企业战略管理概述
- 消防安全概述
评论
0/150
提交评论