安全生产_数据库安全性概述1

上传人:F****n 文档编号:91881186 上传时间:2019-07-03 格式:PPT 页数:60 大小:335.01KB
返回 下载 相关 举报
安全生产_数据库安全性概述1_第1页
第1页 / 共60页
安全生产_数据库安全性概述1_第2页
第2页 / 共60页
安全生产_数据库安全性概述1_第3页
第3页 / 共60页
安全生产_数据库安全性概述1_第4页
第4页 / 共60页
安全生产_数据库安全性概述1_第5页
第5页 / 共60页
点击查看更多>>
资源描述

《安全生产_数据库安全性概述1》由会员分享,可在线阅读,更多相关《安全生产_数据库安全性概述1(60页珍藏版)》请在金锄头文库上搜索。

1、数据库安全性,1、数据库安全性的定义,是指保护数据库中的各种数据,以防止因非法使用而造成数据的泄密和破坏。简单的说就是保护数据库以防止不合法的使用所造成的数据泄露。,SQL SERVER的验证模式,验证模式分为: 身份验证模式和登录验证模式 内容包括: 确认用户帐号是否有效; 能否访问系统; 能访问系统的哪些数据。,身份验证方式,身份验证是指当用户访问系统时,系统对该用户的账号和口令的确认过程。SQL SERVER能识别两种类型的身份验证方式: WINDOWS身份验证方式; SQL SERVER身份验证方式。 用户和客户机在连接SQL时,可任选其一。,1、WINDOWS身份验证方式: 用户身份

2、由WINDOWS域建立,只要能登录Windows NT/2000就可连接SQL SERVER。 2、SQL SERVER身份验证: 由SQL SERVER系统管理员定义SQL 的登录帐号和密码,用户连接时必须提供帐号和口令。,设置步骤:,在“服务器”/ “安全性”/“登录”中新建登录名; 右键单击“服务器”,选择“属性”/“安全性”标签,并设置“混合模式”以设置服务登录的帐户; 右键单击“服务器”,选择“编辑注册”,选择“SQL身份验证”,并输入登录名称及密码。,登录验证机制,登录验证机制指当用户登录时,SQL SERVER采用什么系统来验证用户身份。 1、NT验证模式: 功能:指要登录到SQ

3、L SERVER系统的用户身份由NT系统来进行验证,此时无法以SQL SERVER帐号登录。,特点:,用户和组由WINDOWS管理及维护,数据库管理员的工作仅是管理数据库; WINDOWS具有很强的管理用户帐户的工具; 可以在SQL SERVER增加用户组。,2、混合安全模式,功能:指用户登录时,其身份由WINDOWS和SQL SERVER共同认证。 适用对象:适合用于外界用户访问数据库或不能登录到WINDOWS域时使用。,特点: 混合模式允许非WINDOWS客户、Internet客户和混合的客户组连接到SQL SERVER ; 增加了安全性方面的选择。 验证模式的设置: 右键单击“服务器”,

4、选择“属性”/“安全性”标签,并设置适合的验证模式,登录管理,管理员可以从WINDOWS用户或用户组中创建登录帐号或者创建一个新的SQL SERVER登录帐号。 登录帐号存储在主数据库的sysxlogins系统表中; 在创建帐号过程中,管理员可以为每个用户指定一个默认数据库;,系统管理员帐户,1、默认的系统管理员帐户,均具有SQL SERVER系统和所有数据库的全部权限: sa:特殊登录名,代表混合验证机制下SQL SERVER的系统管理员,其始终关联DBO用户。 BUILTINAdministrator:是NT系统的系统管理员组。,2、主要负责:,创建登录名; 配置服务器; 创建、删除数据库

5、; 无须考虑所有权和权限,可以操作各种数据库对象; 停止、启动服务器; 停止在服务器上运行的无效过程,,使用T-SQL 语言创建、查看、删除 SQL SERVER登录帐户(SQL 身份验证),创建登录帐户格式: SP_addlogin 帐户名 ,新帐户密码,默认数据库 例:sp_addlogin abc,123,teach 查看登录帐户的信息: sp_helplogins 帐户名 例:sp_helplogins abc,若省略帐户名,则查看所有的帐户信息,删除登录帐户:删除一个登录帐户,必须确认该登录帐户无关联的用户存在于数据库系统中,即不存在孤儿型的用户(没有任何登录名与其映射)。删除步骤:

