数据库安全
数据库安全概述
数据库可能面临的问题:
- 系统崩溃(恢复机制)
- 并发控制
- 人为操作
- 输入数据不正确,破坏ACID特性,一致性不满足
保护机制:
- 视图和查询重写(系统自动根据其身份改写其查询)
- 访问控制(普通用户,拥有某些特权的用户,数据库管理员DBA)
- 标识和确认用户(密码,生物学特征)
- 授权和权限检查可授予用户某项权限甚至允许其授予其他人权限
- 角色
- 数据加密
- 审计追踪对某些表发生某些操作时设置审计追踪,记录关键log,相当于监控。
统计数据库的安全
这个主要的问题是,比如会有一个合法用户通过合法权限获取一些数据,但其通过数学方法可能会得到一些非法信息。
比如公司里薪水在数据库中属于隐私,但是如果我们允许其对这张表做统计,如统计25岁往上且职位为工程师的男性的平均工资(或者统计一些信息进行数学运算),很有可能就已经定位到了这个人的薪水。
理论上来说,对于数据库中的某一个特定个体,我们总能找到一个“个体追踪器”来定位到他。
进一步说,我们甚至一定能找到一个通用追踪器来定位到他。
完整性约束
通过完整性约束,我们要保证所有进入数据库的A.I都是正确的。
1.静态约束:约束数据库状态
包括:
固有约束:数据模型:1NF(1范式即每个数据必须是原子的,不允许表中套表)
隐含约束:数据模式定义中,如域完整性约束(数值得符合域的约束),**主键约束(主键不能重复,不能为空) **,外键约束(引用完整性约束:如果指定某张表中,某属性为另一张表

本文详细探讨了数据库安全,包括数据库安全概述、统计数据库的安全及完整性约束,强调了视图、访问控制和数据加密的重要性。同时,深入讲解了数据库设计的概念,如数据依赖、关系模式的规范化(1NF到5NF)及其解决方法,以及数据库设计的ER图、面向数据的方法和设计流程。
最低0.47元/天 解锁文章
1316

被折叠的 条评论
为什么被折叠?



