1、第第11 11章章 数据库的安全性数据库的安全性教学提示教学提示:安全性对于任何一种数据库管理系统来说:安全性对于任何一种数据库管理系统来说都是至关重要的,都是至关重要的,SQL Server 2000 SQL Server 2000 提供了有效的提供了有效的数据访问安全机制。本章以附录数据访问安全机制。本章以附录2 2SQLSQL上机考试与上机考试与辅助阅卷系统辅助阅卷系统安全性设计与实现为教学案例。安全性设计与实现为教学案例。教学要求教学要求:通过本章的学习,读者应该掌握:通过本章的学习,读者应该掌握SQL SQL 服务服务器安全性机制及其运用。器安全性机制及其运用。11.1 SQL Se
2、rver的安全机制11.2 服务器登录11.3 服务器角色11.4 数据库用户11.5 数据库角色11.6 管理权限 数据库管理系统的安全性 SQL Server 的安全机制 设置安全认证模式 服务器登录账户 考试案例简介 增加登录账户 阻止账户登录 删除登录账户 第第11 11章章 数据库的安全性数据库的安全性 添加数据库用户 修改和查看数据库用户 删除数据库用户 特殊数据库用户 dbo、guest 固定服务器角色 查看固定服务器角色成员 向固定服务器角色中添加成员 从固定服务器角色中删除成员 固定数据库角色 自定义数据库角色 管理数据库角色成员 权限 使用企业管理器管理权限 使用T-SQL
3、语句管理权限第第11 11章章 数据库的安全性数据库的安全性1安全机制 DBMS安全性 SQL安全机制2服务器登录3服务器角色4数据库用户5数据库角色6管理权限7本章实训8本章小结 1 SQL Server的安全机制的安全机制第第11 11章章 数据库的安全性数据库的安全性1安全机制 DBMS安全性 SQL安全机制2服务器登录3服务器角色4数据库用户5数据库角色6管理权限7本章实训8本章小结数据库管理系统的安全性通常包括两个数据库管理系统的安全性通常包括两个方面:一是指方面:一是指数据访问的安全性数据访问的安全性,二是,二是指指数据运行的安全性数据运行的安全性( (数据库维护:灾数据库维护:灾
4、难恢复等难恢复等) )。 数据访问的安全性数据访问的安全性是指设计和实现数据是指设计和实现数据库资源的授权访问,即设计和实现授权库资源的授权访问,即设计和实现授权的的用户用户在指定的在指定的时间时间、指定或允许的、指定或允许的地地点点( (计算机计算机) )、授权的访问、授权的访问方式方式访问数据访问数据库中的指定的数据资源。库中的指定的数据资源。 1.1 数据库管理系统的安全性数据库管理系统的安全性第第11 11章章 数据库的安全性数据库的安全性1安全机制 DBMS安全性 SQL安全机制2服务器登录3服务器角色4数据库用户5数据库角色6管理权限7本章实训8本章小结1.2 SQL Server
5、的安全机制的安全机制身份验证身份验证/ /连接权连接权权限验证权限验证/ /访问权访问权第第11 11章章 数据库的安全性数据库的安全性1安全机制 DBMS安全性 SQL安全机制2服务器登录3服务器角色4数据库用户5数据库角色6管理权限7本章实训8本章小结1.2 SQL Server的安全机制的安全机制搜索或搜索或pingping到安装到安装SQL Server SQL Server 服务器的计算机。服务器的计算机。在要访问的数据库中建立数据库用户并与登录账号关联。在要访问的数据库中建立数据库用户并与登录账号关联。登录登录SQL ServerSQL Server服务器的登录账户和口令。服务器的
6、登录账户和口令。数据库用户对要访问的库中的表数据库用户对要访问的库中的表( (视图视图) )设有访问权限。设有访问权限。数据库用户对要访问的库中的过程或函数设有访问权限。数据库用户对要访问的库中的过程或函数设有访问权限。数据库用户对要访问的表数据库用户对要访问的表( (视图视图) )中列的设有访问权限中列的设有访问权限。第第11 11章章 数据库的安全性数据库的安全性1安全机制 DBMS安全性 SQL安全机制2服务器登录3服务器角色4数据库用户5数据库角色6管理权限7本章实训8本章小结1.2 SQL Server的安全机制的安全机制第第11 11章章 数据库的安全性数据库的安全性2 2 服务器
7、的登录账户服务器的登录账户1安全机制2服务器登录 安全认证模式 登录账户 考试案例 增加登录账户 阻止账户登录 删除登录账户3服务器角色4数据库用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性【例11.1】查看或设置SQL Server的安全认证模式。(1) (1) 展开【服务器组】、右击服务器展开【服务器组】、右击服务器(2) (2) 单击【属性】,弹出【单击【属性】,弹出【SQL ServerSQL Server属性】,单击【安属性】,单击【安全性】全性】(3) (3) 在【身份验证】中【仅在【身份验证】中【仅WindowsWindows或【或
8、【 SQL ServerSQL Server和和WindowsWindows】选项。】选项。(4) (4) 在【审核级别】中选择【无】、【成功】、【失败】在【审核级别】中选择【无】、【成功】、【失败】或【全部或【全部 选项。选项。(5) (5) 在【启动服务账户】中选择【系统账户】或【本账户】在【启动服务账户】中选择【系统账户】或【本账户】选项。选项。(6) (6) 单击【确定】,重新启动单击【确定】,重新启动SQL ServerSQL Server。如图如图11.111.1所示所示。1安全机制2服务器登录 安全认证模式 登录账户 考试案例 增加登录账户 阻止账户登录 删除登录账户3服务器角色
9、4数据库用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性使用使用WindowsWindows操作系统的登录账户和密码连接操作系统的登录账户和密码连接SQLSQL服务器。服务器。与与 WindowsWindows安全系统集成在一起,优点:如安全安全系统集成在一起,优点:如安全验证和密码加密、审核、密码过期、最短密码长验证和密码加密、审核、密码过期、最短密码长度,多次登录请求无效后锁定账户。度,多次登录请求无效后锁定账户。只使用只使用WindowsWindows身份验证模式。身份验证模式。使用使用SQL ServerSQL Server的登录账户和密码
10、连接的登录账户和密码连接SQLSQL服务器。服务器。用户提供登录账户和密码先在用户提供登录账户和密码先在SQL ServerSQL Server中验证,中验证,如果验证失败后,再去进行如果验证失败后,再去进行WindowsWindows身份验证。身份验证。1安全机制2服务器登录 安全认证模式 登录账户 考试案例 增加登录账户 阻止账户登录 删除登录账户3服务器角色4数据库用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性【例11.2】使用企业管理器查看服务器登录账号。(1) (1) 展开【服务器组】、服务器、【安全性】。展开【服务器组】、服务器、【安
11、全性】。(2) (2) 单击【登录】,在详细信息窗格中显示登录账号信息。单击【登录】,在详细信息窗格中显示登录账号信息。如图如图11.211.2所示所示。登录账户登录账户(LoginName)(LoginName)是指用户登录是指用户登录( (连接连接) SQL ) SQL ServerServer服务器的账户和密码,是进入数据库服务器服务器的账户和密码,是进入数据库服务器的第一张通行证。的第一张通行证。【例11.3】使用T-SQL语句查看服务器登录账号 。1安全机制2服务器登录 安全认证模式 登录账户 考试案例 增加登录账户 阻止账户登录 删除登录账户3服务器角色4数据库用户5数据库角色6管
12、理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性sasa:SQL ServerSQL Server数据库服务器系统管理员登录账户。数据库服务器系统管理员登录账户。不可删除、不能更改。该账户拥有最高的管理权限,不不可删除、不能更改。该账户拥有最高的管理权限,不要轻易使用要轻易使用sasa。BUILTINAdministratorsBUILTINAdministrators:一个:一个WindowsWindows组账户,凡组账户,凡属于该组的属于该组的WindowsWindows账户都可作为账户都可作为SQL ServerSQL Server的登录账的登录账户,可删除。户
13、,可删除。1安全机制2服务器登录 安全认证模式 登录账户 考试案例 增加登录账户 阻止账户登录 删除登录账户3服务器角色4数据库用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性简介简介:从题库中:从题库中1616份试题通过随机份试题通过随机等方式为同学们发放试题;学生通等方式为同学们发放试题;学生通过上机方式完成试卷,并将其结果过上机方式完成试卷,并将其结果提交到数据库中;教师再从数据库提交到数据库中;教师再从数据库中取出试卷进行阅卷(其中选择题、中取出试卷进行阅卷(其中选择题、判断题、填空题自动批阅)并汇总判断题、填空题自动批阅)并汇总学生考试成
14、绩。学生考试成绩。1安全机制2服务器登录 安全认证模式 登录账户 考试案例 增加登录账户 阻止账户登录 删除登录账户3服务器角色4数据库用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性登录名登录名数据库用户数据库用户/角角色色描述描述SQL考试客户考试客户SQL考试客户考试客户只用在用户登录开始连接服务器时,登录后只用在用户登录开始连接服务器时,登录后用户成为相应的老师或学生。只可查询参数用户成为相应的老师或学生。只可查询参数表和学生信息表中学号、姓名、座号、身份表和学生信息表中学号、姓名、座号、身份证号,填写学生信息表中的座号。证号,填写学生信息
15、表中的座号。SQL考试教师考试教师SQL考试教师考试教师设置为数据库的所有者角色,具有本数据库设置为数据库的所有者角色,具有本数据库的所有权限,但不能修改试卷完成表中的答的所有权限,但不能修改试卷完成表中的答案、结果图、提交时间和提交机器的内容。案、结果图、提交时间和提交机器的内容。sqltest100001高翔高翔100001学号为学号为100001的学生登录账户。的学生登录账户。考生考生(角色角色)所有考生都是这个角色的成员,只能进行个所有考生都是这个角色的成员,只能进行个人答卷,不可查询别人的答案或标准答案,人答卷,不可查询别人的答案或标准答案,即只可查询参数表和执行即只可查询参数表和执
16、行p学生查询个人试学生查询个人试卷、卷、p学生提交试卷答案。学生提交试卷答案。saDbo服务器管理员服务器管理员sa,具有服务器和本数据库的,具有服务器和本数据库的所有权限。所有权限。1安全机制2服务器登录 安全认证模式 登录账户 考试案例 增加登录账户 阻止账户登录 删除登录账户3服务器角色4数据库用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性【例11.4】创建登录账号创建登录账号SQLSQL考试客户考试客户 。(1) (1) 双击双击SQLSQL上机考试与阅卷系统上机考试与阅卷系统.exe.exe文件,文件,自解压安装到:自解压安装到:E:E
17、:SQLSQL上机考试与阅卷系上机考试与阅卷系统统。(2) (2) 展开【服务器组】、服务器,右击【数据库】展开【服务器组】、服务器,右击【数据库】选择【所有任务】、【附加数据库】菜单,弹选择【所有任务】、【附加数据库】菜单,弹出【附加数据库】对话框,单击【出【附加数据库】对话框,单击【】按钮选】按钮选“E:“E:SQLSQL上机考试与阅卷系统上机考试与阅卷系统SQLSQL考试数考试数据库据库.mdf”.mdf”进行附加。进行附加。1安全机制2服务器登录 安全认证模式 登录账户 考试案例 增加登录账户 阻止账户登录 删除登录账户3服务器角色4数据库用户5数据库角色6管理权限7本章实训8本章小结
18、第第11 11章章 数据库的安全性数据库的安全性【例11.4】创建登录账号创建登录账号SQLSQL考试客户考试客户 。(3) (3) 展开【服务器组】、服务器、【安全性】。展开【服务器组】、服务器、【安全性】。(4) (4) 右击【登录】,选择【新建登录右击【登录】,选择【新建登录(L)(L)】,弹出【】,弹出【SQL SQL ServerServer登录属性登录属性 新建登录】,新建登录】,如图如图11.311.3所示所示。(5) (5) 单击【常规】、【服务器角色】、【数据库用户】选项单击【常规】、【服务器角色】、【数据库用户】选项卡填写相关内容:名称:卡填写相关内容:名称:SQLSQL考
19、试客户、数据库:考试客户、数据库:SQLSQL考试考试数据库、密码:数据库、密码:123123,选:,选:SQLSQL身份验证。身份验证。(6) (6) 单击【确定】,弹出【确认密码】对话框。单击【确定】,弹出【确认密码】对话框。(7) (7) 在【确认密码】对话框,填写【确认新密码】,并单击在【确认密码】对话框,填写【确认新密码】,并单击【确定】按钮。【确定】按钮。1安全机制2服务器登录 安全认证模式 登录账户 考试案例 增加登录账户 阻止账户登录 删除登录账户3服务器角色4数据库用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性【例11.5】使用
20、T-SQL语句创建服务器登录账号 。语法:语法:sp_addlogin sp_addlogin 登录名登录名 , , 密码密码 , , 默认数据库默认数据库 , , 默认语言默认语言功能:功能:创建创建SQL ServerSQL Server身份验证的登录账户。身份验证的登录账户。提示:用提示:用sp_defaultdbsp_defaultdb存储过程可以更改用户的存储过程可以更改用户的默认数据库。默认数据库。 用用sp_defaultlanguagesp_defaultlanguage存储过程可以更改存储过程可以更改用户的默认语言。用户的默认语言。1安全机制2服务器登录 安全认证模式 登录账
21、户 考试案例 增加登录账户 阻止账户登录 删除登录账户3服务器角色4数据库用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性语法:语法:sp_grantlogin sp_grantlogin 登录名登录名 功能:授予功能:授予Windows NTWindows NT用户或组的成员登用户或组的成员登录连接数据库服务器。录连接数据库服务器。注意注意:只有:只有sysadminsysadmin和和securityadminsecurityadmin角角色的账户可用色的账户可用sp_addloginsp_addlogin创建创建SQL SQL ServerS
22、erver身份验证的登录账户、可用身份验证的登录账户、可用sp_grantloginsp_grantlogin授权授权windowswindows账户登录账户登录SQL ServerSQL Server。1安全机制2服务器登录 安全认证模式 登录账户 考试案例 增加登录账户 阻止账户登录 删除登录账户3服务器角色4数据库用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性在在SQL ServerSQL Server中要阻止某账户的登录,对中要阻止某账户的登录,对于于WindowsWindows身份验证的账户可用身份验证的账户可用拒绝登录拒绝登录方式方式
23、阻止,对于阻止,对于SQL ServerSQL Server身份验证的身份验证的账户可以账户可以修改密码而不通知该密码的用修改密码而不通知该密码的用户方式户方式阻止,更彻底的方法是阻止,更彻底的方法是删除删除账户。账户。在在SQL ServerSQL Server应用中,有时应用中,有时SQL ServerSQL Server身身份验证的账户忘记登录密码需要数据库份验证的账户忘记登录密码需要数据库管理员重新设置密码,有时用户本人认管理员重新设置密码,有时用户本人认为登录可能泄漏需要更新自己的登录密为登录可能泄漏需要更新自己的登录密码。码。1安全机制2服务器登录 安全认证模式 登录账户 考试案例
24、 增加登录账户 阻止账户登录 删除登录账户3服务器角色4数据库用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性操作步骤操作步骤:(1)(1)展开【服务器组】、服务器、【安全性】,单击【登展开【服务器组】、服务器、【安全性】,单击【登录】。录】。(2)(2)右击要设置的右击要设置的SQL ServerSQL Server身份账户,选择【属性】,身份账户,选择【属性】,弹出【弹出【SQL ServerSQL Server登录属性】对话框。登录属性】对话框。(3)(3)在【常规】选项卡的密码区域输入新密码。在【常规】选项卡的密码区域输入新密码。(4)(4
25、)单击【确定】,弹出【确认密码】对话框。单击【确定】,弹出【确认密码】对话框。(5)(5)在【确认密码】对话框,填写【确认新密码】,并单击在【确认密码】对话框,填写【确认新密码】,并单击【确定】按钮。【确定】按钮。1安全机制2服务器登录 安全认证模式 登录账户 考试案例 增加登录账户 阻止账户登录 删除登录账户3服务器角色4数据库用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性语法:语法:sp_password sp_password 旧密码旧密码, , 新密码新密码 , , 登录账户登录账户 功能:功能:修改修改SQL ServerSQL Ser
26、ver身份账户的登录密码。身份账户的登录密码。【例11.6】以SQL考试教师身份连接查询分析器,连接时输入自己的登录密码1949,修改自己的登录密码,假设原密码为:1949,新密码为:2019。【例11.7】设置SQL考试教师的登录密码为2019。 1安全机制2服务器登录 安全认证模式 登录账户 考试案例 增加登录账户 阻止账户登录 删除登录账户3服务器角色4数据库用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性操作步骤操作步骤:(1)(1)展开【服务器组】,展开要设置的服务器,展开【服务器组】,展开要设置的服务器,展开【安全性】,单击【登录】。展
27、开【安全性】,单击【登录】。(2)(2)右击要设置的右击要设置的WindowsWindows身份验证账户,选择身份验证账户,选择【属性】菜单项,弹出【属性】菜单项,弹出【SQL ServerSQL Server登录属性】登录属性】对话框。对话框。(3)(3)在【常规】选项卡的身份验证区域单击【拒在【常规】选项卡的身份验证区域单击【拒绝访问】绝访问】/ /【允许访问】选项。【允许访问】选项。(4)(4)单击【确定】按钮。单击【确定】按钮。1安全机制2服务器登录 安全认证模式 登录账户 考试案例 增加登录账户 阻止账户登录 删除登录账户3服务器角色4数据库用户5数据库角色6管理权限7本章实训8本章
28、小结第第11 11章章 数据库的安全性数据库的安全性格式格式:sp_denylogin sp_denylogin 登录名登录名 功能功能:拒绝:拒绝Windows NTWindows NT用户或组的成员登用户或组的成员登录数据库服务器。录数据库服务器。注意注意:其中登录名是要授权的:其中登录名是要授权的Windows Windows NTNT用户或组,必须用用户或组,必须用Windows NTWindows NT域名域名限定,其格式为限定,其格式为“域名域名 组名组名”或或“域域名名 用户名用户名”。1安全机制2服务器登录 安全认证模式 登录账户 考试案例 增加登录账户 阻止账户登录 删除登录
29、账户3服务器角色4数据库用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性操作步骤操作步骤:(1)(1)展开【服务器组】,展开要设置的服务器,展开【安全展开【服务器组】,展开要设置的服务器,展开【安全性】,单击【登录】。性】,单击【登录】。(2)(2)右击要删除的登录账户,单击【删除】菜单项。右击要删除的登录账户,单击【删除】菜单项。(3)(3)在确认对话框中单击【是】按钮。在确认对话框中单击【是】按钮。1安全机制2服务器登录 安全认证模式 登录账户 考试案例 增加登录账户 阻止账户登录 删除登录账户3服务器角色4数据库用户5数据库角色6管理权限7本
30、章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性语法语法:sp_revokeloginsp_revokelogin 登录名登录名 功能:撤销功能:撤销WindowsWindows身份验证的登录账户。身份验证的登录账户。 语法语法: : sp_droploginsp_droplogin 登录名登录名 功能:功能:删除删除sql serversql server身份验证的登录账户。身份验证的登录账户。注意注意:只有:只有sysadminsysadmin和和securityadminsecurityadmin角角色的账户可用和色的账户可用和sp_droploginsp_droplog
31、in删除删除SQL SQL ServerServer身份验证的登录账户、可用身份验证的登录账户、可用sp_revokeloginsp_revokelogin撤销撤销windowswindows账户登录账户登录SQL ServerSQL Server。1安全机制2服务器登录 安全认证模式 登录账户 考试案例 增加登录账户 阻止账户登录 删除登录账户3服务器角色4数据库用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性角色角色是指服务器管理、数据库管理和访问的机制,包含是指服务器管理、数据库管理和访问的机制,包含两方面的内涵,一是角色的成员,二是角色的权
32、限,两方面的内涵,一是角色的成员,二是角色的权限,即指定角色中成员允许行使的权限。角色通过添加或即指定角色中成员允许行使的权限。角色通过添加或删除成员方法增减成员,通过授予、拒绝或撤销方法删除成员方法增减成员,通过授予、拒绝或撤销方法增减权限。因此,权限可理解为岗位或职务,通过任增减权限。因此,权限可理解为岗位或职务,通过任免指定职务的人员,通过赋予或撤销增减职务的权限。免指定职务的人员,通过赋予或撤销增减职务的权限。SQL Server 2000SQL Server 2000有两种类型的预定义角色:有两种类型的预定义角色:固定服务器固定服务器角色角色(ServerRole)(ServerRo
33、le)和和固定数据库角色固定数据库角色。这些角色是预。这些角色是预先定义的,角色的种类和每个角色的权限都是固定的、先定义的,角色的种类和每个角色的权限都是固定的、不可更改或删除,只允许为其添加或删除成员不可更改或删除,只允许为其添加或删除成员( (publicpublic角色角色除外除外, ,其权限可以增减,其成员是数据库其权限可以增减,其成员是数据库中所有的数据库用户中所有的数据库用户) )。1安全机制2服务器登录3服务器角色 固定服务器角色 查看成员 增加成员 删除成员4数据库用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性1安全机制2服务器登
34、录3服务器角色 固定服务器角色 查看成员 增加成员 删除成员4数据库用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性SQL Server SQL Server 事先设计了事先设计了8 8个固定的服务器角色。个固定的服务器角色。这些角色是定义在服务器级上,存在于用户这些角色是定义在服务器级上,存在于用户数据库之外,具有完成特定服务器级管理活数据库之外,具有完成特定服务器级管理活动的权限,其作用域在服务器范围内。动的权限,其作用域在服务器范围内。固定服务器角色的固定服务器角色的成员是服务器的登录账户成员是服务器的登录账户。最初可由最初可由sasa超级账
35、户将其他登录账户添加到超级账户将其他登录账户添加到任一种固定服务器角色中,也可由系统管理任一种固定服务器角色中,也可由系统管理员角色员角色(sysadmin)(sysadmin)或安全管理员角色或安全管理员角色(securityadmin)(securityadmin)的成员将其他登录账户添的成员将其他登录账户添加到任一种固定服务器角色中,还可以由每加到任一种固定服务器角色中,还可以由每种固定服务器角色的每个成员向该角色中添种固定服务器角色的每个成员向该角色中添加其他登录账户。加其他登录账户。1安全机制2服务器登录3服务器角色 固定服务器角色 查看成员 增加成员 删除成员4数据库用户5数据库角
36、色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性固定服务器角色固定服务器角色权力权力sysadmin系统管理员进行任何活动。serveradmin服务器管理员配置服务器范围的设置。setupadmin设置管理员添加和删除链接服务器,并执行某些系统存储过程(如sp_serveroption)。securityadmin安全管理员登录账号、用户、角色、权限等管理。processadmin进程管理员进程管理。dbcreator数据库创建者创建和改变数据库。diskadmin磁盘管理员管理磁盘文件。bulkadmin 执行 BULK INSERT 语句。1安全机制2服务
37、器登录3服务器角色 固定服务器角色 查看成员 增加成员 删除成员4数据库用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性(1)(1)展开【服务器组】,展开要查看的服务器名,再展开展开【服务器组】,展开要查看的服务器名,再展开【安全性】。【安全性】。(2)(2)单击【服务器角色】,在详细信息窗格显示固定服务器单击【服务器角色】,在详细信息窗格显示固定服务器角色。角色。(1)(1)展开【服务器组】,展开要查看的服务器名;展开【服务器组】,展开要查看的服务器名;(2)(2)展开【安全性】,单击【服务器角色】;展开【安全性】,单击【服务器角色】;(3)(3
38、)在详细信息窗格右击选定的角色,单击【属性】;在详细信息窗格右击选定的角色,单击【属性】;(4)(4)在【服务器角色属性】对话框中显示该角色的成员在【服务器角色属性】对话框中显示该角色的成员( (登登录账户录账户) )列表。列表。1安全机制2服务器登录3服务器角色 固定服务器角色 查看成员 增加成员 删除成员4数据库用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性 语法语法:sp_helpsrvrole sp_helpsrvrole 固定服务器角色名固定服务器角色名语法语法:sp_helpsrvrolemembersp_helpsrvrolemem
39、ber 固定服务器角色名固定服务器角色名1安全机制2服务器登录3服务器角色 固定服务器角色 查看成员 增加成员 删除成员4数据库用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性【例【例11.811.8】为使】为使SQLSQL考试教师考试教师 能够建立学生的登录账户,需能够建立学生的登录账户,需要向固定服务器角色安全管理员角色要向固定服务器角色安全管理员角色securityadminsecurityadmin中中添加成员添加成员SQLSQL考试教师考试教师 。(1)(1)展开【服务器组】、服务器、【安全性】。展开【服务器组】、服务器、【安全性】。(2
40、)(2)单击【服务器角色】,在详细信息窗格显示固定服务器单击【服务器角色】,在详细信息窗格显示固定服务器角色。角色。(3)(3)右击【右击【securityadminsecurityadmin】角色行,选择【属性】。】角色行,选择【属性】。(4)(4)在【服务器角色属性】中,单击【常规】选项卡在【服务器角色属性】中,单击【常规】选项卡 ,单,单击【添加】,击【添加】,如图如图11.411.4所示。所示。(5)(5)在添加成员对话框中,选择登录账户【在添加成员对话框中,选择登录账户【SQLSQL考试教师】、考试教师】、单击【确定】。单击【确定】。(6) (6) 在【服务器角色属性】对话框中,单击
41、【确定】。在【服务器角色属性】对话框中,单击【确定】。1安全机制2服务器登录3服务器角色 固定服务器角色 查看成员 增加成员 删除成员4数据库用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性语法格式语法格式:sp_addsrvrolemember sp_addsrvrolemember 登录用户名登录用户名 , 固定服务器角色名固定服务器角色名 【例【例11.911.9】设置】设置SQLSQL考试教师考试教师 为为sysadminsysadmin角色的成员,角色的成员,使其能够在使其能够在SQLSQL服务器中进行任何活动。服务器中进行任何活动。1安
42、全机制2服务器登录3服务器角色 固定服务器角色 查看成员 增加成员 删除成员4数据库用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性(1)(1)展开【服务器组】、服务器、【安全性】。展开【服务器组】、服务器、【安全性】。(2)(2)单击【服务器角色】在详细窗格显示固定服务器角色。单击【服务器角色】在详细窗格显示固定服务器角色。(3)(3)右击要删除成员的服务器角色行,单击【属性】。右击要删除成员的服务器角色行,单击【属性】。(4)(4)在【服务器角色属性】对话框中,单击【常规】卡。在【服务器角色属性】对话框中,单击【常规】卡。(5)(5)选择要删除
43、的登录账户、单击【删除】、【确定】。选择要删除的登录账户、单击【删除】、【确定】。语法格式语法格式:sp_dropsrvrolemember sp_dropsrvrolemember 登录用户名登录用户名 , 固定服务器角色名固定服务器角色名 【例【例11.1011.10】从】从sysadminsysadmin角色中删除角色中删除SQLSQL考试教师考试教师 成员成员1安全机制2服务器登录3服务器角色 固定服务器角色 查看成员 增加成员 删除成员4数据库用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性数据库用户数据库用户(dbAccess)(dbA
44、ccess):对于每个要求访问数据库的登录账对于每个要求访问数据库的登录账户,必须在要访问的数据库中建立该数据库的访问账户,户,必须在要访问的数据库中建立该数据库的访问账户,且与其登录账户链接关联,才可进入该数据库访问(注:且与其登录账户链接关联,才可进入该数据库访问(注:该数据库中有该数据库中有guestguest数据库用户或该登录账户加入相应固数据库用户或该登录账户加入相应固定数据库角色除外)。否则,该登录账户就无法进入该数定数据库角色除外)。否则,该登录账户就无法进入该数据库访问。这个数据库访问账户就是数据库用户据库访问。这个数据库访问账户就是数据库用户(dbAccess)(dbAcce
45、ss)。有关信息保存在各自数据库。有关信息保存在各自数据库sysuserssysusers表中。表中。1安全机制2服务器登录3服务器角色4数据库用户 添加用户 修改查看用户 删除用户 特殊用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性【例【例11.1111.11】为】为SQLSQL考试数据库考试数据库 添加数据库用户。添加数据库用户。(1)(1)展开【服务器组】,展开要查看的服务器名。展开【服务器组】,展开要查看的服务器名。(2)(2)展开【服务器】,展开【展开【服务器】,展开【SQLSQL考试数据库】数据库。考试数据库】数据库。(3)(3)右击
46、【用户】,单击【新建数据库用户右击【用户】,单击【新建数据库用户.】菜单,弹】菜单,弹出【数据库用户属性出【数据库用户属性新建用户】对话框。新建用户】对话框。如图如图11.511.5所示。所示。(4) (4) 从登录名下拉列表框中选择一个登录账号。从登录名下拉列表框中选择一个登录账号。(5) (5) 在用户名框中输入数据库用户名。在用户名框中输入数据库用户名。(6) (6) 单击【确定】按钮。单击【确定】按钮。1安全机制2服务器登录3服务器角色4数据库用户 添加用户 修改查看用户 删除用户 特殊用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性语法语
47、法:sp_grantdbaccess sp_grantdbaccess 登录账户名登录账户名, , 数据库用户名数据库用户名 功能:在当前数据库中,添加功能:在当前数据库中,添加 数据库用户名数据库用户名 为本数据库的为本数据库的用户,并与将账户名为用户,并与将账户名为 登录账户名登录账户名 的登录账户链接的登录账户链接( (关关联联) )。【例【例11.1211.12】在当前数据库】在当前数据库SQLSQL考试数据库考试数据库 中,创建中,创建SQLSQL考试教师考试教师 名字的数据库用户,并与名字的数据库用户,并与SQLSQL考试数据库考试数据库 登登录账户关联。录账户关联。1安全机制2服
48、务器登录3服务器角色4数据库用户 添加用户 修改查看用户 删除用户 特殊用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性修改数据库用户,修改数据库用户,即修改即修改用户所属的数据库的角色用户所属的数据库的角色及及所拥有的权限所拥有的权限。这些内容分别在介绍数据库。这些内容分别在介绍数据库角色和管理权限的部分介绍。角色和管理权限的部分介绍。查询分析器查询分析器:FExec Exec sp_helpusersp_helpuserFselect userselect userFselect select user_nameuser_name()()企业管
49、理器企业管理器:展开【服务器组】,服务器,【数据:展开【服务器组】,服务器,【数据库】,展开要查看的数据库,单击【用户】,库】,展开要查看的数据库,单击【用户】,在详细信息窗格中显示该数据库的用户。在详细信息窗格中显示该数据库的用户。查看数据库用户:查看数据库用户:1安全机制2服务器登录3服务器角色4数据库用户 添加用户 修改查看用户 删除用户 特殊用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性(1)(1)展开【服务器组】、服务器、【数据库】、数展开【服务器组】、服务器、【数据库】、数据库;据库;(2)(2)单击【用户】,在详细信息窗格中右击想要
50、删单击【用户】,在详细信息窗格中右击想要删除的数据库用户,选择【删除】,在确认对话除的数据库用户,选择【删除】,在确认对话框中单击【是】。框中单击【是】。语法语法:sp_revokedbaccess sp_revokedbaccess 数据库用户名数据库用户名 1安全机制2服务器登录3服务器角色4数据库用户 添加用户 修改查看用户 删除用户 特殊用户5数据库角色6管理权限7本章实训8本章小结第第11 11章章 数据库的安全性数据库的安全性dbodbo是数据库对象的所有者,每个数据库中都存是数据库对象的所有者,每个数据库中都存在,不能删除,具有操作该数据库的在,不能删除,具有操作该数据库的最高权