SQLServer安全性控制_第1页
SQLServer安全性控制_第2页
SQLServer安全性控制_第3页
SQLServer安全性控制_第4页
SQLServer安全性控制_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1SQL Server的安全控制的安全控制 2一、数据库权限的种类及用户的分类一、数据库权限的种类及用户的分类 1.1.权限的种类权限的种类 第一类是对数据库管理系统进行维护的权限第一类是对数据库管理系统进行维护的权限; ; 第二类是对数据库中的对象和数据进行操作的权限第二类是对数据库中的对象和数据进行操作的权限; ; 第一种是对数据库对象的权限,包括创建、删除和修改数第一种是对数据库对象的权限,包括创建、删除和修改数 据库对象;据库对象; 第二种是对数据库数据的操作权,包括对表、视图数据的第二种是对数据库数据的操作权,包括对表、视图数据的 增、删、改、查。增、删、改、查。 2.2.数据库用户

2、的分类数据库用户的分类 数据库中的用户按其操作权限的大小可分为如下三类:数据库中的用户按其操作权限的大小可分为如下三类: (1 1)数据库系统管理员:具有一切权限。)数据库系统管理员:具有一切权限。 (2 2)数据库对象拥有者:对其所拥有的对象具有一切权限。)数据库对象拥有者:对其所拥有的对象具有一切权限。 (3 3)普通用户:只具有对数据库数据的增、删、改、查权。)普通用户:只具有对数据库数据的增、删、改、查权。 3二、二、 SQL Server的安全控制的安全控制 一个用户如果要访问一个用户如果要访问SQL ServerSQL Server数据库中的数据,他必须要经数据库中的数据,他必须要

3、经过三个认证过程:过三个认证过程: 第一个认证过程是身份验证,这时用登录账号来标识用户,身第一个认证过程是身份验证,这时用登录账号来标识用户,身份份 验证只验证用户连接到验证只验证用户连接到SQL ServerSQL Server数据库服务器的资格,即数据库服务器的资格,即验证该用户是否具有连接到数据库服务器的验证该用户是否具有连接到数据库服务器的“连接权连接权”。 第二个认证过程是当用户访问数据库时,他必须具有对具体数第二个认证过程是当用户访问数据库时,他必须具有对具体数据库的据库的“访问权访问权”,即验证用户是否是数据库的合法用户。,即验证用户是否是数据库的合法用户。 第三个认证过程是当用

4、户操作数据库中的数据或对象时,他必第三个认证过程是当用户操作数据库中的数据或对象时,他必须具有所要进行的操作的须具有所要进行的操作的“操作权操作权”,即验证用户是否具有操,即验证用户是否具有操作许可。作许可。 4SQL ServerSQL Server的用户有两种类型:的用户有两种类型:WindowsWindows授权用户:来自于授权用户:来自于WindowsWindows的用户或组;的用户或组;SQLSQL授权用户:来自于非授权用户:来自于非WindowsWindows的用户,我们也将这种用户称的用户,我们也将这种用户称为为 SQLSQL用户。用户。 SQL ServerSQL Server

5、为不同的用户类型提供有不同的安全认证模式:为不同的用户类型提供有不同的安全认证模式:1.Windows1.Windows身份验证模式身份验证模式 WindowsWindows身份验证模式允许用户身份验证模式允许用户Windows NTWindows NT或或Windows 2000Windows 2000用户连接到用户连接到SQL ServerSQL Server。2.2.混合验证模式混合验证模式 混合验证模式表示混合验证模式表示SQL ServerSQL Server接受接受WindowsWindows授权用户和授权用户和SQLSQL授授权用户。如果不是权用户。如果不是WindowsWind

6、ows操作系统的用户希望也能使用操作系统的用户希望也能使用SQL SQL ServerServer,则应该选择混合验证模式,则应该选择混合验证模式。53.3.设置验证模式设置验证模式 在企业管理器中设置在企业管理器中设置SQL ServerSQL Server的身份验证模式的方法为:的身份验证模式的方法为: (1 1)在企业管理器的控制台上,在要设置验证模式的服务器名)在企业管理器的控制台上,在要设置验证模式的服务器名 上单击鼠标右键,然后在弹出的菜单上选择上单击鼠标右键,然后在弹出的菜单上选择“属性属性” ” 。 (2 2)在窗口中选择)在窗口中选择“安全性安全性”标签页,在窗口的标签页,在

