全息日志子系统功能简介

2024-03-16 21:48

本文主要是介绍全息日志子系统功能简介,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

全息日志子系统功能简介


一、             项目背景

随着计算机和网络的飞速发展,数据库已经不再仅仅是程序员所专有的话题。而Oracle数据库更是凭借其性能卓越,操作方便灵活的特点,在数据库市场中已经占据了一席之地。但是同样随着网络技术的不断进步,数据信息的不断增加,数据安全已经不再是以前的“老生长谈”,也更不是以前书本上那些“可望不可及”的条条框框。不论是政府机关,还是企业用户,都十分关注数据的安全性问题,因为它直接关系到使用者的切身利益。一旦核心数据遭到破坏,将直接导致政府无法继续办公,企业无法正常运营,会给社会、企业和个人带来巨大的损失,后果也是灾难性的。因此,用户迫切希望应用系统能够忠实地记录用户对数据库的每一次修改,删除操作,让数据的变化有据可查。既便于在数据遭到破坏时追究责任,也便于在关键时刻恢复数据。尤其是那些供多用户共同使用的应用系统,这样的要求更加迫切。


二、             解决方案

全息日志子系统是基于Oracle9i的基本功能,使用PL/SQL语言开发的软件。他是一套专用于系统日志监控与数据安全保护的完整解决方案。该系统可以实现表级甚至是列级的细粒度监控配置,还可以查看被监控表/列的任意一次添加、删除、修改操作,管理员可以知道谁,在什么时间,对哪些数据执行了什么样的操作,还可以同时调出旧数据和新数据进行对比查看。如果用户需要的话,还可以针对其中的某一次操作执行恢复操作,使数据恢复到修改之前的状态。


三、             系统功能设计

1) 用户管理功能

全息日志子系统内置了用户管理功能,可以添加和删除用户,还可以修改用户密码。用户信息经加密后存储在全息日志子系统中,通过存储过程对用户进行配置与管理。

2) 监控配置功能

用户可以选择要监控的表/列,日志系统将对这些表/列上的全部添加、编辑和删除操作进行监控与记录。

3) 登录验证与数据保护功能

应用系统连接数据库后,需要通过存储过程将用户名和密码传递给全息日志子系统,系统会根据预先配置好的用户信息确定登录用户是否合法。合法用户可以正常操作被全息日志子系统监控的表/列,但每一次操作都会被系统忠实地记录下来,使数据的修改有据可查。登录失败的用户将不能对被监控表执行添加、编辑和删除操作,保障了系统数据的安全。即便使用第三方工具连接数据库,若不能正确登录,也无法对被监控表中的数据造成破坏。

4) 日志查询功能

管理员可以随时查阅被监控表/列上的添加、编辑和删除操作,察看谁在什么时间对哪些表/列进行了哪些修改。还可以将旧数据与新数据对比查看。对于上层应用程序,只要对日志系统做简单的配置即可实现查询结果的自然语言描述。例如:张三于11月20日15点38分增加了一块新宗地。

5) 数据恢复功能

用户可以针对数据表/列的最后一次修改执行恢复操作,使数据恢复到修改前的状态。


 四、系统使用说明
1)安装
        在sqlplus中运行程序PL/SQL包,安装全息日志子系统。
        在系统表中配置用户要监控的表、列。
        以SYSDBA权限登录,运行监控初始化存储过程。
        将应用系统的业务层用户名、密码、角色编号通过日志系统的存储过程填入日志系统表。如果有用户维护模块,还应在用户维护模块中对日志系统表内的用户名、密码进行维护。
3)使用方法
        应用系统的业务层用户登录时,调用日志系统的存储过程进行登录,如果登录成功,可以对被监控数据执行添加、编辑、修改操作,否则将不能执行以上操作。
        
五、系统特色

1)高内聚,低耦合

全息日志子系统与应用系统的耦合仅限于用户名、密码、角色编号的维护、更新和登录时的登录操作。

2)安装配置方便

3)实现细粒度审计控制,用户可以将监控限制在某一个表的某一个列上。

2)  直观的日志展示功能

应用系统可以从数据库视图中察看用户操作日志。除提供最基本的简单操作日志(谁在什么时间对哪个表执行了哪些操作)和详细日志(操作时的旧数据和新数据的对比)外,还提供了自然语言描述机制,可以通过简单的配置实现如:“张三于11月20日15点38分在永泰路增加了一块新宗地”这样的日志描述。

