




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1SQLSERVER第六章安全管理SQLSERVER
数据库管理系统SQLSERVER第六章安全管理2第六章安全管理SQLServer2005安全架构身份验证模式登录管理用户管理角色管理权限管理SQLSERVER第六章安全管理36.1SQLServer安全架构两个安全阶段:身份验证和权限验证视图安全机制加密方法:加密机制:证书、对称密钥、非对称密钥用户架构分离安全与加密函数withencryption子句审核SQLServerProfiler(事件跟踪)SQLSERVER第六章安全管理46.2SQLServer的验证模式Windows身份验证模式混合身份验证模式(即SQLServer身份验证模式)设置验证模式SQLSERVER第六章安全管理51Windows身份验证模式WINDOWS身份验证模式是指通过Windows用户帐户连接到SQLServer,用户身份由Windows系统验证优点:高级安全特性访问速度快SQLSERVER第六章安全管理62SQLServer身份验证模式混合身份验证模式允许用户使用Windows和SQLServer身份进行连接,由SQLServer检验登录和密码的正确性优点:非Windows客户、Internet客户能够通过混合模式建立连接增加了安全性的选择SQLSERVER第六章安全管理73设置验证模式方法一:在“已注册的服务器”选择服务器,单击鼠标右键,在弹出的菜单上选择“属性”项,在“编辑”窗口进行设置。方法二:在“对象资源管理器”中,右键单击服务器,再单击选择“属性”项。在“安全性”页上的“服务器身份验证”下进行设置。SQLSERVER第六章安全管理8身份验证过程sysxloginsWindowsWindowsGrouporUserSQLServerLoginAccountsysxlogins受信任连接验证登录名和密码SQLServerSQLSERVER第六章安全管理96.3登录管理系统管理员登录账号使用ManagementStudio管理登录帐户用T-SQL管理登录帐户SQLSERVER第六章安全管理101系统管理员登录账号两个默认的系统管理员登录帐号,可以在服务器中执行任何活动saBUILTIN\Administrators(本地管理员组)注:应给sa账号指定口令SQLSERVER第六章安全管理112用ManagementStudio管理登录账户创建登录账户查看、修改或删除登录帐户SQLSERVER第六章安全管理122用ManagementStudio管理登录账户创建登录账户:1)选择服务器,展开“安全性”、“登录名”,并选择“新建登录名”,进入对话框。2)选择验证模式,根据需要输入帐户名称、密码3)单击“服务器角色”,查看固定服务器角色中的成员4)单击“用户映射”,查看登录到数据库用户的映射5)最后按“确定”按钮。SQLSERVER第六章安全管理132用ManagementStudio管理登录账户查看、修改登录账户:1)选择服务器,展开“安全性”、“登录名。2)单击“登录名”下某一登录帐户,在弹出菜单上单击“属性”项,可查看该帐户信息3)单击“删除”,能删除该登录帐户。SQLSERVER第六章安全管理143用T-SQL管理登录账户新建登录账户:CreateLOGINlogin_name{WITH<option_list>}sp_addlogin修改登录帐户:ALTERLOGIN;删除帐户:DROPLOGIN;sp_droplogin;sp_revokeloginSQLSERVER第六章安全管理153用T-SQL管理登录账户新建登录账户:CreateLOGINlogin_name{WITH<option_list>|FROM<source>}sp_addlogin修改登录帐户:ALTERLOGIN;删除帐户:DROPLOGIN;sp_droplogin;sp_revokeloginSQLSERVER第六章安全管理166.4用户管理登录名与数据库用户名的关系使用ManagementStudio管理用户用T-SQL管理用户SQLSERVER第六章安全管理171登录名与数据库用户名的关系登录名是访问SQLServer的通行证,要访问具体的数据库,还要有该数据库的用户名默认情况下,用户名和登录名使用相同的名称一个登录帐户可以映射到不同的数据库,一个数据库用户只能映射到一个登录帐户一个登录名在一个数据库中只能有一个用户SQLSERVER第六章安全管理182使用ManagementStudio管理用户在创建登录帐户时,可指定该帐户允许访问的数据库,同时生成该登录帐户在数据库中的用户步骤:1)选择服务器和要设置的数据库,展开“安全性”、“用户”2)选择“新建数据库用户”,在弹出的对话框输入用户名字及对应的登录名,按“确定”完成。SQLSERVER第六章安全管理193用T-SQL管理用户CREATEUSER语句;sp_adduserALTERUSERDROPUSER;sp_revokeaccessSQLSERVER第六章安全管理203用T-SQL管理用户例1:创建名为AborHam且密码为340$Uxwp7Mcxo7Khy的服务器登录名,然后在Sales中创建对应的数据库用户AborHam。CREATELOGINAborHamWITHPASSWORD=‘340$Uxwp7Mcxo7Khy’USESalesCREATEUSERAborHamSQLSERVER第六章安全管理21dbo和guest用户dbo用户
dbo是特殊的数据库用户,它是数据库所有者,可在数据库中执行所有的操作。服务器角色sysadmin的任何成员都会对应到每个数据库内的一个dbo用户,且服务器角色sysadmin任何成员创建的任何对象自动属于dbo。dbo无法删除。guest用户由系统创建数据库后自动生成,它的作用是让未经授权的或未明确定义的用户具有一定的权限,guest也无法删除。SQLSERVER第六章安全管理226.5角色管理public角色固定服务器角色:在服务器级别定义数据库角色:在数据库级别定义用户定义的角色应用程序角色SQLSERVER第六章安全管理231public角色public角色在每个数据库中都存在,是系统预定义的角色。每个数据库用户都自动是此角色的成员,无法在此角色中添加或删除用户。public角色提供数据库中用户的默认权限,不能删除。用户将继承授予public角色的权限。SQLSERVER第六章安全管理242固定服务器角色RolePermission系统管理员sysadmin可以执行任何活动数据库创建者Dbcreator创建更改和删除数据库磁盘管理员diskadmin管理磁盘文件进程管理员processadmin管理在SQLServer中运行的进程服务器管理员serveradmin设置服务器范围的配置选项,关闭服务器安装管理员setupadmin可以安装复制安全管理员securityadmin管理和审计登录帐号大容量管理员Bulkadmin执行BULKINSERT语句SQLSERVER第六章安全管理25固定服务器角色固定服务器角色具有服务器级别上的管理权限,存储在master.syslogins系统表中为固定服务器角色添加/删除登录帐号:设置登录帐号属性系统存储过程:sp_addsrvrolemembers;sp_dropsrvrolemembers用managementstudio添加/删除角色成员查看固定服务器角色的成员:
sp_helpsrvrolemembersSQLSERVER第六章安全管理26使用ManagementStudio添加/删除角色成员方法一:选择服务器和要设置的数据库,展开“安全性”->“服务器角色”,在某固定服务器角色上单击右键,选择菜单中的“属性”项,单击“添加”或“删除”按钮选择成员。方法二:选择服务器和要设置的数据库,展开“安全性”->“登录名”,在某登录名上右击,选择“属性”,出现“登录属性”对话框。单击“服务器角色”选项卡,直接多项选择该登录名所属的固定服务器角色。SQLSERVER第六章安全管理27固定服务器角色例1:将登录名HelenS添加到sysadmin固定服务器角色EXECsp_addsrvrolemember‘HelenS’用managementstudio添加例2:查看sysadmin固定服务器角色的成员
sp_helpsrvrolemember‘sysadmin’SQLSERVER第六章安全管理283固定数据库角色RolePermissionpublicMaintainalldefaultpermissionsdb_ownerPerformanydatabaseroleactivitydb_accessadminAddorremovedatabaseusers,groups,androlesdb_ddladminAdd,modify,ordropdatabaseobjectsdb_securityadminAssignstatementandobjectpermissionsdb_backupoperatorBackupdatabasedb_datareaderReaddatafromanytabledb_datawriterAdd,change,ordeletedatafromalltablesdb_denydatareaderCannotreaddatafromanytabledb_denydatawriterCannotchangedatainanytableSQLSERVER第六章安全管理293固定数据库角色RolePermissionpublic提供数据库中用户的默认权限db_owner(dbo)可以执行数据库所有的维护和配置活动db_accessadmin可为登录帐户添加或删除访问权限db_ddladmin可以在数据库中运行任何数据定义语言(DDL)db_securityadmin可以修改角色成员身份和管理权限db_backupoperator可以备份该数据库db_datareader可以读取所有用户表中的所有数据db_datawriter可以在所有用户表中添加、删除或更改数据db_denydatareader不能读取用户表中的任何数据db_denydatawriter不能添加、删除或更改用户表中的任何数据SQLSERVER第六章安全管理30固定数据库角色为固定数据库角色添加/删除用户:系统存储过程:sp_addrolemembers;sp_droprolemembers用managementstudio添加/删除角色成员查看固定数据库角色的成员:
sp_helprolemembersSQLSERVER第六章安全管理31使用ManagementStudio添加/删除角色成员选择要处理的固定数据库角色,右击后选择“属性”。在对话框中,单击“添加”按钮,选择要加入数据库角色的用户名。按“确定”完成。SQLSERVER第六章安全管理324用户自定义角色用于组织数据库用户的安全当一组用户在SQLServer中有相同的权限时,可建用户角色用户定义的角色只适用于数据库级别SQLSERVER第六章安全管理33(1)用户角色的创建、修改或删除用managementstudio创建、删除角色用T-SQL创建、删除角色CREATEROLErole_name[AUTHORIZATIONowner_name];sp_addroleALTERROLErole_nameWITHNAME=new_nameDROPROLEsp_helprole返回当前数据库中的所有角色SQLSERVER第六章安全管理34使用ManagementStudio创建、删除角色选择服务器和要设置的数据库,展开“安全性”->“角色”->“数据库角色”,在数据库角色目录上单击右键,选择菜单中的“新建数据库角色”项,指定角色名与所有者,单击“确定”完成。在某数据库角色上单击右键,选择菜单中的“属性”项,可查阅或修改角色信息。单击“删除”项完成删除。注:角色成员必须为空才能删除。SQLSERVER第六章安全管理35用户自定义角色例1:创建用户Miller拥有的数据库角色buyersCREATEROLEbuyersAUTHORIZATIONMiller用managementstudio添加例2:将角色buyers的名称更改为purchasingALTERROLEbuyersWITHNAME=purchasingSQLSERVER第六章安全管理36(2)角色成员的添加与删除用managementstudio添加与删除角色成员用T-SQL添加与删除角色成员sp_addrolemember[@rolename=]’role’,[@membername]=‘security_account’(安全账户)sp_droprolemembersp_helprolemember返回当前数据库中的某个角色的成员信息SQLSERVER第六章安全管理37使用ManagementStudio添加/删除角色成员方法一:在前面提过的某数据库角色的“数据库角色属性”对话框中,“常规”选项卡上,右下角成员操作区,单击“添加”或“删除”按钮选择成员。方法二:选择要设置的数据库,展开“安全性”->“用户”,选择某具体用户,右击,选择“属性”,出现“数据库用户”对话框。在右下角成员操作区,直接多项选择该用户名所属的数据库角色。SQLSERVER第六章安全管理38角色成员的添加与删除例1:将用户Ben添加到数据库角色purchasingSp_addrolemember‘purchasing’,’Ben’用managementstudio添加SQLSERVER第六章安全管理395应用程序角色用于应用程序级的安全,不允许用户直接操作表中数据,只能通过特定的应用程序访问特点:
定义在数据库中,类似于用户定义的数据库角色,可以分配权限建立时,需提供口令无成员非活动的,使用时需要激活(sp_setapprole)SQLSERVER第六章安全管理40应用程序角色的创建与删除用managementstudio创建、删除角色用T-SQL创建、删除角色CREATEAPPLICATIONROLEappication_role_nameWITHPASSWORD=‘password’[,DEFAULT_SCHEMA=schema_name]ALTERAPPLICATIONROLEDROPAPPLICATIONROLEsp_setapprole,sp_unsetapproleSQLSERVER第六章安全管理41使用ManagementStudio创建、删除角色选择服务器和要设置的数据库,展开“安全性”->“角色”->“应用程序角色”,在数据库角色目录上单击右键,选择菜单中的“新建应用程序角色”项,在“常规”选项卡指定角色名称指定角色名称、默认结构、密码等信息,单击“确定”完成。SQLSERVER第六章安全管理426.6权限管理用户权限是指不同的用户对不同的数据对象允许执行的操作权限主体与安全对象的概念权限类型管理权限SQLSERVER第六章安全管理431主体与安全对象的概念1)主体主体是可以请求SQLServer数据资源的个体、组,每个主体有唯一的安全标识符(SID)。主体分为如下几种:Windows级别的主体:Windows登录名SQLServer级别的主体:SQLServer登录名数据库级别的主体:数据库用户、数据库角色、应用程序角色SQLSERVER第六章安全管理441主体与安全对象的概念2)安全对象安全对象是系统控制对其访问的资源。安全对象范围有服务器、数据库、架构三个层次。安全对象范围服务器:包含端点、登录帐户、数据库等安全对象范围数据库:包含用户、角色、应用程序角色、程序集、服务、证书、非对称密钥、对称密钥、约定等安全对象范围架构:包含类型、约束、函数、过程、队列、统计信息、表、视图等SQLSERVER第六章安全管理452权限类型预定义FixedRoleObjectOwner对象SELECTINSERT UPDATE DELETE
REFERENCESSELECTUPDATE REFERENCESEXECTABLEVIEWCOLUMNSTOREDPROCEDUREDDLCREATEDATABASECREATETABLECREATEVIEWCREATEPROCEDURECREATERULECREATEDEFAULTCREATEFUNCTIONBACKUPDATABASEBACKUPLOGSQLSERVER第六章安全管理463为用户和角色分配权限用managementstudio管理权限用T-SQL管理权限授予、拒绝和废除许可权限“授予权限”许可访问“拒绝权限”即禁止访问废除已授予或已拒绝的权限SQLSERVER第六章安全管理47授予、拒绝,废除许可权限GRANT:
授予REVOKE:回收DENY:
拒绝SQLSERVER第六章安全管理48使用ManagementStudio管理权限可从主体或安全对象出发来设置权限从主体:选择用户或角色,右击“属性”项,单击“安全对象”选项卡,对权限进行设置从安全对象:选择数据库或表,右击“属性”项,单击“权限”选项卡,选定用户或角色对其权限进行设置SQLSERVER第六章安全管理49用T-SQL管理权限GRANT、REVOKE、DENY例:授予用户Ben对Sales中的Employee的SELECT权限GRANTSELECTONSales.EmployeeTOBENSQLSERVER第六章安全管理50用户最终获得权限的必要条件1、用户已直接被授予权限或者其已
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年英国留学本科入学合同的重点注意事项
- 私人房屋建筑施工协议书版
- 工程咨询与服务合同范本
- 个人知识产权许可合同样本
- 专利申请转让合同范本
- (广东二模)2025年广东省高三高考模拟测试(二)地理试卷(含答案)
- 《劳动经济学专题研究》课件
- 2025职场新规:掌握合同签订要点确保劳动权益
- 2025注册造价工程师合同管理单项选择题
- 《华夏饮食文化》课件
- 管理体系文件编号规则
- 四年级语文教案 囊萤夜读-公开课比赛一等奖
- 企业数字化转型解决方案
- 外研版五年级下册英语Module 8 Unit 1课件
- 混凝土模板支撑工程专项施工方案(140页)
- 羽毛球教案36课时
- 第三章煤层气的储层压力及赋存状态
- 住宅(小区)智能化系统检测报告
- ansys教学算例集汽轮机内蒸汽平衡态与非平衡态仿真分析
- 安全管理机构架构
- 国际海上人命安全公约(SOLAS)介绍
评论
0/150
提交评论