7、窗口的“安全性安全性” 成组框中的成组框中的“身份验证身份验证”部分,有两个选项:部分,有两个选项:“SQL SQL Server Server和和Windows”Windows”以及以及“仅仅Windows”Windows”。前一个选项代。前一个选项代 表混合验证模式,后一个选项代表表混合验证模式,后一个选项代表WindowsWindows验证模式。验证模式。 (3 3)单击)单击“确定确定”按钮。按钮。67三、三、管理管理SQL Server登录账号登录账号 内置系统帐号:内置系统帐号:用户创建自己的登录帐号:用户创建自己的登录帐号:8l建立登录账号建立登录账号 使用企业管理器建立登录账号

8、的步骤为:使用企业管理器建立登录账号的步骤为:(1 1)展开)展开“安全性安全性”,单击,单击“登录登录”节点。节点。(2 2)右击内容窗格中的空白处,从弹出式菜单中选择)右击内容窗格中的空白处,从弹出式菜单中选择“新建登新建登录录”命令。命令。(3 3)设置如下选项:)设置如下选项:在在“名称名称”文本框中输入登录的账号名。文本框中输入登录的账号名。在在“身份验证身份验证”区域中,有如下两个选择:区域中,有如下两个选择: “WindowsWindows身份验证身份验证”模式模式 “SQL ServerSQL Server身份验证身份验证”模式模式在在“数据库数据库”下拉列表框中选择登录到下拉

9、列表框中选择登录到SQL ServerSQL Server之后默认情之后默认情况下要连接的数据库。况下要连接的数据库。在在“语言语言”列表框中选择显示给用户的信息所使用的默认语言。列表框中选择显示给用户的信息所使用的默认语言。9例子例子:添加一个添加一个windows用户用户user; 添加一个添加一个SQL用户用户ss;10l修改登录账号的属性修改登录账号的属性 对于已经建立好的对于已经建立好的SQL ServerSQL Server登录账号,还可以对登录账号的登录账号,还可以对登录账号的密码等进行修改。密码等进行修改。 使用企业管理器修改登录密码的步骤为:使用企业管理器修改登录密码的步骤为

10、: 右击想要修改密码的登录账号,从弹出式菜单中选择右击想要修改密码的登录账号,从弹出式菜单中选择“属性属性”命令,可以进行如下更改:命令,可以进行如下更改:l更改密码:在更改密码:在“常规常规”选项卡上,可以在选项卡上,可以在“密码密码”文本框中输入文本框中输入新的密码。新的密码。l更改默认数据库:在更改默认数据库:在“数据库数据库”列表框中选择一个新的数据库。列表框中选择一个新的数据库。l更改显示给用户所使用的语言:在更改显示给用户所使用的语言:在“语言语言”列表框中选择一个新列表框中选择一个新的语言。的语言。11l删除登录账号删除登录账号 若不再需要某个登录账号,或者不再允许某个登录账号若

11、不再需要某个登录账号,或者不再允许某个登录账号访问访问SQL ServerSQL Server,则可以将其删除。使用企业管理器删除登,则可以将其删除。使用企业管理器删除登录账号的步骤为:录账号的步骤为:(1 1)在控制台上依次单击)在控制台上依次单击“Microsoft SQL Servers”Microsoft SQL Servers”和和“SQL ServerSQL Server组组”左边的加号,然后单击服务器,展开树形左边的加号,然后单击服务器,展开树形目录。目录。(2 2)展开)展开“安全性安全性”节点,然后单击节点,然后单击“登录登录”节点。节点。(3 3)在右边的内容窗格中,右击想

12、要删除的登录账号,从弹)在右边的内容窗格中,右击想要删除的登录账号,从弹出的菜单中选择出的菜单中选择“删除删除”命令或按命令或按DeleteDelete键。键。(4 4)若确实要删除此登录账号,)若确实要删除此登录账号, 则单击则单击“是是”,否则单击,否则单击“否否”,取消删除操作。,取消删除操作。12四、四、 管理数据库用户管理数据库用户 用户具有了登录账号之后,他只能连接到用户具有了登录账号之后,他只能连接到SQL ServerSQL Server服务服务器上,但不具有访问任何用户数据库的能力,只有成为了数器上,但不具有访问任何用户数据库的能力,只有成为了数据库的合法用户后,才能访问此数

