第九章安全性管理.ppt
文本预览下载声明
第9章 SQL Server的安全性管理 ;9.1 SQL Server的安全性机制
9.2 SQL Server的登录模式
9.3 SQL Server用户标识和鉴别
9.4 角色与权限
9.5 数据库的并发控制 ;9.1 SQL Server的安全性机制 ;数据库管理系统级安全性控制—SQL Server 的登录认证
SQL Server支持两种认证方式
Windows认证模式
混合认证模式;以Windows NT或2000的安全性来确定用户登录的账号是否正确
利用NT或2000本身具有的管理登录、验证用户合法性的能力
允许SQL Server使用NT或2000的用户名和口令登录验证用户的合法性
系统管理员将安全认证模式设为Windows认证模式,以授权给可访问NT或2000的合法用户,而直接成为SQL Server的合法登录用户
连接SQL Server时不需在输入账号和密码
在安装SQL Server后,系统中预设了三个账户,分别为
BUILTIN\Administrators
网络名\Administrator
sa;混合认证模式
由SQL Server自身来执行验证工作
Windows认证和SQL Server 认证两种认证模式都可用
SQL Server 认证模式
SQL Server 自己执行认证处理
用户在连接SQL Server 时必须提供登录名和密码
登录信息存储在系统表syslogins中
若输入的登录信息与系统表syslogins 中的某条记录相匹配则表明登录成功;注意下列三种情况
若用户在登录SQL Server时未给出用户登录名,则SQL Server会自动使用 Windows认证模式
若SQL Server被设置为Windows认证模式,则用户在登录时输入的具体登录 名会被SQL Server忽略
若SQL Server运行在Windows 95/98桌面版上时,则Windows认证模式无效
;通过SQL Server企业管理器进行认证模式的设置;用企业管理器新建SQL Server 登录用户;若选择为Windows身份验证,可单击“名称”文本框后的“…”按钮,打开Windows用户组和用户列表,选择一个用户名,单击“添加”及“确定”按钮,回到“新建登录”对话框中;注
选择Windows认证模式
在“名称” 处输入的账号必须是Windows已建的登录者或组
“名称”的格式为Windows网络名称\用户名或Windows主机名\用户名
选择Windows认证模式且使用了NT网络
在“域”中输入登录账号或组所属的域
若未使用NT网络,则在“域”中输入登录账号所属的NT主机名
选择Windows认证模式且登录账号是Windows NT或Windows 2000中的内建用户组,如:Administrators
必须在“域”中输入BUILTIN 而不是NT主机名或NT网络域名;使用系统存储过程新建和管理SQL Server 登录;sp_grantlogin ;sp_denylogin ;sp_helplogins ;数据库级安全性 — 数据库用户
用来指出哪一个用户可以访问哪一个数据库
在一个数据库中,用户账号唯一标识一个用户
用户对数据的访问权限以及对数据库对象的所有关系都是通过用户账号来控制。
数据库中的用户账号与登录账号是两个不同的概念;guest用户;利用SQL Server企业管理器创建新数据库用户;在创建和维护SQL Server登录账号时,先将该登录账号映射为一个数据库用户 ;利用系统存储过程创建和管理新数据库用户;sp_revokedbaccess ;数据库对象级安全性-权限和角色
将登录账户映射为数据库用户账户后,该用户可以访问该数据
其访问数据库的权限取决于其所属的角色以及所授予的权限
权限
规定该用户能够对哪些数据库对象执行哪(些)种操作,以及能够访问和修改哪些数据
角色
管理员可将某些用户设置为某一角色,只对角色进行权限设置,便可实现对所有具有该角色的用户的权限的设置,减少了管理员的工作量
如
缺省情况下,一个新数据库用户的权限具有public 角色
public 是一个特殊的数据库角色,含在每个数据库中,包括 master、msdb、tempdb、model 和所有用户数据库
每个数据库用户都属于它,并且无法除去该角色
public 角色可以自动获取数据库用户的所有默认权限;权限分类
对象权限和语句权限
对象权限
针对表、视图、存储过程
决定了能对表、视图、存储过程执行哪些操作,包括UPDATE、DELETE、INSERT、EXECUTE
语句权限
用户是否具有权限来执行某一语句
这些语句通常是一些具有管理性的操作,如创建数据库、表、存储过程等;对象权限;利用企
显示全部