《第11章 数据库的安全管理[1].ppt》由会员分享,可在线阅读,更多相关《第11章 数据库的安全管理[1].ppt(110页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第第11章章数据库的安全管理数据库的安全管理本章内容本章内容11.1SQLServer的安全机制的安全机制11.2登录账号管理登录账号管理11.3数据库用户的管理数据库用户的管理11.4角色管理角色管理11.5权限管理权限管理11.1SQLServer的安全机制的安全机制第第1111章章 数据库的安全管理数据库的安全管理 11.1.1身份验证身份验证11.1.2身份验证模式的设置身份验证模式的设置11.1.1身份验证身份验证11.1 SQL Server 11.1 SQL Server 的安全机制的安全机制nSQLServer的安全性管理是建立在的安全性管理是建立在身份验证身份验证和和访访问许
2、可问许可两者机制上的。两者机制上的。n身份验证是确定登录身份验证是确定登录SQLServer的用户的登录账的用户的登录账号和密码是否正确,以此来验证其是否具有连接号和密码是否正确,以此来验证其是否具有连接SQLServer的权限。的权限。n通过认证的用户必须获取访问数据库的权限,才通过认证的用户必须获取访问数据库的权限,才能对数据库进行权限许可下的操作。能对数据库进行权限许可下的操作。SQLServer身份验证模式身份验证模式11.1.1 11.1.1 身份验证身份验证(1)Windows身份验证模式身份验证模式n该模式使用该模式使用Windows操作系统的安全机制验操作系统的安全机制验证用户
3、身份,只要用户能够通过证用户身份,只要用户能够通过Windows用户账号验证,即可连接到用户账号验证,即可连接到SQLServer而而不再进行身份验证。不再进行身份验证。n这种模式只适用于能够提供有效身份验证这种模式只适用于能够提供有效身份验证的的Windows操作系统。操作系统。(2)混合身份验证模式混合身份验证模式11.1.1 11.1.1 身份验证身份验证n在该模式下,在该模式下,Windows身份验证和身份验证和SQLserver验证两种模式都可用。对于可信任连验证两种模式都可用。对于可信任连接用户接用户(由由Windows验证验证),系统直接采用,系统直接采用Windows的身份验证
4、机制,否则的身份验证机制,否则SQLServer将通过账号的存在性和密码的匹配性将通过账号的存在性和密码的匹配性自行进行验证,即采用自行进行验证,即采用SQLServer身份验身份验证模式。证模式。11.1.2身份验证模式的设置身份验证模式的设置11.1.1 11.1.1 身份验证身份验证n在该模式下,在该模式下,Windows身份验证和身份验证和SQLserver验证两种模式都可用。对于可信任连验证两种模式都可用。对于可信任连接用户接用户(由由Windows验证验证),系统直接采用,系统直接采用Windows的身份验证机制,否则的身份验证机制,否则SQLServer将通过账号的存在性和密码的
5、匹配性将通过账号的存在性和密码的匹配性自行进行验证,即采用自行进行验证,即采用SQLServer身份验身份验证模式。证模式。身份验证内容身份验证内容11.1.1 11.1.1 身份验证身份验证n包括确认用户的账号是否有效、能否访问包括确认用户的账号是否有效、能否访问系统、能访问系统的哪些数据库。系统、能访问系统的哪些数据库。11.1.2身份验证模式的设置身份验证模式的设置11.1 SQL Server 11.1 SQL Server 的安全机制的安全机制(1)打开企业管理器,在树打开企业管理器,在树型结构窗口中展开一个型结构窗口中展开一个服务器组,选择要设置服务器组,选择要设置身份验证模式的服
6、务器。身份验证模式的服务器。(2)在该服务器上单击鼠标在该服务器上单击鼠标右键,在弹出的菜单中右键,在弹出的菜单中选择选择“属性属性”项。项。(3)打开打开“属性属性”对话框,对话框,选择选择“安全性安全性”选项卡选项卡(4)在在“身份验证身份验证”处选择要设置的验证模式,处选择要设置的验证模式,同时可以在同时可以在“审核级别审核级别”处选择任意一个处选择任意一个单选按钮,来决定跟踪记录用户登录时的单选按钮,来决定跟踪记录用户登录时的哪种信息,例如登录成功或失败的信息。哪种信息,例如登录成功或失败的信息。(5)单击单击“确定确定”按钮完成设置。按钮完成设置。11.1.2 11.1.2 身份验证
7、模式的设置身份验证模式的设置通过编辑通过编辑SQLServer注册属性来完成身份验注册属性来完成身份验证模式的设置证模式的设置11.1.2 11.1.2 身份验证模式的设置身份验证模式的设置(1)打开企业管理器,在打开企业管理器,在树型结构窗口中选择树型结构窗口中选择要设置身份验证模式要设置身份验证模式的服务器。的服务器。(2)在该服务器上单击鼠在该服务器上单击鼠标右键,在弹出菜单标右键,在弹出菜单中选择中选择“编辑编辑SQLServer注册属性注册属性”项项(3)打开打开“已注册已注册SQLServer属性属性”对话框对话框(4)选择要设置的身份验选择要设置的身份验证模式,单击证模式,单击“
8、确定确定”按钮。按钮。11.1.2 11.1.2 身份验证模式的设置身份验证模式的设置11.2登录账号管理登录账号管理第第1111章章 数据库的安全管理数据库的安全管理 11.2.1创建登录账户创建登录账户11.2.2修改登录账户修改登录账户11.2.3删除登录账户删除登录账户11.2 11.2 登录账号管理登录账号管理11.2.1创建登录账户创建登录账户n创建登录账户的方法有两种:创建登录账户的方法有两种:一种是从一种是从Windows用户或组中创建登录账户用户或组中创建登录账户一种是创建新的一种是创建新的SQLServer登录账户。登录账户。11.2.1 11.2.1 创建登录账户创建登录
9、账户1.通过通过Windows身份验证创建登录身份验证创建登录(1)创建创建Windows用户用户以管理员身份登录到以管理员身份登录到Windows2000,选择,选择“开始开始程序程序管理管理工具工具计算机管理计算机管理”选项。选项。11.2.1 11.2.1 创建登录账户创建登录账户展开展开“本地用户和组本地用户和组”文文件夹,选择件夹,选择“用户用户”图标,图标,单击鼠标右键,在快捷菜单击鼠标右键,在快捷菜单中选择单中选择“新用户新用户”项,项,打开打开“新用户新用户”对话框,对话框,输入用户名、密码,单击输入用户名、密码,单击“创建创建”按钮,然后单击按钮,然后单击“关闭关闭”按钮完成
10、创建。按钮完成创建。11.2.1 11.2.1 创建登录账户创建登录账户(2)使用企业管理器将使用企业管理器将Windows2000账号加入账号加入到到SQLServer中,创建中,创建SQLServer登录登录以管理员身份登录到以管理员身份登录到SQLServer,进入企,进入企业管理器,选择要访问的服务器。业管理器,选择要访问的服务器。展开展开“安全性安全性”文件夹,右键单击文件夹,右键单击“登录登录”项,在弹出菜单中选择项,在弹出菜单中选择“创建登录创建登录”项,项,打开打开“SQLServer登录属性登录属性”对话框。对话框。11.2.1 11.2.1 创建登录账户创建登录账户在在“S
11、QLServer登录属登录属性性”对话框的对话框的“常规常规”选项卡中,单击选项卡中,单击“名称名称”输入框旁的输入框旁的“浏览浏览”按钮,在弹出按钮,在弹出对话框的对话框的“名称名称”列列表中选择名为表中选择名为“xh001”的用户,单的用户,单击击“添加添加”按钮。按钮。11.2.1 11.2.1 创建登录账户创建登录账户单击单击“确定确定”按钮,按钮,返回返回“SQLServer登录登录属性属性”对话框,对话框,Windows用户用户xh001就就可以连接可以连接SQLServer了。了。11.2.1 11.2.1 创建登录账户创建登录账户对于已经创建的对于已经创建的Windows用户或
12、组,可以使用户或组,可以使用系统存储过程用系统存储过程sp_grantlogin授予其登录授予其登录SQLServer的权限。的权限。n其语法格式如下:其语法格式如下:sp_grantloginloginame=login其中,其中,loginame=login为要添加的为要添加的Windows用户或组的名称,名称格式为用户或组的名称,名称格式为“域名域名计算机名计算机名用户名用户名”。11.2.1 11.2.1 创建登录账户创建登录账户例例11-1使用系统存储过程使用系统存储过程sp_grantlogin将将Windows用户用户huang加入加入SQLServer中。中。EXECsp_gr
13、antloginjsjx-yphuang或或EXECsp_grantloginjsjx-yphuang该操作授予了该操作授予了Windows用户用户jsjx-yphuang连连接到接到SQLServer的权限。的权限。11.2.1 11.2.1 创建登录账户创建登录账户EXECsp_grantloginBUILTINUsers该操作由于授予的是本地组中的用户,所该操作由于授予的是本地组中的用户,所以使用以使用BUILTIN关键字代替域名和计算机关键字代替域名和计算机名。名。例例11-2授予本地组授予本地组Users中的所有用户连接中的所有用户连接SQLServer的权限。的权限。11.2.1
14、11.2.1 创建登录账户创建登录账户n如果使用混合验证模式或不通过如果使用混合验证模式或不通过Windows用用户或用户组连接户或用户组连接SQLServer,则需要在,则需要在SQLServer下创建用户登录权限,使用户下创建用户登录权限,使用户得以连接使用得以连接使用SQLServer身份验证的身份验证的SQLServer实例。实例。2.创建创建SQLServer登录登录11.2.1 11.2.1 创建登录账户创建登录账户打开企业管理器,在树型结构窗口中展开要设置打开企业管理器,在树型结构窗口中展开要设置身份验证模式的服务器。展开身份验证模式的服务器。展开“安全性安全性”选项,选项,用鼠
15、标右键单击其中的用鼠标右键单击其中的“登录登录”项,在弹出的快项,在弹出的快捷菜单中单击捷菜单中单击“新建登录新建登录”命令,打开命令,打开“新建登新建登录录”对话框,参见图对话框,参见图11-7。在在“新建登录新建登录”对话框的对话框的“常规常规”选项卡的选项卡的“名名称称”框中输入框中输入SQLServer登录的名称,例如登录的名称,例如ZG001。(1)使用企业管理器创建登录账户使用企业管理器创建登录账户11.2.1 11.2.1 创建登录账户创建登录账户选中选中“SQLServer身份验证身份验证”,在,在“密码密码”框中输入密码,例如框中输入密码,例如001。在在“数据库数据库”下拉
16、框中选择登录到下拉框中选择登录到SQLServer实例后要连接的默认数据库,例如实例后要连接的默认数据库,例如master数据库。数据库。11.2.1 11.2.1 创建登录账户创建登录账户在在“语言语言”对话框中,选择显示给用户的对话框中,选择显示给用户的信息所用的默认语言。信息所用的默认语言。单击单击“确定确定”按钮,按钮,“确认密码确认密码”对话框对话框输入确认新密码,如输入确认新密码,如001,单击,单击“确定确定”按按钮完成操作。钮完成操作。11.2.1 11.2.1 创建登录账户创建登录账户(2)使用系统存储过程使用系统存储过程sp_addlongin创建登录创建登录sp_addl
17、ogin语法格式如下:语法格式如下:sp_addloginloginame=login,passwd=password,defdb=database,deflanguage=language,sid=sid,encryptopt=encryption_option11.2.1 11.2.1 创建登录账户创建登录账户EXECsp_addloginZG002,002,Sales例例11-3使用系统存储过程使用系统存储过程sp_addlongin创建登录,创建登录,新登录名为新登录名为“ZG002”,密码为,密码为“002”默认数据库默认数据库为为“Sales”。11.2.1 11.2.1 创建登录
18、账户创建登录账户EXECsp_addloginZG002,002,Sales例例11-3使用系统存储过程使用系统存储过程sp_addlongin创建登录,创建登录,新登录名为新登录名为“ZG002”,密码为,密码为“002”默认数据库默认数据库为为“Sales”。11.2.1 11.2.1 创建登录账户创建登录账户EXECsp_addloginZG003该操作为用户该操作为用户ZG003创建一个创建一个SQLServer登录名,没有指定密码和默认数据库,使登录名,没有指定密码和默认数据库,使用默认密码用默认密码NULL和默认数据库和默认数据库master。例例11-4创建没有密码和默认数据库的
19、登录,创建没有密码和默认数据库的登录,登录名为登录名为“ZG003”。11.2.1 11.2.1 创建登录账户创建登录账户n创建了登录账户后,如果需要确定用户是创建了登录账户后,如果需要确定用户是否有连接否有连接SQLServer实例的权限,以及可实例的权限,以及可以访问哪些数据库的信息时,可以使用系以访问哪些数据库的信息时,可以使用系统存储过程统存储过程sp_helplogins查看。查看。nsp_helplogins的语法格式如下:的语法格式如下:sp_helploginsLoginNamePattern=login3.查看用户查看用户11.2.1 11.2.1 创建登录账户创建登录账户例
20、例11-5查看账户信息。查看账户信息。EXECsp_helploginsZG002该操作查询有关登录该操作查询有关登录ZG002的信息的信息11.2 11.2 登录账号管理登录账号管理 sp_password的语法格式为:的语法格式为:sp_passwordold=old_password,new=new_password,loginame=loginsp_defaultdb的语法格式为:的语法格式为:sp_defaultdblogname=login,defdb=databasessp_defaultlanguage的语法格式为:的语法格式为:sp_defaultlanguagelogina
21、me=login,language=language11.2.2修改登录账户修改登录账户11.2 11.2 登录账号管理登录账号管理 11.2.3删除登录账户删除登录账户1使用企业管理器删除登录使用企业管理器删除登录其操作步骤如下:其操作步骤如下:(1)打开企业管理器,在树型结构窗口中展开一个服打开企业管理器,在树型结构窗口中展开一个服务器组,选择服务器并展开。务器组,选择服务器并展开。(2)展开展开“安全性安全性”文件夹,单击文件夹,单击“登录登录”项。项。(3)在在“登录登录”详细列表中鼠标右键单击要删除的用详细列表中鼠标右键单击要删除的用户,这里选择户,这里选择“jsjx-ypxh001
22、”,确定删除。,确定删除。11.2 11.2 登录账号管理登录账号管理 n删除登录账号有两种形式:删除删除登录账号有两种形式:删除Windows用户或用户或组登录和删除组登录和删除SQLServer登录。登录。(1)删除删除Windows用户或组登录用户或组登录sp_revokelogin的语法格式为:的语法格式为:sp_revokeloginliginame=login其中,其中,liginame=login为为Windows用户或组用户或组的名称。的名称。2.使用使用Transact-SQL语句删除登录账号语句删除登录账号11.2 11.2 登录账号管理登录账号管理 EXECsp_revo
23、keloginjsjx-yphuang或或EXECsp_revokeloginjsjx-yphuang例例11-7使用系统存储过程使用系统存储过程sp_revokelogin删除删除例例11-1创建的创建的Windows用户用户jsjx-yphuang的登录账号的登录账号11.2 11.2 登录账号管理登录账号管理 n使用使用sp_droplogin可以删除可以删除SQLServer登录。其语登录。其语法格式如下:法格式如下:sp_droploginloginame=loginn例例11-8使用系统存储过程使用系统存储过程sp_droplogin删除删除SQLServer登录账号登录账号ZG0
24、01。EXECsp_droploginZG001(2)删除删除SQLServer登录登录11.3数据库用户的管理数据库用户的管理第第1111章章 数据库的安全管理数据库的安全管理 1.使用企业管理器创建数据库用户使用企业管理器创建数据库用户n其操作步骤如下:其操作步骤如下:(1)打开企业管理器,选定要访问的服务器。打开企业管理器,选定要访问的服务器。(2)展开展开“数据库数据库”文件夹,选定需要增加用户的数文件夹,选定需要增加用户的数据库。据库。(3)鼠标右键单击该数据库,从弹出的快捷菜单中选鼠标右键单击该数据库,从弹出的快捷菜单中选择择“新建新建数据库用户数据库用户”选项,打开选项,打开“数
25、据库用数据库用户属性户属性”对话框。对话框。11.3 11.3 数据库用户的管理数据库用户的管理(4)打开打开“数据库用户属性数据库用户属性”对话框对话框(4)在在“数据库用户属性数据库用户属性”对话框的对话框的“登录名登录名”下拉下拉框中选择允许访问数据库框中选择允许访问数据库的登录账号,如的登录账号,如ZG001,并指定使用的用户名和该并指定使用的用户名和该用户所属的数据库角色等用户所属的数据库角色等信息,用户名与登录名可信息,用户名与登录名可以不同。以不同。(5)单击单击“确定确定”完成该数完成该数据库用户的创建。据库用户的创建。2.使用系统存储过程创建数据库用户使用系统存储过程创建数据
26、库用户nSQLServer使用系统存储过程使用系统存储过程sp_grantdbaccess为数据库添加用户,其语为数据库添加用户,其语法格式如下法格式如下:sp_grantdbaccessloginame=login,name_in_db=name_in_dbOUTPUT11.3 11.3 数据库用户的管理数据库用户的管理EXECsp_grantdbaccessZG002例例11-9使用系统存储过程在当前数据库中增使用系统存储过程在当前数据库中增加一个用户加一个用户。11.3 11.3 数据库用户的管理数据库用户的管理(1)使用企业管理器删除数据库用户使用企业管理器删除数据库用户在在SQLSe
27、rver企业管理器中,选中企业管理器中,选中“用户用户”图图标,在右面窗格中右键单击想要删除的数据库标,在右面窗格中右键单击想要删除的数据库用户,在弹出菜单中选择用户,在弹出菜单中选择“删除删除”项,则从当项,则从当前数据库中删除该数据库用户。前数据库中删除该数据库用户。(2)使用系统存储过程删除数据库用户使用系统存储过程删除数据库用户sp_revokedbaccess的语法格式为:的语法格式为:sp_revokedbaccessname_in_db=name3.删除数据库中的用户或组删除数据库中的用户或组11.3 11.3 数据库用户的管理数据库用户的管理EXECsp_revokedbacc
28、essZG002例例11-10使用系统存储过程在当前数据库中删使用系统存储过程在当前数据库中删除指定的用户。除指定的用户。11.3 11.3 数据库用户的管理数据库用户的管理11.4角色管理角色管理第第1111章章 数据库的安全管理数据库的安全管理 11.4.1SQLServer角色的类型角色的类型11.4.2固定服务器角色管理固定服务器角色管理11.4.3数据库角色管理数据库角色管理11.4.4用户定义数据库角色用户定义数据库角色11.4 11.4 角色管理角色管理11.4.1SQLServer角色的类型角色的类型SQLServer角色管理是一种权限管理的方角色管理是一种权限管理的方法,角色
29、中的每一用户都拥有此角色的所法,角色中的每一用户都拥有此角色的所有权限。有权限。SQLServer有两种角色类型:固定角色和用有两种角色类型:固定角色和用户定义数据库角色。户定义数据库角色。1.固定角色固定角色n固定角色分为固定角色分为固定服务器角色:独立于各个数据库,具有固固定服务器角色:独立于各个数据库,具有固定的权限。定的权限。固定数据库角色:是指角色所具有的管理、访固定数据库角色:是指角色所具有的管理、访问数据库权限已被问数据库权限已被SQLServer定义,并且定义,并且SQLServer管理者不能对其所具有的权限进行任何管理者不能对其所具有的权限进行任何修改。修改。11.4.1 S
30、QL Server11.4.1 SQL Server角色的类型角色的类型角色名称权 限Sysadmin系统管理员,可以在SQL Server服务器中执行任何操作Serveradmin服务器管理员,具有对服务器设置和关闭的权限。Setupadmin设置管理员,添加和删除链接服务器,并执行某些系统存储过程。Securityadmin安全管理员,管理服务器登录标识、更改密码、CREATE DATABASE权限,还可以读取错误日志。processadmin 进程管理员,管理在SQL Server服务器中运行的进程。Dbcreator数据库创建者,可创建、更改和删除数据库。Diskadmin管理系统磁盘
31、文件bulkadmin可执行BULK INSERT语句,但必须有INSERT权限。表11-1 固定服务器角色11.4.1 SQL Server11.4.1 SQL Server角色的类型角色的类型表11-2 固定数据库角色角色名称权 限db_owner数据库的所有者,可以执行任何数据库管理工作,可以对数据库内的任何对象进行任何操作,如删除、创建对象,将对象权限指定给其他用户。该角色包含以下各角色的所有权限。db_accessadmin 数据库访问权限管理者,可添加或删除用户、组或登录标识。db_securityadmin管理角色和数据库角色成员、对象所有权、语句执行权限、数据库访问权限。db_
32、ddladmin数据库DDL管理员,在数据库中创建、删除或修改数据库对象。db_backupoperator执行数据库备份权限。表11-2 固定数据库角色db_datareader能且仅能对数据库中任何表执行SELECT操作,从而读取所有表的信息。db_datawriter能对数据库中任何表执行INSERT、UPDATE、DELETE操作,但不能进行SELECT操作。db_denydatawriter不能对任何表进行增、删、修改操作。db_denydatareader不能读取数据库中任何表的内容。public每个数据库用户都是public角色成员。因此,不能将用户、组或角色指派为public角
33、色的成员,也不能删除public角色的成员。11.4.1 SQL Server11.4.1 SQL Server角色的类型角色的类型2.用户定义数据库角色用户定义数据库角色n当某些数据库用户需要被设置为相同的权限,但是当某些数据库用户需要被设置为相同的权限,但是这些权限不同于固定数据库角色所具有的权限时,这些权限不同于固定数据库角色所具有的权限时,就可以定义新的数据库角色来满足这一要求,从而就可以定义新的数据库角色来满足这一要求,从而使这些用户能够在数据库中实现某一特定功能。使这些用户能够在数据库中实现某一特定功能。n用户定义数据库角色的优点是:用户定义数据库角色的优点是:SQLServer数
34、据库数据库角色可以包含角色可以包含Windows用户组或用户;同一数据库用户组或用户;同一数据库的用户可以具有多个不同的用户定义角色,这种角的用户可以具有多个不同的用户定义角色,这种角色的组合是自由的,而不仅仅是色的组合是自由的,而不仅仅是public与其他一种角与其他一种角色的结合;角色可以进行嵌套,从而在数据库中实色的结合;角色可以进行嵌套,从而在数据库中实现不同级别的安全性。现不同级别的安全性。11.4.2固定服务器角色管理固定服务器角色管理11.4 11.4 角色管理角色管理n固定服务器角色不能进行添加、删除或修固定服务器角色不能进行添加、删除或修改等操作,只能将用户登录添加为固定服改
35、等操作,只能将用户登录添加为固定服务器角色的成员。务器角色的成员。1.添加固定服务器角色成员添加固定服务器角色成员11.4.2 11.4.2 固定服务器角色管理固定服务器角色管理(1)打开企业管理器,选择要访问的服务器并展开。打开企业管理器,选择要访问的服务器并展开。(2)展开展开“安全性安全性”文件夹,单击文件夹,单击“服务器角色服务器角色”项。项。例例11-11使用企业管理器将登录使用企业管理器将登录ZG001添加为添加为固定服务器角色固定服务器角色“DatabaseCreators”成员。成员。11.4.2 11.4.2 固定服务器角色管理固定服务器角色管理(3)在右窗格中,鼠标右键单击
36、服务器角色在右窗格中,鼠标右键单击服务器角色“DatabaseCreators”项,在弹出的快捷菜单项,在弹出的快捷菜单中选择中选择“属性属性”项,打开项,打开“服务器角色属性服务器角色属性”对话框对话框11.4.2 11.4.2 固定服务器角色管理固定服务器角色管理(4)单击单击“服务器角色属性服务器角色属性”对话框的对话框的“添加添加”按钮,打开按钮,打开“添加成员添加成员”对话框。在对话框。在“选选择要添加的登录择要添加的登录”列表中选择登录列表中选择登录“ZG001”,单击,单击“确定确定”按钮完成操作。按钮完成操作。11.4.2 11.4.2 固定服务器角色管理固定服务器角色管理固定
37、服务器角色成员的添加固定服务器角色成员的添加操作步骤如下:操作步骤如下:(1)在展开的服务器的在展开的服务器的“安全性安全性”文件夹中,单击文件夹中,单击“登录登录”项。项。11.4.2 11.4.2 固定服务器角色管理固定服务器角色管理(2)在右窗格中选择登录成员在右窗格中选择登录成员“ZG001”,双击鼠标,打,双击鼠标,打开开“SQLServer登录属性登录属性”对话框。对话框。(3)在在“SQLServer登录登录属性属性”对话框中选择对话框中选择“服务器角色服务器角色”选项选项卡,选中卡,选中“DatabaseCreators”服务器角色服务器角色的复选框。单击的复选框。单击“确确定
38、定”按钮完成操作。按钮完成操作。11.4.2 11.4.2 固定服务器角色管理固定服务器角色管理sp_addsrvrolemember用于添加固定服务器角用于添加固定服务器角色成员色成员n语法格式为:语法格式为:sp_addsrvrolememberloginame=login,rolename=role11.4.2 11.4.2 固定服务器角色管理固定服务器角色管理EXECsp_addsrvrolememberZG002,sysadmin例例11-12使用系统存储过程将登录使用系统存储过程将登录ZG002添加添加为固定服务器角色为固定服务器角色sysadmin的成员。的成员。11.4.2 1
39、1.4.2 固定服务器角色管理固定服务器角色管理n删除固定服务器角色成员的语句是删除固定服务器角色成员的语句是sp_dropsrvrolemember,其语法格式为:,其语法格式为:sp_dropsrvrolememberloginame=login,rolename=role2.删除固定服务器角色成员删除固定服务器角色成员11.4.2 11.4.2 固定服务器角色管理固定服务器角色管理EXECsp_dropsrvrolememberZG002,sysadmin例例11-13使用系统存储过程从固定服务器角色使用系统存储过程从固定服务器角色sysadmin中删除登录中删除登录ZG002。11.4
40、.2 11.4.2 固定服务器角色管理固定服务器角色管理n使用使用sp_helpsrvrole、sp_helpsrvrolemember可了可了解有关固定服务器角色及其成员的信息。解有关固定服务器角色及其成员的信息。n查看固定服务器角色查看固定服务器角色sp_helpsrvrole的语法格式为:的语法格式为:sp_helpsrvrolesrvrolename=rolesrvrolename=role为固定服务器角色名称为固定服务器角色名称3.查看固定服务器角色信息查看固定服务器角色信息11.4.2 11.4.2 固定服务器角色管理固定服务器角色管理语法格式为:语法格式为:sp_helpsrvr
41、olemembersrvrolename=rolesp_helpsrvrolemember查看固定服务器角色查看固定服务器角色成员成员11.4.2 11.4.2 固定服务器角色管理固定服务器角色管理EXECsp_helpsrvrolesysadminGOEXECsp_helpsrvrolemembersysadmin例例11-14查看固定服务器角色查看固定服务器角色sysadmin及其成及其成员的信息。员的信息。1.添加数据库角色成员添加数据库角色成员使用系统存储过程使用系统存储过程sp_addrolemember向数向数据库角色中添加成员,其语法格式为:据库角色中添加成员,其语法格式为:sp
42、_addrolememberrolename=role,membername=security_account11.4.3数据库角色管理数据库角色管理11.4 11.4 角色管理角色管理USESalesGOEXECsp_grantdbaccessjsjx-ypxh001,xh001GOEXECsp_addrolememberdb_ddladmin,xh00111.4.3 11.4.3 数据库角色管理数据库角色管理例例11-15向数据库向数据库Sales添加添加Windows用户用户“jsjx-ypxh001”。11.4.3 11.4.3 数据库角色管理数据库角色管理EXECsp_addrole
43、memberdb_owner,ZG002例例11-16向数据库添加例向数据库添加例11-3创建的创建的SQLServer用户用户ZG002为为db_owner角色成员。角色成员。11.4.3 11.4.3 数据库角色管理数据库角色管理n使用使用sp_droprolemember删除当前数据库角删除当前数据库角色中的成员,其语法格式为:色中的成员,其语法格式为:sp_droprolememberrolename=role,membername=security_account2.删除数据库角色成员删除数据库角色成员11.4.3 11.4.3 数据库角色管理数据库角色管理EXECsp_dropro
44、lememberdb_owner,ZG002例例11-17删除数据库角色中的用户。删除数据库角色中的用户。11.4.3 11.4.3 数据库角色管理数据库角色管理n查看数据库角色及其成员的信息可以使用系统存查看数据库角色及其成员的信息可以使用系统存储过程储过程sp_helpdbfixedrole、sp_helprole和和sp_helpusersp_helpdbfixedrole的语法格式为:的语法格式为:sp_helpdbfixedrolerolename=rolesp_helprole的语法格式为:的语法格式为:sp_helprolerolename=rolesp_helpuser的语法格
45、式为:的语法格式为:sp_helpusername_in_db=security_account3.查看数据库角色及其成员信息查看数据库角色及其成员信息11.4.3 11.4.3 数据库角色管理数据库角色管理例例11-18查看当前数据库中所有用户及查看当前数据库中所有用户及db_owner数据库角色的信息。数据库角色的信息。EXECsp_helpuserEXECsp_helpdbfixedroledb_owner11.4.4用户定义数据库角色用户定义数据库角色1.创建和删除用户定义数据库角色创建和删除用户定义数据库角色创建和删除用户定义数据库角色可以使用创建和删除用户定义数据库角色可以使用企业
46、管理器和系统存储过程实现。企业管理器和系统存储过程实现。11.4 11.4 角色管理角色管理例例11-19使用企业管理器创建用户定义数据库使用企业管理器创建用户定义数据库角色。角色。11.4.4 11.4.4 用户定义数据库角色用户定义数据库角色(1)打开企业管理器,展开选定的数据库。打开企业管理器,展开选定的数据库。(2)右键单击右键单击“角色角色”项,在弹出的快捷菜单项,在弹出的快捷菜单中单击中单击“新建数据库角色新建数据库角色”命令,打开命令,打开“新建角色新建角色”对话框。对话框。11.4.4 11.4.4 用户定义数据库角色用户定义数据库角色(3)在在“名称名称”框中输入框中输入角色
47、名角色名“wang”,在,在“数据库角色类型数据库角色类型”项项下,选择下,选择“标准角色标准角色”单选按钮。单选按钮。(4)单击单击“确定确定”按钮完按钮完成操作。成操作。11.4.4 11.4.4 用户定义数据库角色用户定义数据库角色例例11-20使用企业管理器删除用户定义数据库使用企业管理器删除用户定义数据库角色角色“wang”。(1)打开企业管理器,展打开企业管理器,展开选定的数据库,单击开选定的数据库,单击“角色角色”项。项。(2)在若窗格中右键单击在若窗格中右键单击要删除的数据库角色要删除的数据库角色“wang”,在弹出的菜,在弹出的菜单中选择单中选择“删除删除”命令。命令。(3)
48、在弹出的对话框中单在弹出的对话框中单击击“是是”按钮,完成删按钮,完成删除操作。除操作。11.4.4 11.4.4 用户定义数据库角色用户定义数据库角色使用使用sp_addrole和和sp_droprole可以创可以创建和删除用户定义数据库角色建和删除用户定义数据库角色其语法格式分别为:其语法格式分别为:nsp_addrolerolename=role,ownername=ownernsp_droprolerolename=role11.4.4 11.4.4 用户定义数据库角色用户定义数据库角色UseSalesGOEXECsp_addrolerole01例例11-21使用系统存储过程创建名为使
49、用系统存储过程创建名为“role01”的用户定义数据库角色到的用户定义数据库角色到Sales数数据库中。据库中。11.4.4 11.4.4 用户定义数据库角色用户定义数据库角色USESalesGOEXECSP_droprolerole01例例11-22使用系统存储过程删除数据库使用系统存储过程删除数据库Sales中名为中名为“role01”的用户定义数据库角色。的用户定义数据库角色。11.4.4 11.4.4 用户定义数据库角色用户定义数据库角色n添加和删除用户定义数据库角色成员可以添加和删除用户定义数据库角色成员可以使用企业管理器和系统存储过程来完成。使用企业管理器和系统存储过程来完成。2.
50、添加和删除用户定义数据库角色成员添加和删除用户定义数据库角色成员11.4.4 11.4.4 用户定义数据库角色用户定义数据库角色例例11-23使用企业管理器将成员添加到用户定使用企业管理器将成员添加到用户定义数据库角色义数据库角色ZG001中。中。(1)打开企业管理器,展开打开企业管理器,展开Sales数据库。数据库。(2)单击单击“角色角色”项,在右项,在右窗格中,右键单击角色窗格中,右键单击角色“role01”,在弹出的,在弹出的菜单中选择菜单中选择“属性属性”项,项,打开打开“数据库角色属性数据库角色属性”对话框。对话框。11.4.4 11.4.4 用户定义数据库角色用户定义数据库角色(