分类: 数据库开发技术
2008-08-27 23:52:51
第三章 安全管理
一、管理服务器安全
1.SQL Server 的验证模式
Windows身份验证
相对于SQL Server的优势:
可以将Windows用户组映射到一个SQL Server登录账户。
用户访问SQL Server更快,不用输入用户名和密码
混合模式:
Windows用户映射到SQL Server登录账户称为Windows登录账户,由SQL Server验证的登录账户为SQL Server登录账户
2.服务器角色
是执行服务器级管理操作的权限的集合。这些角色是内置在系统中的。作用于整个服务器而不是单独的哪个数据库
Sysadmin 执行任何活动
Dbcreator 可以创建、更改数据库
Serveradmin 可以更改服务器范围的配置选项和关闭服务器
Securityadmin 管理和审核登录账户
Processadmin 可以终止SQL Server实例中运行的进程
Setupadmin 配置复制和连接服务器
Diskadmin 拥有管理磁盘文件
Bulkadmin 运行bulk insert语句
指派登录账户到服务器角色中,应注意:
a.不能添加、修改和删除服务器角色
b.任何已经被指派到服务器角色的登录账户可以添加其他登录账户到这个角色,他拥有这个权限。
c.可以适用对象资源管理器来从服务器角色中去除登录账户
三、管理数据库安全
1.数据库用户
:是映射到登录账户的
在删除用户以前必须先转移用户的对象归属权
2.特殊用户
Dbo:是数据库的所有者,对该数据库由所以权限。不能被删除。多对一
Guest :不能被删除。一对多默认是禁用的。
3.数据库角色
固定数据库角色:是一组SQL Server预定义的数据库角色,具有数据库级别的管理权限,
Db_owner 拥有数据库的所以许可
Db_securityadmin 能建立架构、更改角色
Db_accessadmin 能添加或删除用户、组或角色
Db_backupoperator 能备份数据库
Db_datareader 能从数据库中读取数据】
Db_datawriter 能修改数据库中的数据
Db_ddladmin 能添加、删除或修改数据库对象
Db_denydatareader 不能从数据库中读取数据
Db_denydatawriter 不能从数据库中修改数据
Public 维护默认的权限
所有用户、角色或组默认属于public,不能被删除
2.用户定义数据库角色
四、管理数据对象
1.权限:用于控制对数据库对象的访问,以及指定用户对数据库可以执行的操作
权限可以被授予(grant)、拒绝(deny)、回收(revoke)
一个拒绝语句总是优先于授予语句。
可以为表授权,也可以为数据库授权
SQL Server 2005 安全机制主要包括5个方面:客户机、网络传输、服务器、数据库、数据库对象