版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第八章数据库安全性学习要点
数据库安全概述
服务器登录
服务器登录账户
数据库用户的管理
角色的管理
权限的管理next数据库安全概述
问题的提出数据库的一大特点是数据可以共享数据共享必然带来数据库的安全性问题数据库系统中的数据共享不能是无条件的共享如何实现有限制的数据访问?学习要点数据库安全概述
数据库安全性控制
数据库安全性控制的常用方法:用户标识和鉴定存取控制视图审计数据加密数据库安全概述SQLServer的安全机制
学习要点数据库的访问表或视图的访问过程、内嵌表值函数的访问表或视图中列的访问身份验证/连接权权限验证/访问权6级/2阶段计算机连接服务器的登录服务器登录登录身份验证模式
Windows身份验证模式使用Windows操作系统的登录账户和密码连接SQL服务器。只进行Windows身份验证。用户不能指定SQLServer登录帐户,是默认的身份验证模式。混合验证模式可使用SQLServer身份验证或Windows身份验证。若使用SQLServer身份验证模式,要提供SQLServer登录帐户和密码进行验证。服务器登录登录身份验证模式设置
服务器登录帐户系统管理员登录账户
安装SQLServer后系统自动创建以下两个用户,它们具有SQLServer系统和所有数据库的全部操作权限。
sa
混合身份验证机制下SQLServer的系统管理员。不可删除、不能更改。
BUILTIN\AdministratorsWindows组账户,凡属于该组的Windows账户都可作为SQLServer的登录账户。服务器登录帐户登录账户查看
SSMS系统创建的默认的登录账户服务器登录帐户登录账户查看
SSMS系统创建的默认的登录账户服务器登录帐户创建登录账户
SSMS服务器登录帐户创建登录账户
SSMS服务器登录帐户创建Windows登录账户
T-SQL语句
Winlogin必须是合法的Windows用户示例:创建Windows登录账户winlogin
CREATELOGIN[LIUZC\winlogin]FROMWINDOWSCREATELOGIN
登录名FROMWindows服务器登录帐户删除和修改登录账户
SSMSStep2服务器登录帐户删除和修改登录账户
SSMS数据库用户管理数据库用户(dbAccess)
服务器登录名只是访问SQLServer的通行证,本身并不能访问具体的数据库,必须在要访问的数据库上建立用户。数据库用户在特定的数据库上创建,必须和一个登录名相关联。数据库用户相关信息保存在各自数据库的sysusers表中。数据库用户管理特殊数据库用户
dbo是数据库对象的所有者,每个数据库中都存在,不能删除,具有操作该数据库的所有权限,与该数据库创建者的登录账户关联。guest默认情况下,新建的数据库中没有guest用户。可以在数据库中添加或删除。它自动关联服务器所有登录账户,允许在该数据库中没有相应用户的登录账户访问数据库。数据库用户管理特殊数据库用户
当一个登录账户试图访问某个数据库时,SQLServer将在库中的sysusers表中查找对应的用户名,如果登录名不能映射到数据库的某个用户,系统会试图将该登录名映射成guest用户,如果当前数据库中不存在guest用户,该登录账户将无法访问数据库。一个登录账户可以映射到不同的数据库,产生多个数据库用户;一个用户只能映射到一个登录账户。数据库用户管理新建数据库用户T-SQL语句CREATEUSER数据库用户名[{
FOR|FROM}{LOGIN登录名}|WITHOUTLOGIN]示例:创建数据库用户newuser,并与登录账户newlogin关联
USELibraryGO
CREATEUSERnewuserFORLOGINnewloginGO数据库用户管理管理数据库用户T-SQL语句修改删除查看学习要点ALTERUSER数据库用户名WITH<修改项>[,…n]DROPUSER数据库用户名EXECsp_helpuser角色的管理添加和删除固定服务器角色成员
SSMS工具角色的管理添加和删除固定服务器角色成员
SSMS工具角色的管理添加和删除固定服务器角色成员
T-SQL语句学习n要点sp_addsrvrolemember
'登录用户名','固定服务器角色名'sp_dropsrvrolemember'登录用户名','固定服务器角色名'示例:设置newlogin为[sysadmin]角色的成员,使其能够在SQL服务器中进行任何活动。sp_addsrvrolemember‘newlogin','sysadmin'角色的管理固定服务器角色成员
学习n要点固定服务器角色的成员是服务器的登录账户。最初可由sa超级账户将登录账户添加到固定服务器角色中。也可由sysadmin或securityadmin的成员将登录账户添加到固定服务器角色中还可以由每种固定服务器角色的每个成员向该角色中添加其他登录账户。角色的管理数据库角色数据库角色定义在数据库级上,作用在各自的数据库之内,保存在各自数据库的系统表sysusers中。系统提供10种固定数据库角色,也允许用户自定义角色。固定数据库角色的权限都是固定的、不可更改或删除,只允许为其添加或删除成员。Public是一个特殊的数据库角色,数据库中的每个数据库用户都自动是此角色的成员,最初创建只有本数据库的系统表和系统视图的select权限。可以通过授予、拒绝或撤销方法增减权限,提供数据库中所有用户的默认权限。角色的管理创建自定义数据库角色SSMS工具角色的管理创建自定义数据库角色T-SQL语句CREATEROLE角色名[AUTHORIZATION所有者]
新角色的所有者必须是当前数据库中的某个用户或角色,默认值为dbo。角色的管理管理数据库角色T-SQL语句修改删除ALTERROLEWITHNAME=新角色名DROPROLE角色名角色的管理添加和删除数据库角色成员SSMS工具角色的管理添加和删除数据库角色成员SSMS工具角色角色的管理添加和删除数据库角色成员T-SQL语句角色sp_addrolemember‘数据库角色’,‘安全账户’sp_droprolemember‘数据库角色',‘安全账户'权限的管理权限
用来指定授权用户可以使用的数据库对象以及可以对这些对象执行的操作。管理权限实质就是管理数据库访问的安全性:用户:服务器登录账户、角色中的成员和数据库用户数据库资源:服务器、数据库、库中表或视图、自定义函数、存储过程、表或视图中的列相应的操作方式权限的管理权限
SQLServer中有三种类型的权限:语句权限:用户能否对数据库及其对象进行操作。角色权限的管理权限
SQLServer中有三种类型的权限:对象权限:基于数据库层次上的访问和操作权限。默认权限:指将用户(成员)加入角色,系统自动将角色的权限传递给成员的权限,由添加或删除角色成员实现。对象操作表或视图select、insert、update和delete存储过程execute内嵌表值函数select表或视图的列select、update权限的管理权限的授予、撤销和禁止
SSMS工具:权限的管理权限的授予、撤销和禁止
SSMS工具:权限的管理权限的授予、撤销和禁止
T-SQL语句授予语句权限授予对象权限角色
GRANT权限语句[,...]TO安全用户[,...]GRANT权限[,...]
ON表或视图[(列[,...])]|存储过程|用户自定义函数
TO安全账户[,...]权限的管理权限的授予、撤销和禁止
T-SQL语句禁止语句权限禁止对象权限
DENY权限语句[,...]TO安全用户[,...]DENY权限[,...]
ON表或视图[(列[,...])]|存储过程|用户自定义函数
TO
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论