3)  数据精细回滚功能

如果安装数据回滚插件,还可以对指定表的最后一次操作执行回滚(与Oracle的事务回滚不是一个概念)操作,使之恢复到修改之前的状态。理论上可以无限次回滚
 

这篇关于全息日志子系统功能简介的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/816820

相关文章

Spring Boot整合log4j2日志配置的详细教程

《SpringBoot整合log4j2日志配置的详细教程》:本文主要介绍SpringBoot项目中整合Log4j2日志框架的步骤和配置,包括常用日志框架的比较、配置参数介绍、Log4j2配置详解... 目录前言一、常用日志框架二、配置参数介绍1. 日志级别2. 输出形式3. 日志格式3.1 PatternL

SpringBoot整合DeepSeek实现AI对话功能

《SpringBoot整合DeepSeek实现AI对话功能》本文介绍了如何在SpringBoot项目中整合DeepSeekAPI和本地私有化部署DeepSeekR1模型,通过SpringAI框架简化了... 目录Spring AI版本依赖整合DeepSeek API key整合本地化部署的DeepSeek

Python实现多路视频多窗口播放功能

《Python实现多路视频多窗口播放功能》这篇文章主要为大家详细介绍了Python实现多路视频多窗口播放功能的相关知识,文中的示例代码讲解详细,有需要的小伙伴可以跟随小编一起学习一下... 目录一、python实现多路视频播放功能二、代码实现三、打包代码实现总结一、python实现多路视频播放功能服务端开

css实现图片旋转功能

《css实现图片旋转功能》:本文主要介绍了四种CSS变换效果:图片旋转90度、水平翻转、垂直翻转,并附带了相应的代码示例,详细内容请阅读本文,希望能对你有所帮助... 一 css实现图片旋转90度.icon{ -moz-transform:rotate(-90deg); -webkit-transfo

开启mysql的binlog日志步骤详解

《开启mysql的binlog日志步骤详解》:本文主要介绍MySQL5.7版本中二进制日志(bin_log)的配置和使用,文中通过图文及代码介绍的非常详细,需要的朋友可以参考下... 目录1.查看是否开启bin_log2.数据库会把日志放进logs目录中3.查看log日志总结 mysql版本5.71.查看

C语言小项目实战之通讯录功能

《C语言小项目实战之通讯录功能》:本文主要介绍如何设计和实现一个简单的通讯录管理系统,包括联系人信息的存储、增加、删除、查找、修改和排序等功能,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录功能介绍:添加联系人模块显示联系人模块删除联系人模块查找联系人模块修改联系人模块排序联系人模块源代码如下

Java中使用Java Mail实现邮件服务功能示例

《Java中使用JavaMail实现邮件服务功能示例》:本文主要介绍Java中使用JavaMail实现邮件服务功能的相关资料,文章还提供了一个发送邮件的示例代码,包括创建参数类、邮件类和执行结... 目录前言一、历史背景二编程、pom依赖三、API说明(一)Session (会话)(二)Message编程客

Java CompletableFuture如何实现超时功能

《JavaCompletableFuture如何实现超时功能》:本文主要介绍实现超时功能的基本思路以及CompletableFuture(之后简称CF)是如何通过代码实现超时功能的,需要的... 目录基本思路CompletableFuture 的实现1. 基本实现流程2. 静态条件分析3. 内存泄露 bug

C#实现系统信息监控与获取功能

《C#实现系统信息监控与获取功能》在C#开发的众多应用场景中,获取系统信息以及监控用户操作有着广泛的用途,比如在系统性能优化工具中,需要实时读取CPU、GPU资源信息,本文将详细介绍如何使用C#来实现... 目录前言一、C# 监控键盘1. 原理与实现思路2. 代码实现二、读取 CPU、GPU 资源信息1.

Java中Springboot集成Kafka实现消息发送和接收功能

《Java中Springboot集成Kafka实现消息发送和接收功能》Kafka是一个高吞吐量的分布式发布-订阅消息系统,主要用于处理大规模数据流,它由生产者、消费者、主题、分区和代理等组件构成,Ka... 目录一、Kafka 简介二、Kafka 功能三、POM依赖四、配置文件五、生产者六、消费者一、Kaf