6、 先删除用户:sp_revokedbaccess 用户名 再删除帐户:sp_droplogin 帐户名 注:不能删除系统管理者sa以及当前连接到SQL的登录。,1、创建一个名为seu,密码:12345,默认数据库为teach的SQL登录帐号。 sp_addlogin seu, 12345, teach 注:此时未向该帐号授予访问teach数据库的权限因此暂不能登录SQL。 2、查看该登录帐号的信息 sp_helplogins seu 3、删除该帐户 sp_droplogin seu,用企业管理器设置:,服务器/安全性/登录/新建登录 在弹出窗口的“常规”标签中:若选择WINDOWS身份验证,则

7、需选择域名及域帐户若选择SQL SERVER验证模式,则需输入登录帐户名、密码及确认密码。 单击“服务器角色”:授予该登录用户服务器范围内的权限; 单击“数据库访问”:指定该登录用户可以访问的数据库。,用户管理,用户是基于数据库的名称,是和登录帐户相关联的。,1、登录名和数据库用户名的关系:,登录名是访问SQL SERVER的通行证,其本身并不能使用户访问服务器中的数据库;用户名是登录名在数据库中使用的名称,一个用户名必须和一个登录名相关联; 登录帐户和数据库用户是SQL SERVER进行权限管理的两种不同的对象。 一个登录帐户可与服务器上的所有数据库进行关联,产生多个数据库用户,但在一个数据

8、库中只能拥有一个用户; 而一个数据库用户只能映射到一个登录帐户。 SQL SERVER允许数据库为每个用户对象分配不同的权限,为数据库用户授权的过程也就是为登录对象提供对数据库的访问权限的过程。,用T-SQL语句创建、查看、删除数据库用户,创建步骤:(1)创建登录帐户;(2)将登录帐户映射为数据库中同名的用户。 1、在当前数据库中创建用户:sp_grantdbaccess 登录名 ,当前数据库用户名 例:sp_grantdbaccess abc,abc1 注:若省略用户名,则创建一个和登录名同名的用户名,且一个登录名在同一数据库中只能创建一个用户。 2、查看数据库用户: sp_helpuser

9、 用户名 注:省略用户名则查看所有用户信息。,3、删除数据库用户,格式: sp_revokedbaccess 用户名 注: 该过程不能删除以下角色,用户: public角色、DBO、数据库中的固定角色; master和tempdb数据库中的guest用户帐户; Windows NT组中的Windows NT用户。,例:为刚创建的seu帐号授予访问teach库的权限,即创建数据库用户,用户名称为abcd Use teach Go Sp_grantdbaccess seu,abcd 注:授予权限后就可利用该帐号登录SQL服务器了。,用企业管理器设置数据库用户,“服务器”/“数据库”/“目标数据库”

10、/“用户”,右键菜单中选择“新建数据库用户”然后在弹出窗口中进行设置。,改变数据库所有权,一个数据库只能有一个数据库所有者,其不能被删除,默认情况下,sa帐户映射到库中的用户是dbo,改变所有权步骤: 打开要更改所有权的数据库: 更改所有权: sp_changedbowner 登录号 注:若将所有权授予某个登录时,该登录不能在数据库中已存在用户,若存在则先删除用户后授予所有权。,例:将teach的所有权授序seu帐号: use teach Go Sp_revokedbaccess abcd 先删除已有用户名 go sp_changedbowner seu -授予所有权给seu帐号,角色管理,1

11、、定义:角色类似于组,一般将具有相同权限的一群用户群添加为某角色成员,然后给这个角色授予适当的权限。这样该用户群的所有用户就都具有了该角色的权限,而没有必要逐个对每一个用户去授予相同的权限 2、优点:避免大量重复的工作,简化和方便对用户的管理。,3、分类: 服务器角色:是服务器级的一个对象,主要用于对登录名设置其对服务器的管理权限 数据库角色:是数据库级的一个对象,主要用于对数据库用户设置其对数据库的管理权限 注:同一用户可属于多个角色。,固定服务器角色,SQL安装完成后,系统自动创建8个固定的服务器角色,对于服务器角色来说,数据库管理员只能完成以下两个操作:添加和删除服务器角色中的成员,而不

