资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,*,SQL Server的安全把握,1,一、数据库权限的种类及用户的分类,1.权限的种类,第一类是对数据库治理系统进展维护的权限;,其次类是对数据库中的对象和数据进展操作的权限;,第一种是对数据库对象的权限,包括创立、删除和修改数,据库对象;,其次种是对数据库数据的操作权,包括对表、视图数据的,增、删、改、查。,2.数据库用户的分类,数据库中的用户按其操作权限的大小可分为如下三类:,1数据库系统治理员:具有一切权限。,2数据库对象拥有者:对其所拥有的对象具有一切权限。,3一般用户:只具有对数据库数据的增、删、改、查权。,2,二、SQL Server的安全把握,一个用户假设要访问SQL Server数据库中的数据,他必需要经过三个认证过程:,第一个认证过程是身份验证,这时用登录账号来标识用户,身份 验证只验证用户连接到SQL Server数据库效劳器的资格,即验证该用户是否具有连接到数据库效劳器的“连接权”。,其次个认证过程是当用户访问数据库时,他必需具有对具体数据库的“访问权”,即验证用户是否是数据库的合法用户。,第三个认证过程是当用户操作数据库中的数据或对象时,他必需具有所要进展的操作的“操作权”,即验证用户是否具有操作许可。,3,SQL Server的用户有两种类型:,Windows授权用户:来自于Windows的用户或组;,SQL授权用户:来自于非Windows的用户,我们也将这种用户称为,SQL用户。,SQL Server为不同的用户类型供给有不同的安全认证模式:,1.Windows身份验证模式,Windows身份验证模式允许用户Windows NT或Windows 2023用户连接到SQL Server。,2.混合验证模式,混合验证模式表示SQL Server承受Windows授权用户和SQL授权用户。假设不是Windows操作系统的用户希望也能使用SQL Server,则应中选择混合验证模式。,4,3.设置验证模式,在企业治理器中设置SQL Server的身份验证模式的方法为:,1在企业治理器的把握台上,在要设置验证模式的效劳器名,上单击鼠标右键,然后在弹出的菜单上选择“属性”。,2在窗口中选择“安全性”标签页,在窗口的“安全性”,成组框中的“身份验证”局部,有两个选项:“SQL,Server和Windows”以及“仅Windows”。前一个选项代,表混合验证模式,后一个选项代表Windows验证模式。,3单击“确定”按钮。,5,6,三、治理SQL Server登录账号,内置系统帐号:,用户创立自己的登录帐号:,7,建立登录账号,使用企业治理器建立登录账号的步骤为:,1开放“安全性”,单击“登录”节点。,2右击内容窗格中的空白处,从弹出式菜单中选择“新建登录”命令。,3设置如下选项:,在“名称”文本框中输入登录的账号名。,在“身份验证”区域中,有如下两个选择:,“Windows身份验证”模式,“SQL Server身份验证”模式,在“数据库”下拉列表框中选择登录到SQL Server之后默认状况下要连接的数据库。,在“语言”列表框中选择显示给用户的信息所使用的默认语言。,8,例子:添加一个windows用户user;,添加一个SQL用户ss;,9,修改登录账号的属性,对于已经建立好的SQL Server登录账号,还可以对登录账号的密码等进展修改。,使用企业治理器修改登录密码的步骤为:,右击想要修改密码的登录账号,从弹出式菜单中选择“属性”命令,可以进展如下更改:,更改密码:在“常规”选项卡上,可以在“密码”文本框中输入新的密码。,更改默认数据库:在“数据库”列表框中选择一个新的数据库。,更改显示给用户所使用的语言:在“语言”列表框中选择一个新的语言。,10,删除登录账号,假设不再需要某个登录账号,或者不再允许某个登录账号访问SQL Server,则可以将其删除。使用企业治理器删除登录账号的步骤为:,1在把握台上依次单击“Microsoft SQL Servers”和“SQL Server组”左边的加号,然后单击效劳器,开放树形名目。,2开放“安全性”节点,然后单击“登录”节点。,3在右边的内容窗格中,右击想要删除的登录账号,从弹出的菜单中选择“删除”命令或按Delete键。,4假设确实要删除此登录账号,则单击“是”,否则单击“否”,取消删除操作。,11,四、治理数据库用户,用户具有了登录账号之后,他只能连接到SQL Server效劳器上,但不具有访问任何用户数据库的力气,只有成为了数据库的合法用户后,才能访问此数据库。,建立数据库用户,使用企业治理器建立数据库用户的步骤为:,1单击要建立数据库用户的数据库节点,右击“用户”,并在弹出的菜单上选择“新建数据库用户”命令。,2在“登录名”列表框中选择一个登录账号名。默认时“用户名”文本框的内容和用户选择的登录账号一样,用户可以在“用户名”文本框中输入一个新的数据库用户名,也可以承受与登录账号一样的用户名。,3单击“确定”关闭此窗口。,12,例子:添加SQL用户ss为用户数据库st的用户。,13,每个用户都属于public角色,使用户具有一些默认权限.,14,删除数据库用户,从当前数据库中删除一个用户,就是去掉了登录账号和数据库用户之间的映射关系。删除数据库用户之后,登录账号照旧存在。,使用企业治理器删除数据库用户的过程为:,1在把握台上,开放效劳器组以及效劳器。,2开放“数据库”节点,然后开放要删除用户的数据库。,3单击“用户”,然后在右边的内容窗格中右击想要删除的数据库用户,从弹出的菜单中选择“删除”命令。,4在弹出确实认窗口中,单击“是”,删除此用户。,思考:假设某个登录帐号已是某些数据库的用户,这个帐号能删除吗?,15,五、治理权限,在SQL Server 2023 中,权限分为三种:,1对象权限,对象权限是指用户对数据库中的表、视图等对象的操作权,相当于数据库操作语言DML的语句权限,,2语句权限,语句权限相当于数据定义语言DDL的语句权限,这种权限专指是否允许执行以下语句:CREATE TABLE、CREATE VIEW等与创立数据库对象有关的操作。,3隐含权限,隐含权限是指由SQL Server预定义的效劳器角色、数据库角色、数据库拥有者和数据库对象拥有者所具有的权限,隐含权限相当于内置权限,不需要再明确地授予这些权限。,16,权限的治理包含如下三个内容:,授予权限:允许用户或角色具有某种操作权。,收回权限:不允许用户或角色具有某种操作权,或者收回曾经授 予,的权限。,拒绝访问:拒绝某用户或角色具有某种操作权,既使用户或角色由,于继承而获得这种操作权,也不允许执行相应的操作。,对象权限,语句权限,隐含权限,17,1使用企业治理器治理数据库对象权限,1开放“数据库”并开放要设置权限的数据库,单击“用户”,节点。,2在内容窗格中右击要设置权限的数据库用户,并从弹出的菜,单中选择“全部任务”下的“治理权限”命令。可以进展如下设,置:,授予权限,拒绝权限,收回权限,18,例子:为数据库st用户ss添加表student的有关权限。,19,2使用企业治理器治理语句权限,使用企业治理器治理数据库用户的语句权限的过程为:,1开放“数据库”,右击要设置语句权限的数据库,并从弹出,的菜单中选择“属性”,在弹出的窗口中,选择“权限”选项,卡。,2在要设置的语句权限以及用户所对应的方框中单击鼠标,,使其中消逝相应标记。,20,例子:为数据库st用户ss添加语句权限。,21,3使用Transact-SQL语句治理对象权限,在Transact-SQL语句中,用于治理权限的语句有三个:,GRANT语句:用于授权;,REVOKE语句:用于收回权限;,DENY语句:用于拒绝权限。,22,治理对象权限的语句的语法格式为:,GRANT|DENY 对象权限名 ,,ON 表名|视图名|存储过程名,TO 数据库用户名|用户角色名 ,,REVOKE 对象权限名 ,,ON 表名|视图名|存储过程名,FROM 数据库用户名|用户角色名 ,,23,例1:为用户user1授予Student表的查询权。,GRANT SELECT ON Student TO user1,例2:为用户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的插入权限。,24,4使用Transact-SQL语句治理语句权限,治理语句权限的语句同治理对象权限的语句一样,也有GRANT、REVOKE和DENY三个,其语法格式为:,GRANT|DENY 语句权限名 ,,TO 数据库用户名|用户角色名 ,,REVOKE 语句权限名 ,,FROM 数据库用户名|用户角色名 ,,25,例1:授予user1具有创立数据库表的权限。,GRANT CREATE TABLE TO user1,例2:授予user1和user2具有创立数据库表和视图的权限。,GRANT CREATE TABLE,CREATE VIEW TO user1,user2,例3:收回授予user1创立数据库表的权限。,REVOKE CREATE TABLE FROM user1,26,六、角色,在数据库中,为便于对用户及权限的治理,将一组具有一样权限的用户组织在一起,这一组具有一样权限的用户就称为角色Role,角色,角色,系统预定义的,固定角色,用户依据自己的需要定义的用户角色,固定的效劳器角色,固定的数据库角色,是为整个效劳器设置的,是为具体的数据库设置的,属于数据库一级的角色,27,1.固定的效劳器角色,28,为用户设置效劳器角色:,29,2.固定的数据库角色,数据库的用户确定是public角色.且该角色的权限可改。,例子:为数据库st公共用户授予表student的查询权限。,30,为用户设置数据库角色:,31,建立用户自定义的角色,使用企业治理器建立用户自定义的角色的过程为:,1在把握台上开放效劳器组,并开放效劳器。,2开放“数据库”,并开放要添加用户自定义角色的数据库。,3右击“角色”节点,选择“新建数据库角色”命令。,4在“名称”文本框中输入角色的名字。,5选中“标准角色”单项选择按钮,以建立一个标准的数据库角色。,6此时,可以在此单击“添加”按钮,直接在此角色中添加成员。,7单击“确定”按钮,关闭此窗口。,32,33,1.用户自定义角色的授权,2.添加和删除用户自定义角色的成员,34,
展开阅读全文