数据库的安全性.ppt
注意:Windowsxp不支持“强制实施密码策略”,不要勾选此项数据库角色要么在创建角色时由明确指定为所有者的用户所拥有,要么在未指定所有者时为创建角色的用户所拥有。角色的所有者决定可以在角色中添加或删除谁。但是,角色不是数据库的对象,不能在同一数据库中创建由不同用户所拥有的多个同名角色。拒绝==deny命令具有授予权限==withgrantoption数据库系统中,DBMS提供统一的数据保护功能:保证数据的正确、一致——数据的完整性防范对象:不合语义的、不正确的数据保证数据的安全可靠——数据的安全性防范对象:非法用户和非法操作Page*第8章数据库的安全性用户管理01角色划分02权限管理03数据的导入/导出和备份04*网络登录登录用户数据库
服务器学生库教师库财务库表1表2表3表4是否可以操作数据库?有相应操作权限?是合法服务器用户?SQLServer2005的安全机制:
用户访问数据库必须经过两级安全性检查,即用户身份检查、用户操作权限检查。--用户身份检查:DBMS对连接数据库服务器的用户进行身份检查;--操作权限检查:对已经连接到服务器的用户,检查其是否可以操作指定数据库及其对象,是否有相应的操作权限。*支持Windows身份验证模式和混合模式两种身份验证模式。Windows身份验证模式:
SQLServer利用其操作系统平台的管理登录、验证用户合法性的能力,用户只需要通过Windows的身份验证,就可以连接到SQLServer,SQLServer本身不需要管理一套登录数据。混合模式:
允许用户选择使用其Windows账户或其SQLServer账户登录到SQLServer系统。
对于后者,SQLServer自己设置和管理SQLServer登录账户,并对登录用户进行身份验证。说明:在安装SQLServer2005服务器时,曾要求选择身份验证模式,通常选择混合模式,同时设置了系统登录账户sa的登录密码。安装后也可随时更改身份验证模式。在SSMS中右击服务器,选择“属性”修改后重新启动SQLServer才生效用户登录到服务器后,对某数据库及其对象进行操作时,系统还要检查:该登录账户是否在该数据库中有数据库帐号;有无对该数据库对象相应的操作权限。用户:分为登录用户和数据库用户。数据库用户:登录用户只有在相应的数据库中映射(设置)为其合法的用户,才允许访问该数据库。默认新建立的数据库都自动添加了一个由sa登录帐号映射得到的数据库用户dbo。登录用户的权限:对服务器的安装、配置、备份、文件、进程、安全性和批量数据导入等管理工作。登录用户又分为Windows管理的用户和SQLServer服务器管理的用户。权限:用户登录后,能对服务器、数据库及其对象执行什么样的操作,称之为用户的权限。数据库用户的权限:权限分三个层次:创建数据库对象及进行数据库备份的权限、对数据库对象的操作权限以及对指定表字段的操作权限。123456角色:对权限的一种集中管理方式,通过角色将用户分类,同类用户统一进行权限管理,简化了用户的权限管理工作。固定服务器角色:Sysadmin:可以在SQLServer中执行任何操作Serveradmin:可以设置服务器范围的配置选项,关闭服务器Setupadmin:可以管理链接服务器和启动过程Securityadmin:可以管理登录和CREATEDATABASE权限,可以读取错误日志和更改密码Processadmin:可以管理在SQLServer中运行的进程Dbcreator:可以创建、更改和除去数据库Diskadmin:可以管理磁盘文件Bulkadmin:可以执行BULKINSERT(大容量数据插入)语句*固定数据库角色:Public:每个数据库用户都属于public角色db_owner:在数据库中有全部权限db_accessadmin:可以增加或者删除数据库用户db_securityadmin:管理数据库角色和成员,并管理数据库的语句和对象权限db_ddladmin:可以添加、修改或除去数据库中的对象(运行所有DDL)db_backupoperator:可以备份和恢复数据库db_datareader:可以读取数据库内任何用户表中的所有数据db_datawriter:可以更改数据库内任何用户表中的所有数据db_denydatareader:不能读取数据库内任何用户表中的任何数据db_denydatawriter:不能更改数据库内任何