数据库安全及访问控制

上传人:宝路 文档编号:48231195 上传时间:2018-07-12 格式:PPT 页数:55 大小:1.05MB
返回 下载 相关 举报
数据库安全及访问控制_第1页
第1页 / 共55页
数据库安全及访问控制_第2页
第2页 / 共55页
数据库安全及访问控制_第3页
第3页 / 共55页
数据库安全及访问控制_第4页
第4页 / 共55页
数据库安全及访问控制_第5页
第5页 / 共55页
点击查看更多>>
资源描述

《数据库安全及访问控制》由会员分享,可在线阅读,更多相关《数据库安全及访问控制(55页珍藏版)》请在金锄头文库上搜索。

1、SQL Server第16章数据库安全及访问控制 16.1 SQL Server安全认证模式与设置 16.2 SQL Server登录账户的管理 16.3 数据库访问权限的建立与删除 16.4 角色管理 16.5 数据库权限管理 第16章数据库安全及访问控制 16.1 SQL Server安全认证模式与设置16.1.1 用户安全认证模式 16.1.2 设置安全认证模式 16.1 SQL Server安全认证模式与设置SQL Server作为DBMS,采用了三个层次的安全 控制策略: 1、用户首先登录到数据库服务器上(是服务器合法用 户)2. 然后使服务器用户(login)成为某个数据库的合法用

2、户,从而能够访问数据库。3. 让数据库用户在数据库中具有一定的权限(数据操 作权、创建对象权等)16.1.1 用户安全认证模式安全帐户认证是用来确认登录SQL Server的用户的登 录帐号和密码的正确性,由此来验证其是否具有连接 SQL Server的权限。 SQL Server 提供了两种确认用户的认证模式:(一)Windows NT认证模式。(二)混合认证模式。(一)Windows NT认证模式SQL Server数据库系统通常运行在Windows NT服务器平台上 ,而NT作为网络操作系统,本身就具备管理登录、验证用户合 法性的能力,因此Windows NT认证模式正是利用了这一用户安

3、 全性和帐号管理的机制,允许SQL Server也可以使用NT的用户 名和口令。在这种模式下,用户只需要通过Windows NT的认证 ,就可以连接到SQL Server,而SQL Server本身也就不需要管 理一套登录数据。需要注意的是:登录前必须将Windows NT账号加入到SQL Server 中 ,才能采用Windows NT账号登录到SQL Server上。 (二)混合认证模式混合认证模式允许用户使用Windows NT安全性或SQL Server安全性连接到SQL Server。在这种方式下,对于 可信连接用户的连接请求,系统将采用Windwos NT/2003认证模式,而对于

4、非可信连接用户则采用SQL Server认证模式。采用SQL Server模式认证时,系统检查是否已经建立了该用户的登录标识以及二者的口令是否 相同。通过认证后,用户应用程序才可连接到SQL Server服务器,否则系统将拒绝用户的连接请求。客户连接请求认证模式Windows认证模式混合认证模式SQL Server登录标识登录标识和口令正确?有效的NT/2003用户帐户?SQL Server拒绝用户连接SQL Server接受用户连接NNNYYYSQL Server对登录标识的认证过程可用下图表示:无论采用以上哪种认证模式,在用户连接到SQL Server后,他们的操作完全相同。比较起来,两种

5、认证模式各有 优劣:(1)Windows认证更为安全。(2)SQL Server认证管理较为简单,它允许应用程序的所有用户使用同一登录标识。为了便于用户帐户的集中管理,在Windows NT/2003平 台下,最好选用Windows认证模式。16.1.2 设置安全认证模式 其主要过程如下: 1. 打开SSMS,用右键单击要设置认证模式的服务器,从快捷菜 单中选择“属性(properties)”选项,则出现SQL Server属性 对话框。 2. 在SQL Server属性对话框中选择安全性选项。 3. 在安全性选项栏中,身份验证中可以选择要设置的认证模式, 同时审核级别中还可以选择跟踪记录用户

6、登录时的哪种信息,例 如登录成功或登录失败的信息等。 4. 在启动服务帐户中设置当启动并运行SQL Server时默认的登 录者中哪一位用户。16.2 SQL Server登录账户的管理 16.2.1 Windows NT登录帐户建立与删除 16.2.2 SQL Server登录账户建立与删除 系统内置已有的登录帐号:SQL Server有三个默认(内置)的用户登录帐号:即 sa、 builtinadministrators和guest。 Sa:SQL Server验证模式的系统管理员帐号; builtinadministrators: 是一个windows组帐号, 表示所有windows系统

7、管理员(Administrator)组中 的用户都可以登录到SQL Server; Guest:是来宾帐号。16.2.1 Windows NT登录帐户建立与删除1、建立其他新的Windows NT/2003账户 操作步骤如下: 以Administrators登录到Windows 2003; 选择“开始”“设置” “控制面板” “管理 工具” “计算机管理”; 在计算机管理窗口,选择“本地用户和组”,单击右 键,在快捷菜单上单击“新用户”,进入如下图界面; 在“新用户”对话框中输入新用户名和密码(这里用 户名是meng,密码是1111); 单击【确定】按钮,一个新的Windows NT/2003

