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