欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    (精品)第十章安全管理.ppt

    • 资源ID:84703150       资源大小:335.50KB        全文页数:55页
    • 资源格式: PPT        下载积分:16金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要16金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    (精品)第十章安全管理.ppt

    第十章第十章SQLServer的安全管理的安全管理9.1SQLServer2000的验证模式的验证模式9.2登录管理登录管理9.3用户管理用户管理9.4角色管理角色管理9.5许可管理许可管理数据的安全性数据的安全性是指保护数据以防止因不合法的使用是指保护数据以防止因不合法的使用而造成数据的泄密和破坏而造成数据的泄密和破坏.这就要采取一定的安全这就要采取一定的安全保护措施保护措施.在数据库中在数据库中,系统用检查口令等手段来检查用户身系统用检查口令等手段来检查用户身份份,合法的用户才能进入数据库系统合法的用户才能进入数据库系统.当用户对数据当用户对数据库执行操作时库执行操作时,系统自动检查用户是否有权限执行系统自动检查用户是否有权限执行这些操作这些操作.SQLServer2000提供提供4层安全防线层安全防线:1、操作系统的安全防线、操作系统的安全防线2、SQLServer的运行安全防线的运行安全防线3、SQLServer的数据库安全防线的数据库安全防线4、SQLServer的数据库对象安全防线的数据库对象安全防线SQLServer2000的安全性管理是建立在的安全性管理是建立在认证认证和和访问许访问许可可两者机制上的。两者机制上的。认证是指来登录认证是指来登录SQLServer的登录帐号和密码是否正的登录帐号和密码是否正确,以此来验证其是否具有连接确,以此来验证其是否具有连接SQLServer的权限。的权限。用户只能在获取访问数据库的权限之后,才能对服务用户只能在获取访问数据库的权限之后,才能对服务器上的数据库进行权限许可下的各种操作。这种用户器上的数据库进行权限许可下的各种操作。这种用户访问数据库权限的设置是通过用户帐号来实现的。访问数据库权限的设置是通过用户帐号来实现的。同时在同时在SQLServer中,中,角色角色作为用户组的替代物大大作为用户组的替代物大大简化了安全性管理。简化了安全性管理。SQLServer的安全模式中包括以下部分:的安全模式中包括以下部分:SQL ServerSQL Server的登录、数据库用户、权限、角色的登录、数据库用户、权限、角色9.1SQLServer2000的验证模式的验证模式9.1.1 9.1.1 WindowsWindows验验证模式证模式9.1.2 9.1.2 混合安全模式混合安全模式9.1.3 9.1.3 设置验证模式设置验证模式9.1.4 SQL Server 9.1.4 SQL Server 系统登录验证过程系统登录验证过程验证阶段(验证阶段(Authentication)SQLServer和和WindowsNT/2000是结合在是结合在一起的,因此就产生了两种验证模式。一起的,因此就产生了两种验证模式。验证模式指的是安全方面的问题,每一个用验证模式指的是安全方面的问题,每一个用户要使用户要使用SQLServer,都必须经过验证。,都必须经过验证。在安装过程中,系统会提示选择验证模式在安装过程中,系统会提示选择验证模式Windows身份验证模式身份验证模式混合验证模式混合验证模式9.1.1Windows验证模式(验证模式(NT验证模式)验证模式)Windows验证模式是指要登录到验证模式是指要登录到SQLServer系统系统的用户身份由的用户身份由NT系统来进行验证。在系统来进行验证。在Windows登登录验证模式下,录验证模式下,SQLServer回叫回叫WindowsNT以以获得相应的登录信息,并在获得相应的登录信息,并在syslogins表中查找该表中查找该帐户,以确定该帐户是否有权登录。在这种方式帐户,以确定该帐户是否有权登录。在这种方式下,用户不必提供登录名或密码让下,用户不必提供登录名或密码让SQLserver验验证。证。Windows身份验证模式使用身份验证模式使用Windows操作系统操作系统本身提供的安全机制验证用户的身份。只要用本身提供的安全机制验证用户的身份。只要用户能够通过户能够通过WindowsNT或或Windows2000的用的用户帐户验证,就可连接到户帐户验证,就可连接到SQLServer。Windows验证模式对验证模式对SQLServer的影响的影响在在WindowsNT/2000的注册表内的注册表内,保存了保存了SQLServer验证模式的相关信息及启动验证模式的相关信息及启动SQLServer的必须信息的必须信息.在注册表中在注册表中,我的电脑我的电脑KHEY_LOCAL_MACHINESoftwareMicrosoftMSSQLServerMSSQLServer中的中的LoginMode的值决定采用哪的值决定采用哪种验证模式种验证模式.每次启动每次启动SQLServer时时,都将检索该键都将检索该键的值的值,以决定使用哪种验证模式以决定使用哪种验证模式.使用使用WindowsNT验证有如下特点:验证有如下特点:1、NT验证模式下由验证模式下由WindowsNT管理用户管理用户帐户,数据库管理员的工作是管理数据库帐户,数据库管理员的工作是管理数据库;2、WindowsNT有功能很强的工具去管理用有功能很强的工具去管理用户帐户,如安全验证和密码加密、审核、密户帐户,如安全验证和密码加密、审核、密码过期、最短密码长度以及在多次登录请求码过期、最短密码长度以及在多次登录请求失败后锁定帐户失败后锁定帐户;3、可以在、可以在SQLServer增加用户组增加用户组;9.1.2混合模式混合模式混合验证模式是指用户登录混合验证模式是指用户登录SQLServer系统时,系统时,其身份验证由其身份验证由WindowsNT和和SQLServer共同进共同进行。行。SQLServer验证模式处理登录的过程为验证模式处理登录的过程为:用户在输入登录名和密码用户在输入登录名和密码SQLServer在系统注册表中检测在系统注册表中检测若输入的登录名存在若输入的登录名存在,而且密码也正确而且密码也正确成功登录成功登录SQLServer混合验证模式有如下特点:混合验证模式有如下特点:混合模式允许非混合模式允许非Windows客户、客户、Internet客客户和混合的客户组连接到户和混合的客户组连接到SQLServer中中增加了安全性方面的选择增加了安全性方面的选择9.1.3设置验证模式设置验证模式设置验证模式的工作只能由系统管理员来完成。设置验证模式的工作只能由系统管理员来完成。使用使用SQLServer企业管理器时,设置或改变验证企业管理器时,设置或改变验证模式的步骤如下:模式的步骤如下:运行运行SQLServer企业管理器。企业管理器。右键单击右键单击“SQLServer服务器组服务器组”的要设置的要设置验证模式服务器,然后选择验证模式服务器,然后选择“属性属性”,系统将,系统将弹出弹出“SQLServer属性(配置)属性(配置)”窗口窗口单击单击“安全性安全性”选项卡,可从中选择一种选项卡,可从中选择一种登录模式登录模式审核失败登录审核失败登录有助于查登录失有助于查登录失败的原因败的原因审核成功登录审核成功登录帮助调试,但却影响帮助调试,但却影响登录的速度。登录的速度。重新启动重新启动SQLServer才可以使修改的值生效。才可以使修改的值生效。SQL ServerSQL ServerSQL ServerSQL Server的登录访问确认的登录访问确认的登录访问确认的登录访问确认验证验证验证验证SQL ServerSQL ServerSQL ServerSQL Server验证信任连接验证信任连接验证信任连接验证信任连接SQL ServerSQL ServerSQL ServerSQL Server验证账户名和密码验证账户名和密码验证账户名和密码验证账户名和密码或或或或SQL SQL SQL SQL ServerServerServerServerWindows 2000 Windows 2000 Windows 2000 Windows 2000 组或用户组或用户组或用户组或用户Windows 2000Windows 2000Windows 2000Windows 2000SQL ServerSQL ServerSQL ServerSQL Server登录账户登录账户登录账户登录账户9.2登录管理登录管理9.2.1系统管理员登录账户系统管理员登录账户9.2.2用用T-SQL语句创建、查看、删除语句创建、查看、删除SQLServer登录账户登录账户9.2.3用企业管理器创建、查看、删除用企业管理器创建、查看、删除SQLServer登录账户登录账户9.2.1系统管理员登录账户系统管理员登录账户SQLServer有两个默认的系统管理员登录帐户:有两个默认的系统管理员登录帐户:sa和和BUILTINAdministrators。这两个登录帐户具有这两个登录帐户具有SQLServer系统和所有数系统和所有数据库的全部权限。据库的全部权限。sa是一个特殊的登录名,它是是一个特殊的登录名,它是混合验证机制下混合验证机制下SQLServer的系统管理员,的系统管理员,sa始终关联始终关联dbo用户。用户。BUILTINAdministrators是是NT系统的系统管理员组。系统的系统管理员组。具体地说,系统管理员负责下面的工作:具体地说,系统管理员负责下面的工作:l创建登录名创建登录名l配置服务器配置服务器l创建、删除数据库创建、删除数据库l无须考虑所有权和权限,可以操作各种数据库无须考虑所有权和权限,可以操作各种数据库对象对象l停止、启动服务器停止、启动服务器l停止在服务器上运行的无效过程停止在服务器上运行的无效过程l某些权限只能被系统管理员拥有并且不能被授某些权限只能被系统管理员拥有并且不能被授予其他用户。这些功能是管理存储空间,管理用予其他用户。这些功能是管理存储空间,管理用户进程及改变数据库选项。户进程及改变数据库选项。9.2.2用用T-SQL语句创建、查看、删除语句创建、查看、删除SQLServer登录帐户登录帐户SQLServer登录帐户的创建登录帐户的创建使用系统存储过程使用系统存储过程sp_addlogin可以创建一可以创建一个登录帐户。个登录帐户。sp_addlogin存储过程的语法存储过程的语法形式如下:形式如下:sp_addloginlogin,password,default_databaselogin:要被创建的登录帐户。它是唯一必须给定:要被创建的登录帐户。它是唯一必须给定值的参数,而且必须是有效的值的参数,而且必须是有效的SQLServer对象名。对象名。password:新登录帐户的密码。新登录帐户的密码。default_database:新登录帐户访问的默认数:新登录帐户访问的默认数据库。据库。例例1:创建一个登录帐户为:创建一个登录帐户为abc,密码为,密码为123、使用的、使用的默认数据库为默认数据库为StudentEXECsp_addloginabc,123,Student例例2:创建登录名为:创建登录名为”user01”,没有密码和默认数据没有密码和默认数据库的用户库的用户EXECsp_addloginuser01SQLServer登录帐户的查看登录帐户的查看sp_helplogins登录帐户的删除登录帐户的删除删除登录帐户时需要在数据库中做较为复杂删除登录帐户时需要在数据库中做较为复杂的检查,以确保不会在数据库中留下孤儿型的检查,以确保不会在数据库中留下孤儿型的用户。的用户。sp_droploginloginlogin:要被删除的登录帐户。:要被删除的登录帐户。9.2.3用企业管理器创建、查看、删除用企业管理器创建、查看、删除SQLServer登录帐户登录帐户启动启动SQLServer企业管理器。展开服务企业管理器。展开服务器后,展开器后,展开“安全性安全性”文件夹。文件夹。用右键单击登录(用右键单击登录(login)图标,从快捷菜)图标,从快捷菜单中选择新建登录(单中选择新建登录(newlogin)选项,则出)选项,则出现现SQLServer登录属性登录属性新建登录对话框。新建登录对话框。在名称编辑框中输入登录名,在身份验证选项在名称编辑框中输入登录名,在身份验证选项栏中选择新建的用户帐号是栏中选择新建的用户帐号是WindowsNT认证模式,认证模式,还是还是SQLServer认证模式。认证模式。选择服务器角色页框选择服务器角色页框选择数据库访问页框选择数据库访问页框列出了系统的固定服务器角色列出了系统的固定服务器角色列出了该帐号可以访问的数据库列出了该帐号可以访问的数据库2.查看及删除登录帐户查看及删除登录帐户一个新的登录帐户增加后,可以在企业管理器中查一个新的登录帐户增加后,可以在企业管理器中查看其详细信息。查看一个帐户的步骤如下:看其详细信息。查看一个帐户的步骤如下:启动启动SQL服务器企业管理器,并展开到服务器企业管理器,并展开到“安全性安全性”。点击点击“登录登录”,右边窗格显示的是登录,右边窗格显示的是登录帐户的列表。帐户的列表。右击该窗口中的某一登录帐户,在系统右击该窗口中的某一登录帐户,在系统弹出的菜单上点击弹出的菜单上点击“属性属性”可进入可进入“SQL登录属性登录属性”窗口查看该登录帐户的信息;窗口查看该登录帐户的信息;点击点击“删除删除”可以删除该登录帐户。可以删除该登录帐户。9.3用户管理用户管理9.3.1数据库用户名和登录名的关系数据库用户名和登录名的关系9.3.2用用T-SQL语句创建、查看、删除数据库用户语句创建、查看、删除数据库用户9.3.3使用企业管理器创建、查看、删除数据库用户使用企业管理器创建、查看、删除数据库用户9.3.4改变数据库所有权改变数据库所有权9.3.1数据库用户名和登录名的关系数据库用户名和登录名的关系登录名、数据库用户名是登录名、数据库用户名是SQL服务器中两个容服务器中两个容易混淆的概念。易混淆的概念。在数据库中,一个用户或工作组取得合法的登在数据库中,一个用户或工作组取得合法的登录帐号,只表明该帐号通过了录帐号,只表明该帐号通过了WindowsNT认认证或者证或者SQLServer认证,但不能表明其可以对认证,但不能表明其可以对数据库数据和数据库对象进行某种或者某些操数据库数据和数据库对象进行某种或者某些操作,只有当他同时拥有了用户帐号后,才能够作,只有当他同时拥有了用户帐号后,才能够访问数据库。访问数据库。登录名是访问登录名是访问SQL服务器的通行证。每个登录名的定服务器的通行证。每个登录名的定义存放在义存放在master数据库的表数据库的表syslogins中。登录名本身并中。登录名本身并不能让用户访问服务器中的数据库资源。不能让用户访问服务器中的数据库资源。要访问特定的数据库,还必须有数据库用户名。新的要访问特定的数据库,还必须有数据库用户名。新的登录创建以后,才能创建用户,用户在特定的数据库登录创建以后,才能创建用户,用户在特定的数据库内创建,必须和一个登录名相关联。内创建,必须和一个登录名相关联。用户的定义信息存放在与其相关的数据库的用户的定义信息存放在与其相关的数据库的sysusers表中。这个表包含了该数据库的所有用户对象以及表中。这个表包含了该数据库的所有用户对象以及和它们相对应的登录名的标识。用户名没有密码和和它们相对应的登录名的标识。用户名没有密码和它相关联。它相关联。大多数情况下,登录名和用户名使用相同的名称。大多数情况下,登录名和用户名使用相同的名称。登录帐户和数据库用户是登录帐户和数据库用户是SQL服务器进行权限服务器进行权限管理的两种不同的对象。管理的两种不同的对象。一个登录帐户可以映射到不同的数据库,产生多一个登录帐户可以映射到不同的数据库,产生多个数据库用户,一个数据库用户只能映射到一个个数据库用户,一个数据库用户只能映射到一个登录帐户登录帐户允许数据库为每个用户对象分配不同的权限,允许数据库为每个用户对象分配不同的权限,这一特点为在组内分配权限提供了最大的自由这一特点为在组内分配权限提供了最大的自由度。度。9.3.2用用T-SQL语句创建、查看、删除数据库用户语句创建、查看、删除数据库用户为一个登录帐户授权,最常使用的方法是创建一个为一个登录帐户授权,最常使用的方法是创建一个新的数据库用户,然后将其与一个登录帐户对应起新的数据库用户,然后将其与一个登录帐户对应起来。来。1.用用T-SQL语句创建数据库用户语句创建数据库用户使用系统存储过程使用系统存储过程sp_grantdbaccess可以可以在当前数据库中添加一个用户帐户在当前数据库中添加一个用户帐户sp_grantdbaccesslogin,name_in_dblogin:指定当前数据库中新安全帐户的登录名称。:指定当前数据库中新安全帐户的登录名称。name_in_db:指定数据库中用户帐户的名称。:指定数据库中用户帐户的名称。例:在混合验证模式下,为数据库例:在混合验证模式下,为数据库Student登录帐登录帐户户abc创建一个同名的数据库用户。创建一个同名的数据库用户。useStudentgoexecsp_grantdbaccessabc例:在混合验证模式下,为数据库例:在混合验证模式下,为数据库Student登录帐登录帐户户abc创建一个名称为创建一个名称为userabc的数据库用的数据库用户。户。useStudentgoexecsp_grantdbaccessabc,userabc2.用用T-SQL语句查看数据库用户语句查看数据库用户使用系统存储过程使用系统存储过程sp_helpuser可以查看数据可以查看数据库中的有效帐户信息。库中的有效帐户信息。3.用用T-SQL语句删除数据库用户语句删除数据库用户当需要撤消某一登录用户对指定数据库的访问当需要撤消某一登录用户对指定数据库的访问权限时,最简单的办法就是在该数据库中删除权限时,最简单的办法就是在该数据库中删除该登录用户在指定数据库中的用户账号该登录用户在指定数据库中的用户账号sp_revokedbaccess存储过程可以删除数据库用户存储过程可以删除数据库用户sp_revokedbaccessname_in_db=名字名字注意,注意,sp_revokedbaccess存储过程不能删除:存储过程不能删除:dbo、数据库中的固定角色、数据库中的固定角色master和和tempdb数据库中的数据库中的Guest用户帐用户帐户户WindowsNT组中的组中的WindowsNT用户用户sp_revokedbaccessabc例:使用命令例:使用命令sp_revokedbaccess将数据库中的将数据库中的“abc”删除掉。删除掉。9.3.3使用企业管理器创建、查看、删除数据库用户使用企业管理器创建、查看、删除数据库用户1.使用企业管理器创建与查看数据库用户使用企业管理器创建与查看数据库用户启动企业管理器。启动企业管理器。展开要操作的服务器及要创建用户的数据展开要操作的服务器及要创建用户的数据库。库。点击点击“用户用户”,右边窗格可以查看到该数,右边窗格可以查看到该数据库的用户。据库的用户。右击右击“用户用户”文件夹,选择文件夹,选择“新建数据库新建数据库用户用户”,弹出,弹出“新建用户新建用户”的窗口。的窗口。输入要创建的数据库用户的名字,然后在输入要创建的数据库用户的名字,然后在下拉的列表中选择对应的登录名。下拉的列表中选择对应的登录名。单击单击“确定确定”按钮,将用户添加到数据库按钮,将用户添加到数据库中。中。2.使用企业管理器删除数据库用户使用企业管理器删除数据库用户启动企业管理器。启动企业管理器。展开要操作的服务器及要删除用户所在展开要操作的服务器及要删除用户所在的数据库。的数据库。单击单击“用户用户”,右边显示该数据库所有,右边显示该数据库所有的库用户。的库用户。右击要删除的用户,在系统弹出的快捷右击要删除的用户,在系统弹出的快捷菜单上选择菜单上选择“删除删除”来删除这个用户。来删除这个用户。9.3.4改变数据库所有权改变数据库所有权在数据库中有一个用户是数据库所有者在数据库中有一个用户是数据库所有者(databaseowner,dbo),拥有数据库中所有的对象拥有数据库中所有的对象.只能有一个数据库所有者只能有一个数据库所有者.数据库所有者不能被数据库所有者不能被删除删除.通常通常,登录名登录名sa映射在库中的用户是映射在库中的用户是dbo.必须使必须使用用sp_changedbowner存储过程来改变数据库所存储过程来改变数据库所有权有权.这个存储过程是唯一改变数据库所有权的方这个存储过程是唯一改变数据库所有权的方法法,在企业管理器中没有类似功能在企业管理器中没有类似功能.9.4角色管理角色管理用户一般在组中工作用户一般在组中工作.也就是说可以将在相同数也就是说可以将在相同数据上有相同权限的用户放入组中进理。据上有相同权限的用户放入组中进理。SQLServer具有将用户分配到组中的能力具有将用户分配到组中的能力,分配分配给组的权限也适用于组中的每一个成员给组的权限也适用于组中的每一个成员角色是从角色是从SQLServer8.0版本开始引进的新概版本开始引进的新概念,它代替了以前版本中组的概念念,它代替了以前版本中组的概念利用角色,利用角色,SQLServer管理者可以将某些用户设管理者可以将某些用户设置为某一角色,这样只对角色进行权限设置便可置为某一角色,这样只对角色进行权限设置便可以实现对所有用户权限的设置以实现对所有用户权限的设置SQLServer提供了用户通常管理工作的提供了用户通常管理工作的固定服固定服务器角色务器角色和和数据库角色数据库角色。1、服务器角色、服务器角色服务器角色是指根据服务器角色是指根据SQLServer的管理任务,的管理任务,以及这些任务相对的重要性等级来把具有以及这些任务相对的重要性等级来把具有SQLServer管理职能的用户划分为不同的用户组,管理职能的用户划分为不同的用户组,每一组所具有的管理每一组所具有的管理SQLServer的权限都是的权限都是SQLServer内置的,即不能对其进行添加、修内置的,即不能对其进行添加、修改和删除,只能向其中加入用户或者其他角色。改和删除,只能向其中加入用户或者其他角色。七种常用的固定服务器角色七种常用的固定服务器角色系统管理员:拥有系统管理员:拥有SQLServer所有的权限许可。所有的权限许可。服务器管理员:管理服务器管理员:管理SQLServer服务器端的设置。服务器端的设置。磁盘管理员:管理磁盘文件。磁盘管理员:管理磁盘文件。进程管理员:管理进程管理员:管理SQLServer系统进程。系统进程。安全管理员:管理和审核安全管理员:管理和审核SQLServer系统登录。系统登录。安装管理员:增加、删除连接服务器,建立数据库复安装管理员:增加、删除连接服务器,建立数据库复制以及管理扩展存储过程。制以及管理扩展存储过程。数据库创建者:创建数据库,并对数据库进行修改。数据库创建者:创建数据库,并对数据库进行修改。执行存储过程执行存储过程sp_helpsrvrole,可查看服务器上的固,可查看服务器上的固定服务器角色,要查看某个固定服务器角色的权限可定服务器角色,要查看某个固定服务器角色的权限可执行存储过程执行存储过程sp_srvrolepermission。2.为登录帐户指定及收回服务器角色为登录帐户指定及收回服务器角色使用使用sp_addsrvrolemember存储过程或企业管理存储过程或企业管理器可为一个登录帐户指定服务器角色。器可为一个登录帐户指定服务器角色。使用系统存储过程为登录帐户指定及收回服使用系统存储过程为登录帐户指定及收回服务器角色务器角色:sp_addsrvrolemember登录登录,角色角色?登录:是指登录名。登录:是指登录名。?角色:是指服务器角色名。角色:是指服务器角色名。收回服务器角色的系统存储过程收回服务器角色的系统存储过程sp_dropsrvrolemember,参数含义同上,参数含义同上使用企业管理器为登录帐户指定及收回服务器角色使用企业管理器为登录帐户指定及收回服务器角色9.4.2数据库角色数据库角色数据库角色分为数据库角色分为固定数据库角色固定数据库角色和和自定义数自定义数据库角色据库角色。1.固定数据库角色及功能固定数据库角色及功能在安装完在安装完SQL服务器后,系统将自动创建服务器后,系统将自动创建10个个固定的数据库角色固定的数据库角色角色角色 功能功能public维护默认的许可维护默认的许可db_owner数据库属主,在特定数据库内具有全部权限数据库属主,在特定数据库内具有全部权限db_accessadmin能够添加、删除数据库用户和角色能够添加、删除数据库用户和角色db_securityadmin可以管理全部权限、对象所有权、角色和角可以管理全部权限、对象所有权、角色和角色成员资格色成员资格db_ddladmin能够添加、删除和修改数据库对象。能够添加、删除和修改数据库对象。db_backupoperator 能够备份和恢复数据库。能够备份和恢复数据库。db_datareader能够从任意表中读出数据。能够从任意表中读出数据。db_datawriter能够对任意表插入、修改和删除数据。能够对任意表插入、修改和删除数据。db_denydatareader不允许从表中读数据。不允许从表中读数据。db_denydatawriter 不允许改变表中的数据。不允许改变表中的数据。public角色是一个特殊的数据库角色,数据库中是一个特殊的数据库角色,数据库中的每位用户都是公众角色的成员,它负责维护数的每位用户都是公众角色的成员,它负责维护数据库中用户的全部默认许可,不能将用户和组或据库中用户的全部默认许可,不能将用户和组或角色指定公众角色。角色指定公众角色。l数据库角色在数据库级别上被定义,存数据库角色在数据库级别上被定义,存在于数据库之内。数据库角色存放在每在于数据库之内。数据库角色存放在每个数据库个数据库sysusers表中表中l固定数据库角色不能被删除、修改、创固定数据库角色不能被删除、修改、创建建l固定数据库角色可以指定给其它登录帐固定数据库角色可以指定给其它登录帐户户注意:注意:用户自定义角色用户自定义角色创建用户定义的数据库角色就是创建一组用户,创建用户定义的数据库角色就是创建一组用户,这些用户具有相同的一组许可这些用户具有相同的一组许可用户自定义的数据库角色有两种类型:即用户自定义的数据库角色有两种类型:即标标准角色准角色和和应用程序角色应用程序角色。标准角色和应用程序角色标准角色和应用程序角色标准角色和应用程序角色标准角色和应用程序角色标准角色通过对用户权限等级的认定而将标准角色通过对用户权限等级的认定而将标准角色通过对用户权限等级的认定而将标准角色通过对用户权限等级的认定而将用户划分为不用的用户组,使用户总是相用户划分为不用的用户组,使用户总是相用户划分为不用的用户组,使用户总是相用户划分为不用的用户组,使用户总是相对于一个或多个角色,从而实现管理的安对于一个或多个角色,从而实现管理的安对于一个或多个角色,从而实现管理的安对于一个或多个角色,从而实现管理的安全性。全性。全性。全性。应用程序角色是一种比较特殊的角色。当我应用程序角色是一种比较特殊的角色。当我应用程序角色是一种比较特殊的角色。当我应用程序角色是一种比较特殊的角色。当我们打算让某些用户只能通过特定的应用程序们打算让某些用户只能通过特定的应用程序们打算让某些用户只能通过特定的应用程序们打算让某些用户只能通过特定的应用程序间接地存取数据库中的数据而不是直接地存间接地存取数据库中的数据而不是直接地存间接地存取数据库中的数据而不是直接地存间接地存取数据库中的数据而不是直接地存取数据库数据时,就应该考虑使用应用程序取数据库数据时,就应该考虑使用应用程序取数据库数据时,就应该考虑使用应用程序取数据库数据时,就应该考虑使用应用程序角色。当某一用户使用了应用程序角色时,角色。当某一用户使用了应用程序角色时,角色。当某一用户使用了应用程序角色时,角色。当某一用户使用了应用程序角色时,他便放弃了已被赋予的所有数据库专有权限,他便放弃了已被赋予的所有数据库专有权限,他便放弃了已被赋予的所有数据库专有权限,他便放弃了已被赋予的所有数据库专有权限,他所拥有的只是应用程序角色被设置的角色。他所拥有的只是应用程序角色被设置的角色。他所拥有的只是应用程序角色被设置的角色。他所拥有的只是应用程序角色被设置的角色。sp_addrole:用来创建一个新的数据库角色:用来创建一个新的数据库角色sp_addrole role,ownersp_droprole:用于删除一个数据库角色:用于删除一个数据库角色sp_droprole rolesp_helprole:显示当前数据库所有的数据库角色的所有信息:显示当前数据库所有的数据库角色的所有信息sp_helprole rolesp_addrolemember:向数据库某一角色中添加数据库用户:向数据库某一角色中添加数据库用户sp_addrolemember role,security_accountsp_droprolemember:用来删除某一角色的用户:用来删除某一角色的用户sp_droprolemember role,security_accountsp_helprolemember:用于显示某一数据库角色的所有成员:用于显示某一数据库角色的所有成员sp_helprolememberrole管理数据库角色管理数据库角色9.5权限权限(许可许可)管理管理9.5.1许可类型许可类型9.5.2许可的验证许可的验证9.5.3管理许可管理许可许可许可用来指定授权用户可以使用的数据库对象和这用来指定授权用户可以使用的数据库对象和这些授权用户可以对这些数据库对象执行的操作。些授权用户可以对这些数据库对象执行的操作。用户在登录到用户在登录到SQLServer之后,其用户帐号所归属之后,其用户帐号所归属的的NT组或角色所被赋予的许可(权限)决定了该用组或角色所被赋予的许可(权限)决定了该用户能够对哪些数据库对象执行哪种操作以及能够访户能够对哪些数据库对象执行哪种操作以及能够访问、修改哪些数据。问、修改哪些数据。在每个数据库中用户的许可独立于用户帐号和用户在每个数据库中用户的许可独立于用户帐号和用户在数据库中的角色,每个数据库都有自己独立的许在数据库中的角色,每个数据库都有自己独立的许可系统。可系统。在在SQLServer中包括三种类型的许可:即对象许可、中包括三种类型的许可:即对象许可、语句许可和预定义许可。语句许可和预定义许可。9.5.1三种许可类型三种许可类型1、对象许可、对象许可表示对特定的数据库对象,即表、视图、字段和表示对特定的数据库对象,即表、视图、字段和存储过程的操作许可,它决定了能对表、视图等存储过程的操作许可,它决定了能对表、视图等数据库对象执行哪些操作。数据库对象执行哪些操作。2、语句许可、语句许可表示对数据库的操作许可,也就是说,创建数据表示对数据库的操作许可,也就是说,创建数据库或者创建数据库中的其它内容所需要的许可类库或者创建数据库中的其它内容所需要的许可类型称为语句许可。型称为语句许可。3、默认、默认(预定义预定义)许可许可是指系统安装以后有些用户和角色不必授权就有是指系统安装以后有些用户和角色不必授权就有的许可。的许可。1.默认许可默认许可SQL服务器中包含很多对象,每个对象都有一个属主。服务器中包含很多对象,每个对象都有一个属主。一般来说,对象的属主是创建该对象的用户。一般来说,对象的属主是创建该对象的用户。如果系统管理员创建了一个数据库,系统管理员就是如果系统管理员创建了一个数据库,系统管理员就是这个数据库的属主。这个数据库的属主。如果一个用户创建了一个表,这个用户就是这个表的如果一个用户创建了一个表,这个用户就是这个表的属主。属主。很显然,系统管理员具有这个数据库的全部操作权限,很显然,系统管理员具有这个数据库的全部操作权限,创建表的用户具有这个表全部操作权限。这就是数据创建表的用户具有这个表全部操作权限。这就是数据库对象的默认许可。库对象的默认许可。默认许可也称为暗指许可。默认许可也称为暗指许可。2.对象许可对象许可对象许可是指用户基于数据库层次上的访问和操作权限,如对象许可是指用户基于数据库层次上的访问和操作权限,如果没有对象的许可,用户将不能访问该对象。对象许可有五果没有对象的许可,用户将不能访问该对象。对象许可有五种:查询、插入、修改、删除和执行。前四个许可是用于表种:查询、插入、修改、删除和执行。前四个许可是用于表和视图的,执行许可只用于存储过程。和视图的,执行许可只用于存储过程。选择:该许可授予数据库中某个特定表的用户,具备这种许选择:该许可授予数据库中某个特定表的用户,具备这种许可的用户才能访问、操作该表的数据。可的用户才能访问、操作该表的数据。插入:该许可授予数据库中某个特定表的用户可以向表中插插入:该许可授予数据库中某个特定表的用户可以向表中插入数据。入数据。更新:该许可授予数据库中某个特定表的用户可以对表中的更新:该许可授予数据库中某个特定表的用户可以对表中的数据进行更新。数据进行更新。删除:该许可授予数据库中某个特定表的用户可以删除表中删除:该许可授予数据库中某个特定表的用户可以删除表中的数据。的数据。执行:该许可授予数据库中某个特定的用户,具有这种许可执行:该许可授予数据库中某个特定的用户,具有这种许可的用户可以执行存储过程。的用户可以执行存储过程。3.语句许可语句许可语句许可通常授予需要在数据库中创建对象或修改对象、执行数据语句许可通常授予需要在数据库中创建对象或修改对象、执行数据库和事务日志备份的用户。如果一个用户获得某个语句的许可,该库和事务日志备份的用户。如果一个用户获得某个语句的许可,该用户就具有了执行该语句的权力。用户就具有了执行该语句的权力。以下是需要进行许可设置的语句:以下是需要进行许可设置的语句:BACKUPDTADBASE:允许用户执行备份数据库的操作。:允许用户执行备份数据库的操作。BACKLOG:允许用户执行备份事务日志库的操作。:允许用户执行备份事务日志库的操作。CREATEDATABASE:允许用户创建新的数据库。:允许用户创建新的数据库。CREATEDEFAULT:允许用户创建缺省。:允许用户创建缺省。CREATEPROCEDURE:允许用户执行创建存储过程的操作。:允许用户执行创建存储过程的操作。CTEATEFUNCTION:允许用户创建用户定义函数。:允许用户创建用户定义函数。CREATERULE:允许用户创建规则。:允许用户创建规则。CREATETABLE:允许用户创建表。:允许用户创建表。CREATEVIEW:允许用户创建视图。:允许用户创建视图。语句许可授予用户执行相应命令的能力,语句许可适用于创建和删语句许可授予用户执行相应命令的能力,语句许可适用于创建和删除对象、备份和恢复数据库。除对象、备份和恢复数据库。

    注意事项

    本文((精品)第十章安全管理.ppt)为本站会员(hwp****526)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开