第4章 数据库安全性——4.4 审计

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 第4章 数据库安全性——4.4 审计

4.4  审计


      前面讲的用户身份鉴别、存取控制是数据库安全保护的重要技术(安全策略方面),但不是全部。为了使数据库管理系统达到一定的安全级别,还需要在其他方面提供相应的支持。例如按照 TDI/TCSEC 标准中安全策略的要求,审计(audit)功能就是数据库管理系统达到C2以上安全级别必不可少的一项指标。


     因为任何系统的安全保护措施都不是完美无缺的,蓄意盗窃、破坏数据的人总是想方设法打破控制。审计功能把用户对数据库的所有操作自动记录下来放入审计日志(audit log)中。审计员可以利用审计日志监控数据库中的各种行为,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。还可以通过对审计日志分析,对潜在的威胁提前采取措施加以防范。

     审计通常是很费时间和空间的,所以数据库管理系统往往都将审计设置为可选特征,允许数据库管理员根据具体应用对安全性的要求灵活地打开或关闭审计功能。审计功能主要用于安全性要求较高的部门。

    可审计事件有服务器事件、系统权限、语句事件及模式对象事件,还包括用户鉴别、自主访问控制和强制访问控事件。换句话说,它能对普通和特权用户行为、各种表操作、身份鉴别、自主和强制访问控制等操作进行审计。它既能审计成功操作,也能审计失败操作。


01审计事件

审计事件一般有多个类别,例如,

● 服务器事件:审计数据库服务器发生的事件,包含数据库服务器的启动、停止、数据库服务器配置文件的重新加载。

● 系统权限:对系统拥有的结构或模式对象进行操作的审计,要求该操作的权限是通过系统权限获得的。

● 语句事件:对SQL语句,如DDL、DML、DQL(Data Query Language,数据查询语言)及DCL语句的审计。

● 模式对象事件:对特定模式对象上进行的SELECT或DML操作的审计。模式对象包括表、视图、存储过程、函数等。模式对象不包括依附于表的索引、约束、触发器、分区表等。


02审计功能

审计功能主要包括以下几方面内容:

● 基本功能,提供多种审计查阅方式:基本的、可选的、有限的,等等。

● 提供多套审计规则,审计规则一般在数据库初始化时设定,以方便审计员管理。

● 提供审计分析和报表功能。

● 审计日志管理功能,包括为防止审计员误删审计记录,审计日志必须先转储后删除对转储的审计记录文件提供完整性和保密性保护;只允许审计员查阅和转储审计记录,不允许任何用户新增和修改审计记录;等等。

● 系统提供查询审计设置及审计记录信息的专门视图。对于系统权限级别、语句级别及模式对象级别的审计记录也可通过相关的系统表直接查看。


03AUDIT语句和NOAUDIT语句

     AUDIT 语句用来设置审计功能,NOAUDIT语句则取消审计功能。

     审计一般可以分为用户级审计和系统级审计。用户级审计是任何用户可设置的审计,主要是用户针对自己创建的数据库表或视图进行审计,记录所有用户对这些表或视图的一切成功和(或)不成功的访问要求以及各种类型的SOL操作。

     系统级审计只能由数据库管理员设置,用以监测成功或失败的登录要求、监测授权和收回操作以及其他数据库级权限下的操作。


例4.15  对修改SC表结构或修改SC表数据的操作进行审计。

AUDIT ALTER, UPDATE
ON SC;

例4.16  取消对SC表的一切审计。

NOAUDIT ALTER,UPDATE 
ON SC;


     审计设置以及审计日志一般都存储在数据字典中。必须把审计开关打开(即把系统参数audit trail设为true),才可以在系统表SYS_AUDITTRAIL中查看到审计信息。

     数据库安全审计系统提供了一种事后检查的安全机制。安全审计机制将特定用户或者特定对象相关的操作记录到系统审计日志中,作为后续对操作的查询分析和追踪的依据。通过审计机制,可以约束用户可能的恶意操作。


相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
6月前
|
SQL 安全 算法
【SQL server】玩转SQL server数据库:第四章 数据库安全性
【SQL server】玩转SQL server数据库:第四章 数据库安全性
178 12
|
6月前
|
关系型数据库 MySQL 数据库
深入MySQL数据库进阶实战:性能优化、高可用性与安全性
深入MySQL数据库进阶实战:性能优化、高可用性与安全性
598 0
|
18天前
|
存储 数据库 数据库管理
数据库事务安全性控制如何实现呢
【10月更文挑战第15天】数据库事务安全性控制如何实现呢
|
18天前
|
存储 数据库 数据库管理
什么是数据库事务安全性控制
【10月更文挑战第15天】什么是数据库事务安全性控制
|
18天前
|
供应链 数据库
数据库事务安全性控制有什么应用场景吗
【10月更文挑战第15天】数据库事务安全性控制有什么应用场景吗
ly~
|
27天前
|
存储 监控 安全
如何评估云数据库的安全性?
评估云数据库安全性需关注基础架构与物理安全、网络基础设施、电力与冷却系统;访问控制与身份验证,包括多因素身份验证、基于角色的访问控制、身份验证强度;数据加密,涉及传输加密、存储加密、密钥管理;备份与恢复,涵盖备份策略、恢复测试、异地备份;安全审计与监控,如审计日志、实时监控、漏洞扫描与渗透测试;合规性,包括法规遵循、认证与合规证明;以及云服务提供商的信誉与技术支持。
ly~
48 4
ly~
|
1月前
|
存储 安全 网络安全
云数据库的安全性如何保障?
云数据库的安全性可通过多种方式保障,包括多因素身份验证、基于角色的访问控制及最小权限原则,确保仅有授权用户能访问所需数据;采用SSL/TLS加密传输和存储数据,加强密钥管理,防止数据泄露;定期备份数据并进行异地存储与恢复演练,确保数据完整性;通过审计日志、实时监控及安全分析,及时发现并应对潜在威胁;利用防火墙、入侵检测系统和VPN保护网络安全;选择信誉良好的云服务提供商,确保数据隔离及定期安全更新。
ly~
89 1
|
5月前
|
SQL 安全 数据库
数据库||数据库的安全性
数据库||数据库的安全性
|
1月前
|
存储 关系型数据库 MySQL
四种数据库对比MySQL、PostgreSQL、ClickHouse、MongoDB——特点、性能、扩展性、安全性、适用场景
四种数据库对比 MySQL、PostgreSQL、ClickHouse、MongoDB——特点、性能、扩展性、安全性、适用场景
|
3月前
|
SQL 数据管理 关系型数据库
SQL与云计算:利用云数据库服务实现高效数据管理——探索云端SQL应用、性能优化、安全性与成本效益,为企业数字化转型提供全方位支持
【8月更文挑战第31天】在数字化转型中,企业对高效数据管理的需求日益增长。传统本地数据库存在局限,而云数据库服务凭借自动扩展、高可用性和按需付费等优势,成为现代数据管理的新选择。本文探讨如何利用SQL和云数据库服务(如Amazon RDS、Google Cloud SQL和Azure SQL Database)实现高效的数据管理。通过示例和最佳实践,展示SQL在云端的应用、性能优化、安全性及成本效益,助力企业提升竞争力。
61 0