12、能删除服务预定义的角色。,1固定服务器角色及功能:,查看固定服务器角色 sp_helpsrvrole 查看某个固定服务器角色的权限: sp_srvrolepermission 服务器角色,2、使用T-SQL命令管理服务器角色,将登录帐户添加到服务器角色内,使其成为该角色的成员: sp_addsrvrolemember 登录名,服务器角色名 注:角色设定好后,必须重启方能生效 将某一登录者从某一服务器角色中删除,使其不再具有该角色权限 sp_dropsrvrolemember 登录名,服务器角色名,例:为seu登录授予固定服务器角色为sysadmin,成功后再将其从该服务器角色删除,使其不再具有

13、该角色权限。 sp_addsrvrolemember seu,sysadmin -此时用seu重新连接后,可执行SYSADMIN的所有功能。 Go Sp_dropsrvrolemember seu,sysadmin Go -此时只有访问权限,数据库角色,数据库角色的作用域都只在其对应的数据库内,数据库角色分为固定数据库角色和自定数据库角色 (一)固定数据库角色 固定数据库角色的权限由系统固定,用户不能更改,,其中PUBLIC角色是一个特殊的数据库角色,每位数据库用户都是该角色成员,主要负责维护数据库中用户的全部默认许可,不能将用户和组或角色指定为PUBLIC角色。 注: 数据库角色在数据库级别

14、上被定义,存在于数据库之内,存储在每个数据库sysusers表中 固定角色不能被删除、修改和创建 固定数据库角色可指定给其他登录帐户。,将固定数据库角色指定给其他用户格式:,sp_addrolemember 固定数据库角色名,用户名 将固定数据库角色指定给其他用户格式步骤: 将数据库切换到需要指定角色的目标数据库中; 为登录名在该数据库中添加用户; 为用户指定固定数据库角色。,例:为登录名seu分配固定数据库角色db_datareader 第一步:为登录名在数据库中授予用户 Sp_grantdbaccess seu,abcd 第二步:为该用户分配固定数据库角色 Sp_addrolemember

15、 db_datareader,abcd,将用户从固定数据库角色中删除:,sp_droprolemember 固定数据库角色名,用户名,(二)用户自定义数据库角色,自定义数据角色当打算为某些数据库用户设置相同的权限但预定义的数据库角色不能满足所实际要求的权限时,就通过自定义新数据库角色来满足这一要求,从而使这些用户能够在数据库中实现某一特定功能。,(1)特点:,在同一数据数据库中用户或具有多个不同的自定义角色,可任意组合,角色可以进行嵌套,从而实现不同级别的安全性,(2)分类:,标准角色:通过对用户权限等级的认定而将用户划分为不同的用户组,使用户总是相对于一个或多个角色,从而实现管理的安全性。所

16、有的预定义的数据库角色或SQL管理者自定义的某一角色都是标准角色。 应用角色:当想让某些用户只能通过特定的应用程序间接地存取数据库中的数据而不是直接地存取数据库数据时就应该考虑使用应用角色。当某一用户使用了应用角色时,它便放弃了已被赋予的所有数据库专有权限,它所拥有的只是应用角色设置的权限。通过应用角色,能以可控制方式来限定用户的语句或对象权限。,两者的区别:,应用角色不像标准角色那样具有组的含义,因此不能包含成员; 当用户在数据库中激活应用角色时,必须提供密码,而标准角色并不受口令保护。 应用程序角色默认设置为未激活状态,要由其他标准角色激活后才能使用。,用T-SQL语言创建、删除标准角色,1、创建标准角色: Sp_addrole 标准角色名 2、删除标准角色: Sp_droprole 标准角色名 3、将数据库用户添加至标准角色中: Sp_addrolemember 标准

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

最新文档


当前位置:首页 > 商业/管理/HR > 其它文档

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