数据库安全性(预习421以与41内容).pptVIP

  • 3
  • 0
  • 约7.82千字
  • 约 71页
  • 2018-10-15 发布于浙江
  • 举报
数据库安全性(预习421以与41内容).ppt

登录名与用户名 用户名与登录名有何区别于联系? DB1 DB2 DBi …… 登录名 用户名 登录名:登录SQL SERVER服务器, 但是不能访问服务器中的数据库资源。 用登录名登录SQLSERVER后,在访问各个数据库时,SQLSERVER会自动查询此数据库中是否存在与此登录名关联的用户名,若存在就使用此用户的权限访问此数据库,若不存在就用guest用户访问此数据库? 好比SQLSERVER就象一栋大楼,里面的每个房间都是一个数据库,登录名只是进入大楼的钥匙,而用户名则是进入房间的钥匙 4.2.2 存取控制 数据库安全性: 防范对象是非法用户和非法操作 保护数据库防止恶意破坏和非法的存取 确保只授权给有资格的用户访问以及在权限内的操作 ——通过存取控制机制来实现 存取控制机制: 定义用户权限,并将用户权限登记到数据字典中 grant语句 合法权限检查:若用户的操作请求超出了定义的权限,系统将拒绝执行此操作 主要防范什么? 存取控制的种类(136页) 自主存取控制(c2级):绝大多数DBMS采用的方法 DAC: Discretionary(任意的;自由决定的) Access Control 用户对于不同的数据库对象有不同的存取权限,不同的用户对同一对象也有不同的权限(create\select\insert\delete等),而且用户还可将其拥有的存取权限转授给其他用户。因此自主存取控制非常灵活。 强制存取控制(B1):军事和政府部门常采用 MAC: Mandatory Access Control 每一个数据库对象被标以一定的密级,每一个用户也被授予某一个级别的许可证。对于任意一个对象,只有具有合法许可证的用户才可以存取。 4.2.3 自主存取控制的实现- 授权和回收 关系数据库系统中的存取权限 存取控制的粒度与用户权限定义表 用户 数据对象名 允许的 操作类型 张明 李青 李青 李青 王楠 王楠 …… 关系Student 关系Student 关系Cource 关系SC 关系SC 关系SC …… SELECT ALL ALL UPDATE SELECT INSERT …… 用户 数据对象名 允许的操作类型 张明 李青 李青 李青 王楠 王楠 王楠 …… 关系Student 关系Student 关系Cource 关系SC 列SC.Grade 列SC.Sno 列SC.Cno …… SELECT ALL ALL SELECT UPDATE SELECT SELECT …… 授权粒度很粗:只能对整个关系授权 授权粒度细:精细到对属性列授权 授权(grant…… to)和 回收(revoke ……from) 一、GRANT GRANT语句的一般格式: GRANT 权限[,权限]... [ON 对象类型 对象名] TO 用户[,用户]... [WITH GRANT OPTION]; /*指定:可以再授予 没有指定:不能传播*/ 不允许循环授权 GRANT(续) 发出GRANT: DBA(超级管理员) 数据库对象创建者(即属主Owner,DBO) 拥有该权限的用户 按受权限的用户 一个或多个具体用户 PUBLIC(全体用户) [例1] 把查询Student表权限授给用户U1 GRANT SELECT ON Student TO U1; [例2] 把查询Student表和修改学生学号的权限授给用户U4, 并允许他再将此权限授予其他用户 GRANT UPDATE(Sno), SELECT ON Student TO U4 WITH GRANT OPTION; 在SQL server中,表名前不要table [例3] 把对Student表和Course表的全部权限授予用户U2和U3 GRANT ALL PRIVILIGES ON Student, Course TO U2, U3; 例4] 把对表SC的查询权限授予所有用户 GRANT SELECT ON SC TO PUBLIC; [例5] 把对表SC的INSERT权限授予U5用户,并允许他再将此权限授予其他用户 GRANT INSERT ON SC TO U5 WITH GRANT OPTION; [例6] U5不仅拥有了对表SC的INSERT权限,还可以传播此权限: GRA

文档评论(0)

1亿VIP精品文档

相关文档