[精选]数据库安全性控制课件.pptx
《[精选]数据库安全性控制课件.pptx》由会员分享,可在线阅读,更多相关《[精选]数据库安全性控制课件.pptx(44页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数据库应用教程数据库应用教程n8.2.1 SQL Server的安全机制的安全机制n8.2.2 效劳器登录帐号的管理效劳器登录帐号的管理n8.2.3 数据库用户管理数据库用户管理 8.2 数据库的安全性控制数据库的安全性控制n8.2.4 管理权限管理权限 8.2 数据库的安全性管理数据库的安全性管理 一个机构建立数据库的目的是为了数据库中的数据能一个机构建立数据库的目的是为了数据库中的数据能够被机构中的用户共享访问,但数据库中的数据不能被破够被机构中的用户共享访问,但数据库中的数据不能被破坏,重要数据如银行账号的密码也只能由具有特殊权坏,重要数据如银行账号的密码也只能由具有特殊权力的人员访问,
2、因此数据库系统必须能够预防来自机构内力的人员访问,因此数据库系统必须能够预防来自机构内部或外部的人对数据的成心破坏或窃取。可见,安全性是部或外部的人对数据的成心破坏或窃取。可见,安全性是数据库设计的重要组成局部。数据库设计的重要组成局部。所谓数据库的安全性:是指保护数据以防止因不合法所谓数据库的安全性:是指保护数据以防止因不合法的使用而造成数据的泄密和破坏。为保证数据库的安全性,的使用而造成数据的泄密和破坏。为保证数据库的安全性,需要采取一定的安全保护措施。需要采取一定的安全保护措施。SQL Server的安全模型增删改查增删改查增删改查增删改查增删改查增删改查数据库用户数据库用户数据库用户登
3、录帐号登录帐号SQLserver三层安全管理数据表数据表数据表数据表1 1 1 1数据表数据表数据表数据表2 2DB1数据表数据表数据表数据表1 1 1 1数据表数据表数据表数据表2 2DB2数据表数据表数据表数据表1 1 1 1数据表数据表数据表数据表2 2DB38.2.1 SQL Server的安全机制的安全机制 SQL Server 2000的安全机制包括身份验证和权限验的安全机制包括身份验证和权限验证两个方面证两个方面。1SQL Server的身份验证模式的身份验证模式 用户要想访问用户要想访问SQL Server数据库中的数据,必须以合法身份登录到数据库中的数据,必须以合法身份登录到
4、SQL Server效劳器上,效劳器上,SQL Server或者操作系统对用户的身份进行验证,这一阶或者操作系统对用户的身份进行验证,这一阶段称为身份验证阶段段称为身份验证阶段Authentication。SQL Server身份验证有两种模式:身份验证有两种模式:Windows身份验证模式和混合身份验证模式。身份验证模式和混合身份验证模式。在在企业管理器,展开企业管理器,展开“效劳器组节点,在其中的某个效劳器组节点,在其中的某个SQL Server效劳效劳器上单击鼠标右键,在弹出的快捷菜单中选择器上单击鼠标右键,在弹出的快捷菜单中选择“编辑编辑SQL Server注册属性注册属性菜单项,将会
5、翻开菜单项,将会翻开“已注册的已注册的SQL Server属性对话框。在该对话框中可以属性对话框。在该对话框中可以设置身份验证模式。设置身份验证模式。登录方式n登录验证有两种方式:qSQL身份验证:适合于非windows平台的用户或Internet用户,需要提供帐户和密码qWindows身份验证:适合于windows平台用户,不需要提供密码,和windows集成验证n登录帐户相应有两种::SQL 帐户和Windows帐户 创立登录账户n使用SQL语句创立两种模式下的登录帐户q添加WINDOWS登录帐户q添加SQL登录帐户 EXEC sp_grantlogin windows域名域帐户 EXEC
6、 EXEC sp_addlogin 帐户名,密码 创立登录账户添加Windows登录帐户/windows用户为S01,SDXY表示域 如是本机,SDXY为计算机名 EXEC sp_grantlogin SDXYS01添加SQL登录帐户/登录名为zhangsan,密码为1234 EXEC sp_addlogin zhangsan,1234 GO 演示:创立登录帐户演示:创立登录帐户创立数据库用户n创立了登录帐户,只能登录到SQL Server系统,但还不能访问某个数据库。如果希望访问某个数据库,必须要成为该数据库的一个用户。n创立数据库用户需要调用系统存储过程sp_grantdbaccess n
7、在empDB中添加两个用户 EXEC sp_grantdbaccess 登录帐户,数据库用户 USE empDB-S01DBUser为数据库用户名EXEC sp_grantdbaccess SDXYS01,S01DBUserEXEC sp_grantdbaccess zhangsan,zhangsanDBUser 演示:创立数据库用户演示:创立数据库用户8.2.1 SQL Server的安全机制的安全机制 2权限验证权限验证 当用户通过身份验证登录到当用户通过身份验证登录到SQL Server效劳器上后,还必须经过权限验证以效劳器上后,还必须经过权限验证以决定他能访问的数据库及对访问的数据库所
8、允许执行的操作。决定他能访问的数据库及对访问的数据库所允许执行的操作。为了对数据库中的对象设置安全权限,每个数据库都要求设置单独的用户账号。为了对数据库中的对象设置安全权限,每个数据库都要求设置单独的用户账号。因此在因此在SQL Server中,账号有两种:登录账号和数据库用户账号。中,账号有两种:登录账号和数据库用户账号。登录账号属于效劳器层面的,本身并不能让用户访问效劳器中的数据库。登录登录账号属于效劳器层面的,本身并不能让用户访问效劳器中的数据库。登录用户要想访问数据库,应先把他参加到数据库中使他成为数据库用户,即在数用户要想访问数据库,应先把他参加到数据库中使他成为数据库用户,即在数据
9、库中有一个关联的数据库用户账号,数据库用户账号可以与用户账号同名也据库中有一个关联的数据库用户账号,数据库用户账号可以与用户账号同名也可以不同名。可以不同名。如果登录账号在数据库中不存在对应的数据库用户账号,假设数据库中存在如果登录账号在数据库中不存在对应的数据库用户账号,假设数据库中存在Guest账号,则登录用户可以使用账号,则登录用户可以使用Guest账号访问数据库。登录账号对应的数账号访问数据库。登录账号对应的数据库用户账号的数据库访问权限决定了用户在数据库中可以进行哪些操作。据库用户账号的数据库访问权限决定了用户在数据库中可以进行哪些操作。用户获得对数据库的访问权限以后,就可以存取数据
10、库了。用户获得对数据库的访问权限以后,就可以存取数据库了。8.2.2 效劳器登录账号的管理效劳器登录账号的管理 1查看登录账号查看登录账号 可使用企业管理器查看登录账号,方法是在企业管理器中,展开相应的可使用企业管理器查看登录账号,方法是在企业管理器中,展开相应的SQL Server效劳器节点,再展开其下的效劳器节点,再展开其下的“安全性节点,单击其下的安全性节点,单击其下的“登录图登录图标,在右侧的标,在右侧的“内容显示窗口中将显示出系统创立的默认登录账户以及已建内容显示窗口中将显示出系统创立的默认登录账户以及已建立的其他登录账户立的其他登录账户。如果采用的是如果采用的是Windows NT
11、 Server操作系统,将会有三个默认账号,含义如下:操作系统,将会有三个默认账号,含义如下:BUILTINAdministrators:但凡:但凡Windows NT Server/2000中的中的Administrators组的账号都允许作为组的账号都允许作为SQL Server登录账号使用。登录账号使用。域名域名Administrator:允许:允许Windows NT Server的的Administrator账号作为账号作为SQL Server登登 录账号使用。录账号使用。sa:SQL Server系统管理员登录账号,该账号拥有最高的管理权限,可以执系统管理员登录账号,该账号拥有最高
12、的管理权限,可以执行效劳器范围内的所有操作。通常行效劳器范围内的所有操作。通常SQL Server管理员也是管理员也是Windows NT或或Windows Server 2000的管理员。的管理员。8.2.2 效劳器登录账号的管理效劳器登录账号的管理 2创立登录账号创立登录账号【例例8-19】为为SQL Server效劳器创立一个登录账号,账号名为效劳器创立一个登录账号,账号名为CollegeMISAdm,密码为,密码为tah980808,只能访问,只能访问CollegeMIS数据库。该登录数据库。该登录账号的效劳器角色为账号的效劳器角色为Database Creator。1在企业管理器中,
13、依次展开至本地效劳器在企业管理器中,依次展开至本地效劳器TAHSJ下的下的“安全性节点,安全性节点,在其下的在其下的“登录图标上单击右键,在出现的快捷菜单中选择登录图标上单击右键,在出现的快捷菜单中选择“新建登录菜单项,新建登录菜单项,将会出现将会出现“SQL Server登录属性登录属性新建登录对话框。新建登录对话框。2在该对话框在该对话框“常规页,输入登录名称为常规页,输入登录名称为“CollegeMISAdm,选中,选中“SQL Server身份验证单项选择钮并输入密码,在身份验证单项选择钮并输入密码,在“数据库后面的下拉式数据库后面的下拉式列表框中选择列表框中选择“CollegeMIS
14、数据库数据库 3单击单击“效劳器角色页标签,选中效劳器角色为效劳器角色页标签,选中效劳器角色为“Database Creator 4“数据库访问页设置。数据库访问页设置。5再次输入确认密码。再次输入确认密码。8.2.2 效劳器登录账号的管理效劳器登录账号的管理 2创立登录账号创立登录账号角色角色Role是一组具有相同权限的用户所构成的组,在是一组具有相同权限的用户所构成的组,在SQL Server中可分为效中可分为效劳器角色与数据库角色。劳器角色与数据库角色。效劳器角色是负责管理与维护效劳器角色是负责管理与维护SQL Server的登录账号组,一般应指定管理效劳的登录账号组,一般应指定管理效劳
15、器的登录账号属于哪个效劳器角色。器的登录账号属于哪个效劳器角色。SQL Server在安装过程中定义几个固定的在安装过程中定义几个固定的效劳器角色效劳器角色 8.2.2 效劳器登录账号的管理效劳器登录账号的管理 3登录账号属性修改登录账号属性修改在企业管理器中,展开至在企业管理器中,展开至SQL Server效劳器的效劳器的“安全性节点,单击其下的安全性节点,单击其下的“登录图标,在右侧的登录图标,在右侧的“内容显示窗口中将显示出所有的登录账号。在相内容显示窗口中将显示出所有的登录账号。在相应登录账号上单击右键,在出现的快捷菜单中选择应登录账号上单击右键,在出现的快捷菜单中选择“属性菜单项,将
16、会出现属性菜单项,将会出现“SQL Server登录属性对话框,在该对话框中可以对登录账号的属性进行修登录属性对话框,在该对话框中可以对登录账号的属性进行修改,修改完成后按改,修改完成后按“确定按钮即可。确定按钮即可。例如,假设要暂时禁止一个使用例如,假设要暂时禁止一个使用Windows身份验证的登录账户连接到身份验证的登录账户连接到SQL Server,只需在,只需在“SQL Server登录属性对话框中,选择登录属性对话框中,选择“常规页,然后选常规页,然后选取取“拒绝访问复选框即可。假设要暂时禁止一个使用拒绝访问复选框即可。假设要暂时禁止一个使用SQL Server身份验证身份验证的登录
17、账号连接到的登录账号连接到SQL Server,只需要修改该账户的登录密码,当允许该账,只需要修改该账户的登录密码,当允许该账户登录时,再把密码改回即可。户登录时,再把密码改回即可。在企业管理器中,展开至在企业管理器中,展开至SQL Server效劳器的效劳器的“安全性节点,单击其下的安全性节点,单击其下的“登登录图标,在右侧的录图标,在右侧的“内容显示窗口中将显示出所有的登录账号。在相应登录内容显示窗口中将显示出所有的登录账号。在相应登录账号上单击右键,在出现的快捷菜单中选择账号上单击右键,在出现的快捷菜单中选择“删除菜单项或选中相应登录账删除菜单项或选中相应登录账号,直接按号,直接按Del
18、ete键,在出现的键,在出现的“确认对话框中单击确认对话框中单击“是按钮即可。是按钮即可。4删除登录账号删除登录账号 8.2.3 数据库用户管理数据库用户管理 SQL Server系统安装后,系统安装后,master、tempdb、msdb等默认数据等默认数据库包含两个数据库用户账号:库包含两个数据库用户账号:dbo和和guest。任何一个登录账号都可以。任何一个登录账号都可以通过它的通过它的guest用户账号来存取相应的数据库。但在在用户账号来存取相应的数据库。但在在SQL Server中中新建一个数据库时,默认只有新建一个数据库时,默认只有dbo用户账号而没有用户账号而没有guest用户账
19、号。因用户账号。因此要让其他的登录账号具有访问新建的数据库的权限,必须使登录账此要让其他的登录账号具有访问新建的数据库的权限,必须使登录账号关联一个新建的数据库的用户账户。号关联一个新建的数据库的用户账户。每个登录账号在一个数据库中只能有一个用户账号,但每个登录每个登录账号在一个数据库中只能有一个用户账号,但每个登录账号可以在不同的数据库中各有一个用户账号。登录账号具有对某个账号可以在不同的数据库中各有一个用户账号。登录账号具有对某个数据库的访问权限,并不表示该登录账号对该数据库具有存取的权限,数据库的访问权限,并不表示该登录账号对该数据库具有存取的权限,如果要对数据库对象进行插入、更新、删除
20、等操作,还需要设置用户如果要对数据库对象进行插入、更新、删除等操作,还需要设置用户账号的权限。账号的权限。需注意的是除需注意的是除master和和tempdb数据库中的数据库中的guest用户账号不能删除用户账号不能删除外,其他数据库中的外,其他数据库中的guest用户账号都可以删除。用户账号都可以删除。8.2.3 数据库用户管理数据库用户管理1创立数据库用户账号创立数据库用户账号【例例8-20】为为Pubs数据库创立一个数据库用户账号,账号名为数据库创立一个数据库用户账号,账号名为“CollegeMISAdmPubs,角色为,角色为public、db_datareader和和db_dataw
21、riter。1在企业管理器中,展开在企业管理器中,展开SQL Server效劳器下的效劳器下的“数据库节点,展开数据库节点,展开Pubs数据库,在其下的数据库,在其下的“用户图标上单击右键,在出现的快捷菜单中选择用户图标上单击右键,在出现的快捷菜单中选择“新建数新建数据库用户菜单项,将会出现据库用户菜单项,将会出现“数据库用户属性对话框。数据库用户属性对话框。2在在“数据库用户属性对话框中的数据库用户属性对话框中的“登录名后面的下拉式列表框中选取登录名后面的下拉式列表框中选取“CollegeMISAdm登录名,用户名自动变为登录名,用户名自动变为“CollegeMISAdm,把该名称改为,把该
22、名称改为“CollegeMISAdmPubs假设不修改,则数据库用户账号和登录账号名称一致假设不修改,则数据库用户账号和登录账号名称一致。选取数据库角色为。选取数据库角色为public、db_datareader和和db_datawriter。3单击单击“确定按钮,即可为确定按钮,即可为pubs数据库创立了一个数据库用户,用户名为数据库创立了一个数据库用户,用户名为“CollegeMISAdmPubs。8.2.3 数据库用户管理数据库用户管理数据库角色:数据库角色:和登录账号类似,用户账号也可以分成组,称为数据库角色和登录账号类似,用户账号也可以分成组,称为数据库角色Database Role
23、s。在实际应用中,可以建立一个角色来代表机。在实际应用中,可以建立一个角色来代表机构中一类拥有相同权限的工作人员,然后给这个角色授予适当的权构中一类拥有相同权限的工作人员,然后给这个角色授予适当的权限。在限。在SQL Server中,数据库角色可分为两种:标准角色和应用中,数据库角色可分为两种:标准角色和应用程序角色。标准角色是由数据库用户或其他的数据库角色所组成的程序角色。标准角色是由数据库用户或其他的数据库角色所组成的组,组中的每个数据库用户或角色称为成员,应用程序角色不包括组,组中的每个数据库用户或角色称为成员,应用程序角色不包括任何成员,主要用来控制应用程序存取数据库。在创立一个数据库
24、任何成员,主要用来控制应用程序存取数据库。在创立一个数据库时,系统默认创立时,系统默认创立10个固定的标准角色。个固定的标准角色。8.2.3 数据库用户管理数据库用户管理2设置数据库用户账号的权限设置数据库用户账号的权限在创立数据库用户账号时在创立数据库用户账号时,“数据库用户属性对话框中数据库用户属性对话框中“登录名右侧的登录名右侧的“权限权限按钮是灰色的,表示不能在创立数据库用户账号的同时设置其权限。但可以按钮是灰色的,表示不能在创立数据库用户账号的同时设置其权限。但可以在创立数据库用户账号后再通过其属性对话框来设置权限。在创立数据库用户账号后再通过其属性对话框来设置权限。例:为例:为Co
25、llegeMIS数据库的数据库用户账号数据库的数据库用户账号CollegeMISAdm设置用户权限。设置用户权限。起始步骤:在企业管理器中,展开至起始步骤:在企业管理器中,展开至CollegeMIS数据库,单击数据库,单击“用户图标,用户图标,在右侧的内容显示窗口中将显示出该数据库的所有用户账号。在在右侧的内容显示窗口中将显示出该数据库的所有用户账号。在“CollegeMISAdm用户账号上单击右键,在出现的快捷菜单中选择用户账号上单击右键,在出现的快捷菜单中选择“属性菜属性菜单项,将会出现单项,将会出现“数据库用户属性对话框。数据库用户属性对话框。8.2.3 数据库用户管理数据库用户管理2设
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精选 数据库 安全性 控制 课件
限制150内