8、账户建 立成功。 2.将Windows NT/2003账户加入到SQL Server中方法一:使用系统存储过程在SQL Server中,授予Windows NT/2003用户或用户组连接SQL Server服务器的权限。其语法格式为:sp_grantlogin loginame=login其中, login是Windows NT/2003用户或用户组名称,其 格式为“域用户名称” 。对于本地用户或组,则域名即为本地 计算机名,其格式为“计算机名用户名称”。 方法二:使用 例:将新建的Windows NT账户meng用系统存储过程添加到SQL Server系统中。EXEC sp_grantlog

9、in ZUFE-MXHmeng - ZUFE-MXH是计算机名,meng是Windows 2003用户 例:将Windows NT账户deng用方法添加到SQL Server 系统中 。3.用新建Windows 2003用户登录SQL Server如果想用新建Windows 2003用户登录SQL Server,首先将登录的默认数据库选择成用户自己建立的数据库(如果默 认数据库是master,新建用户登录权限限制不起作用)。在建立访问该数据库权限的基础上,然后可以在 Windows 2003中选择“开始”“关机”,注销原来的账户 ,用新的账户(比如meng)登录Windows 2003。登录成

10、功 后,启动SSMS就可以新的用户自动进入SQL Server。 4.废除Windows NT用户和SQL Server的连接系统存储过程sp_grantlogin所添加的登录标识均存储在 SQL Server的syslogins系统表中。以系统管理员身份调用系 统存储过程sp_revokelogin或从ssms中能够将它们从 syslogin系统表中删除,这时在登录窗口中被删除的登录标 识也将不再存在(需要刷新界面)。方法一:使用系统存储过程语法格式:sp_revokelogin loginame=login参数说明:login是待删除的SQL Server服务器登录标识。 方法二:使用ss

11、ms16.2.2 SQL Server登录账户建立与删除 在Windows NT/2003环境下,如果要使用SQL Server登录标识登录SQL Server,首先应将SQL Server的认证模式设置为混合模式。设置成混合认 证模式后,可以使用系统存储过程或ssms创建SQL Server登录标识。 1.创建SQL Server登录标识方法一:使用系统存储过程语法格式:sp_addlogin loginame=login,passwd=password,defdb=database,deflanguage=language,sid=sid,encryptopt=encryption_opt

12、ion参数说明:Login为注册标识或SQL Server用户名,长度为1到128个字符,其中可以包括字 母、符号和数字,但不能是空字符串,不能包含,不能与现有登录标识同名 ; Passwd为口令,默认口令是NULL(即不需要口令),用户可以在任何时候使用 ; Database指定用户在注册时连接到的默认数据库,如果没有指定默认数据库, 则默认数据库是master; sid 是新建登录标识的安全标识号,一般由系统自动建立。encryption_option说明登录标识口令是否需要加密存储到系统表中,其数据类 型为varchar(20),它有以下三种取值:NULL:默认设置,口令加密存储;ski

13、p_encryption:要求不要加密口令。skip_encryption_old:所提供的口令被SQL Server前期版本加密,这 种取值主要用于早期版本数据库的升级。language说明用户注册到SQL Server时使用的默认语言代码。 例:创建SQL Server登录账户wang。EXEC sp_addlogin loginame= wang, passwd=1234 -新建登录标识wang EXEC sp_addlogin loginame= wang1, passwd=1234 , defdb=stu方法二:使用ssmsselect * from sys.syslogins2用新

14、建SQL server登录用户登录SQL Server首先设置安全认证模式成混合模式,再将登录的默认数据库选 择成用户自己建立的数据库,在建立该用户访问该数据库权限 的基础上,启动ssms,先断开原来的连接,再重新连接,然后 选择SQL server身份认证,输入新的用户名和密码即可用新用 户身份访问SQL Server。3、删除SQL server 登录标识如果管理员要禁止某个用户连接SQL server 服务器,则可调用系 统存储过程sp_droplogin或使用ssms将其登录标识从系统中删除。方法一:使用系统存储过程语法格式:sp_droplogin loginame = login参

15、数说明:login为存储在syslogin系统表中的SQL server登录标识。删除标 识也就是删除该用户在syslogin表中的对应记录。方法二:使用ssms删除步骤类似上述Windows账户删除。 16.3 数据库访问权限的建立与删除 在数据库中,一个用户或工作组取得合法的登录帐号,只 表明该帐号通过了Windows NT认证或者SQL Server认证,但 不能表明其可以对数据库数据和数据库对象进行某种或者某 些操作,只有当他同时拥有了数据库访问权限后,才能够访 问数据库。 16.3.1 建立用户访问数据库的权限 16.3.2 删除用户访问数据库的权限 16.3.1建立用户访问数据库的

16、权限方法一:使用系统存储过程语法格式:sp_grantdbaccessloginame=login,name_in_db=name_in_db将登录账号用户或组添加到当前数据库,使该用户能够具有在当前数据 库中执行活动的权限。参数说明:login是登录标识名称或Windows NT/2003用户或用户组名称。name_in_db是在数据库中为login参数指定登录标识所创建的用 户名称,它可以与登录名称不同,也可以相同。省略该参数时,所创建 的数据库用户名称与login相同。 例:将上述建立的Windows 用户“ZUFE-MXHmeng” 添加到“教 学管理”数据库,并取名MANAGER。USE

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件

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