13、据库。据库的合法用户后,才能访问此数据库。 l建立数据库用户建立数据库用户 使用企业管理器建立数据库用户的步骤为:使用企业管理器建立数据库用户的步骤为:(1 1)单击要建立数据库用户的数据库节点,右击)单击要建立数据库用户的数据库节点,右击“用户用户”,并,并在弹出的菜单上选择在弹出的菜单上选择“新建数据库用户新建数据库用户”命令。命令。(2 2)在)在“登录名登录名”列表框中选择一个登录账号名。默认时列表框中选择一个登录账号名。默认时“用用户名户名”文本框的内容和用户选择的登录账号一样,用户可以在文本框的内容和用户选择的登录账号一样,用户可以在“用户名用户名”文本框中输入一个新的数据库用户名

14、,也可以采用文本框中输入一个新的数据库用户名,也可以采用与登录账号一样的用户名。与登录账号一样的用户名。(3 3)单击)单击“确定确定”关闭此窗口。关闭此窗口。13例子例子: 添加添加SQL用户用户ss为用户数据库为用户数据库st的用户。的用户。14每个用户都属于每个用户都属于public角色角色,使用户具有使用户具有一些默认权限一些默认权限.15l删除数据库用户删除数据库用户 从当前数据库中删除一个用户,就是去掉了登录账号和数从当前数据库中删除一个用户,就是去掉了登录账号和数据库用户之间的映射关系。删除数据库用户之后,登录账号仍据库用户之间的映射关系。删除数据库用户之后,登录账号仍然存在。然

15、存在。 使用企业管理器删除数据库用户的过程为:使用企业管理器删除数据库用户的过程为: (1 1)在控制台上,展开服务器组以及服务器。)在控制台上,展开服务器组以及服务器。 (2 2)展开)展开“数据库数据库”节点,然后展开要删除用户的数据库。节点,然后展开要删除用户的数据库。 (3 3)单击)单击“用户用户”,然后在右边的内容窗格中右击想要删除的,然后在右边的内容窗格中右击想要删除的数据库用户,从弹出的菜单中选择数据库用户,从弹出的菜单中选择“删除删除”命令。命令。 (4 4)在弹出的确认窗口中,单击)在弹出的确认窗口中,单击“是是”,删除此用户。,删除此用户。思考思考:如果某个登录帐号已是某

16、些数据库的用户如果某个登录帐号已是某些数据库的用户,这个帐这个帐号能删除吗号能删除吗?16五、五、 管理权限管理权限 在在SQL Server 2000 中,权限分为三种中,权限分为三种:1对象权限对象权限 对象权限是指用户对数据库中的表、视图等对象的操作权,相当对象权限是指用户对数据库中的表、视图等对象的操作权,相当于数据库操作语言(于数据库操作语言(DML)的语句权限,)的语句权限,2语句权限语句权限 语句权限相当于数据定义语言(语句权限相当于数据定义语言(DDL)的语句权限,这种权限专)的语句权限,这种权限专指是否允许执行下列语句:指是否允许执行下列语句:CREATE TABLE、CRE

17、ATE VIEW等等与创建数据库对象有关的操作。与创建数据库对象有关的操作。3隐含权限隐含权限 隐含权限是指由隐含权限是指由SQL Server预定义的服务器角色、数据库角色、预定义的服务器角色、数据库角色、数据库拥有者和数据库对象拥有者所具有的权限,隐含权限相当于数据库拥有者和数据库对象拥有者所具有的权限,隐含权限相当于内置权限,不需要再明确地授予这些权限。内置权限,不需要再明确地授予这些权限。17权限的管理包含如下三个内容:权限的管理包含如下三个内容:授予权限:授予权限:允许用户或角色具有某种操作权。允许用户或角色具有某种操作权。收回权限:收回权限:不允许用户或角色具有某种操作权,或者收回

18、曾经授不允许用户或角色具有某种操作权,或者收回曾经授 予予 的权限。的权限。拒绝访问:拒绝访问:拒绝某用户或角色具有某种操作权,既使用户或角色由拒绝某用户或角色具有某种操作权,既使用户或角色由 于继承而获得这种操作权,也不允许执行相应的操作。于继承而获得这种操作权,也不允许执行相应的操作。对象权限对象权限语句权限语句权限隐含权限隐含权限181使用企业管理器管理数据库对象权限使用企业管理器管理数据库对象权限(1)展开)展开“数据库数据库”并展开要设置权限的数据库,单击并展开要设置权限的数据库,单击“用户用户” 节点。节点。(2)在内容窗格中右击要设置权限的数据库用户,并从弹出的)在内容窗格中右击

