数据库三层架构审计解密【数据库审计】

简介: 所谓三层体系结构,是在客户端与数据库之间加入了一个“中间层”,也叫组件层。三层架构隔离出两块区域,客户端到组件层之间称为应用层区域,组件层到数据库之间称为数据库层区域。

1、什么叫三层架构?

所谓三层体系结构,是在客户端与数据库之间加入了一个“中间层”,也叫组件层。三层架构隔离出两块区域,客户端到组件层之间称为应用层区域,组件层到数据库之间称为数据库层区域。

这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也不仅仅有B/S应用才是三层体系结构,三层是指逻辑上的三层,即把这三个层放置到一台机器上。

三层体系的应用程序将业务规则、数据访问、合法性校验等工作放到了中间层进行处理。通常情况下,客户端不直接与数据库进行交互,而是通过COM/DCOM通讯与中间层建立连接,再经由中间层与数据库进行交互。

2、什么叫三层审计?

三层审计是数据库审计领域的业界难题之一。

所谓三层审计,是将应用层区域的审计数据与数据库层区域的审计数据综合起来进行“关联分析”,从而将应用层操作准确对应到数据库层的操作。当发生安全事件时,根据关联审计记录的日志信息,可快速定位到网络中的责任人。所以,通过三层审计即可实现应用与数据库的有效关联,追踪到最终用户端。

正常情况下,应用层跑的是URL行为,在数据库层则走的是数据库命令,两者的表现形式截然不同,但有了“关联分析”,就可以从技术上穿透两个区域,从而将访问的资源帐号和相关的数据库操作关联起来,从而能够追查到真正的访问者。

3、三层审计的难点在哪?

三层审计的难点在于审计技术的选择。

业界传统的做法是采取“模糊匹配”方法来实现“关联分析”,即:审计系统首先分别审计出浏览器到Web服务器,Web服务器到数据库服务器两类的事件,前者是HTTP事件,后者是SQL事件,然后需将这两条事件关联起来,进行时间系列方面的“模糊匹配”,从而将访问的资源帐号和相关的数据库操作关联起来。

这种传统做法的优缺点是:

优点:可以应用于任何的三层架构审计;

缺点:在高并发时简直是一个灾难,有20%的失真率,造成业务用户与SQL语句的错误关联。

为了规避这个缺点,IBM公司也尝试了几年试图解决,但是一直没有寻找到良好的解决方案,国内众多数据安全厂商至今也是束手无策。

4、三层审计真的无解吗?

昂楷科技从开始做数据库审计系统这个产品,就不断研究针对“三层审计” 的最佳解决方案,目前已率先取得了重大的突破:针对采取“COM/DCOM/COM+ ”等组件的三层架构体系,昂楷科技独创组件穿透技术,可规避时间系列的 干扰,在任何情况下都能精确审计,定位到人,创新性地解决了“三层+COM 组件审计”这个困扰客户及众多友商多年的业界难题,并在北京中医药大学东直门医院得到了实际的应用检验。

当然,三层架构体系的复杂性决定了,我们只是取得了阶段性的“胜利”, 要取得全面“胜利”,还需要继续努力。
本文转自商业新知https://www.shangyexinzhi.com/Article/details/id-61614/

目录
相关文章
|
3月前
|
存储 关系型数据库 MySQL
MySQL数据库进阶第六篇(InnoDB引擎架构,事务原理,MVCC)
MySQL数据库进阶第六篇(InnoDB引擎架构,事务原理,MVCC)
|
3天前
|
存储 负载均衡 数据库
探索后端技术:从服务器架构到数据库优化的实践之旅
在当今数字化时代,后端技术作为支撑网站和应用运行的核心,扮演着至关重要的角色。本文将带领读者深入后端技术的两大关键领域——服务器架构和数据库优化,通过实践案例揭示其背后的原理与技巧。无论是对于初学者还是经验丰富的开发者,这篇文章都将提供宝贵的见解和实用的知识,帮助读者在后端开发的道路上更进一步。
|
21天前
|
存储 缓存 关系型数据库
Django后端架构开发:缓存机制,接口缓存、文件缓存、数据库缓存与Memcached缓存
Django后端架构开发:缓存机制,接口缓存、文件缓存、数据库缓存与Memcached缓存
27 0
|
22天前
|
存储 前端开发 关系型数据库
Linux 技术架构:前端、后端与数据库的完美融合
【8月更文挑战第25天】本文深入剖析了Linux操作系统的技术架构,重点介绍了前端、后端及数据库三大核心组成部分。Linux前端技术不仅涵盖了图形用户界面(GUI),包括GNOME、KDE等桌面环境,还涉及HTML、CSS、JavaScript等Web前端技术及其相关框架。后端技术则聚焦于Python、Java等多种编程语言、Apache和Nginx等Web服务器以及MySQL、PostgreSQL等数据库管理系统。Linux数据库技术覆盖了关系型和非关系型数据库,如MySQL、MongoDB等,并提供了多种数据库管理工具。
41 0
|
1月前
|
XML 分布式数据库 数据库
【计算机三级数据库技术】第13章 大规模数据库架构--附思维导图
文章概述了分布式数据库、并行数据库、云计算数据库架构和XML数据库的基本概念、目标、体系结构以及与传统数据库的比较,旨在提供对这些数据库技术的全面理解。
23 1
|
25天前
|
存储 Serverless API
Serverless 架构实现弹幕场景问题之在initializer方法中初始化数据库实例如何解决
Serverless 架构实现弹幕场景问题之在initializer方法中初始化数据库实例如何解决
13 0
|
26天前
|
SQL 安全 关系型数据库
【惊天秘密】破解数据库管理难题!——Yearning开源审计平台:你的数据库安全守护神,一键审计,轻松应对挑战!
【8月更文挑战第21天】Yearning是一款基于Python的开源数据库审计平台,简化数据库管理和审计流程,支持MySQL、PostgreSQL等。核心功能包括SQL审计、执行、回滚及备份,提升数据库管理效率。安装简便,支持通过pip安装并快速启动服务。Yearning提供智能SQL审查,确保安全性与合规性,同时还具备友好的用户界面及API客户端支持,适用于多种数据库操作场景。
29 0
|
1月前
|
SQL 数据库
拒绝了对对象 ‘GetTips‘ (数据库 ‘vipsoft‘,架构 ‘dbo‘)的 EXECUTE 权限
拒绝了对对象 ‘GetTips‘ (数据库 ‘vipsoft‘,架构 ‘dbo‘)的 EXECUTE 权限
26 0
|
2月前
|
开发框架 前端开发 关系型数据库
ABP框架使用Mysql数据库,以及基于SQLServer创建Mysql数据库的架构和数据
ABP框架使用Mysql数据库,以及基于SQLServer创建Mysql数据库的架构和数据
|
2月前
|
存储 关系型数据库 分布式数据库
PolarDB,阿里云的云原生分布式数据库,以其存储计算分离架构为核心,解决传统数据库的扩展性问题
【7月更文挑战第3天】PolarDB,阿里云的云原生分布式数据库,以其存储计算分离架构为核心,解决传统数据库的扩展性问题。此架构让存储层专注数据可靠性,计算层专注处理SQL,提升性能并降低运维复杂度。通过RDMA加速通信,多副本确保高可用性。资源可独立扩展,便于成本控制。动态添加计算节点以应对流量高峰,展示了其灵活性。PolarDB的开源促进了数据库技术的持续创新和发展。
262 2