一、数据库的安全性
1.1.基本概念
- 数据库系统的信息安全在技术上依赖于两种方式:
- DBMS本身提供的用户身份识别、视图、使用权限控制、审计等管理措施
- 依靠数据库的应用程序来实现对数据库访问进行控制和管理
1.2.用户认证
- 用户的身份认证是用户使用DBMS系统的第一个环节
- 口令认证
- 强身份认证
- 用户证书
- 智能卡
- 用户指纹识别
1.3.用户角色
- 用户角色是具有相同操作权限的用户集合,不同角色的用户授予不同的数据管理和访问操作权限
- 一般可以将权限角色分为3类:
- 数据库登录权限类
- 资源管理权限类
- DBA权限类
1.4.存取控制(数据授权)
-
数据库授权可以分为静态授权和动态授权
-
静态授权是DBMS的隐性授权,也就是说用户(或DBA)对他自己拥有的信息是不需要有指定的授权动作就拥有全权管理和操作的权限的
-
动态授权指数据对象的所有者或者DBA默认地拥有对数据的存取权,允许他们把这些权力授予其他的用户
-
访问控制可以对用户访问的数据对象进行控制,粒度从大到小分为4个层次:
- 数据库级别
- 表级,判断用户是否可以访问关系里面的内容
- 记录级(行级),判断用户是否能访问关系中的一行记录的内容
- 属性级
1.5.数据库视图
- 是一个虚拟表,其内容由查询定义,其数据不进行实际存储,在对视图的数据进行操作时,系统根据视图的定义去操作与视图相关联的基本表
- 使用视图可以实现下列功能:
- 将用户限定在表中的特定行上
- 将用户限定在特定列上
- 将多个表中的列连接起来,使它们看起来像一个表
- 聚合信息而非提供详细信息
1.6.审计功能
- 身份认证是一种事前的防范措施,审计是一种事后监督的手段。审计作为一种安全检查的措施,会把系统的运行状况和用户访问数据库的行为记录以日志保存下来,该日志作为一种稽查用户行为的一种证据
- 数据库系统的审计工作包括:
- 设备安全审计
- 操作审计
- 应用审计
- 攻击审计
1.7.数据加密
- 是防止数据库中的敏感信息在存储和传输过程中失密的有效手段