19、要设置权限的数据库用户,并从弹出的菜菜 单中选择单中选择“所有任务所有任务”下的下的“管理权限管理权限”命令。可以进行命令。可以进行如下设如下设 置:置: 授予权限授予权限 拒绝权限拒绝权限 收回权限收回权限19例子例子: 为数据库为数据库st用户用户ss添加表添加表student的有关权限。的有关权限。202使用企业管理器管理语句权限使用企业管理器管理语句权限 使用企业管理器管理数据库用户的语句权限的过程为:使用企业管理器管理数据库用户的语句权限的过程为:(1)展开)展开“数据库数据库”,右击要设置语句权限的数据库,并从弹,右击要设置语句权限的数据库,并从弹出出 的菜单中选择的菜单中选择“属

20、性属性”,在弹出的窗口中,选择,在弹出的窗口中,选择“权限权限”选项选项 卡。卡。(2)在要设置的语句权限以及用户所对应的方框中单击鼠标,)在要设置的语句权限以及用户所对应的方框中单击鼠标, 使其中出现相应标记。使其中出现相应标记。21例子例子: 为数据库为数据库st用户用户ss添加语句权限。添加语句权限。223使用使用Transact-SQL语句管理对象权限语句管理对象权限 在在Transact-SQL语句中,用于管理权限的语句有三个:语句中,用于管理权限的语句有三个: GRANT语句:语句:用于授权;用于授权; REVOKE语句:语句:用于收回权限;用于收回权限; DENY语句:语句:用于

21、拒绝权限。用于拒绝权限。23管理对象权限的语句的语法格式为:管理对象权限的语句的语法格式为: GRANT | DENY 对象权限名对象权限名 , ON 表名表名 | 视图名视图名 | 存储过程名存储过程名 TO 数据库用户名数据库用户名 | 用户角色名用户角色名 , REVOKE 对象权限名对象权限名 , ON 表名表名 | 视图名视图名 | 存储过程名存储过程名 FROM 数据库用户名数据库用户名 | 用户角色名用户角色名 , 24 例例1:为用户:为用户user1授予授予Student表的查询权。表的查询权。 GRANT SELECT ON Student TO user1 例例2:为用户

22、:为用户user1授予授予SC表的查询权和插入权。表的查询权和插入权。 GRANT SELECT,INSERT ON SC TO user1 例例3:收回用户:收回用户user1授予授予Student表的查询权。表的查询权。 REVOKE SELECT ON Student FROM user1 例例4:拒绝用户:拒绝用户user1对对SC表的更改权。表的更改权。 DENY UPDATE ON SC TO user1例子例子: 为数据库为数据库st用户用户ss授予表授予表student的插入权限。的插入权限。254使用使用Transact-SQL语句管理语句权限语句管理语句权限 管理语句权限的

23、语句同管理对象权限的语句一样,也有管理语句权限的语句同管理对象权限的语句一样,也有GRANT、REVOKE和和DENY三个,其语法格式为:三个,其语法格式为: GRANT | DENY 语句权限名语句权限名 , TO 数据库用户名数据库用户名 | 用户角色名用户角色名 , REVOKE 语句权限名语句权限名 , FROM 数据库用户名数据库用户名 | 用户角色名用户角色名 , 26例例1:授予:授予user1具有创建数据库表的权限。具有创建数据库表的权限。 GRANT CREATE TABLE TO user1 例例2:授予:授予user1和和user2具有创建数据库表和视图的权限。具有创建数据库表和视图的权限。 GRANT CREATE TABLE, CREATE VIEW TO user1, user2 例例3:收回授予:收回授予user1创建数据库表的权限。创建数据库表的权限。 REVOKE CREATE TABLE FROM user127六、角色六、角色在数据库中,为便于对用户及权限的管理,将一组具在数据库中,为便于对用户及权限的管理,将一组具有相同权限的用户组织在一起,这一组具有相同权限有相同权限的用户组织在一起,这一组具有相同权限的用户就称为角色(的用户就称为角

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论