CN101908014A - 计算机软件系统中实现安全审计与留痕的系统结构及方法 - Google Patents
计算机软件系统中实现安全审计与留痕的系统结构及方法 Download PDFInfo
- Publication number
- CN101908014A CN101908014A CN 201010269087 CN201010269087A CN101908014A CN 101908014 A CN101908014 A CN 101908014A CN 201010269087 CN201010269087 CN 201010269087 CN 201010269087 A CN201010269087 A CN 201010269087A CN 101908014 A CN101908014 A CN 101908014A
- Authority
- CN
- China
- Prior art keywords
- data
- security audit
- computer software
- output
- trace
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明涉及一种计算机软件系统中实现安全审计与留痕的系统结构,其中包括配置接口功能模块、过滤器、数据分解器、日志记录功能模块,配置接口功能模块依次通过过滤器和数据分解器与日志记录功能模块连接。本发明还涉及一种通过该系统结构实现计算机软件系统中基于元数据元的安全审计与留痕的方法。采用该种计算机软件系统中实现安全审计与留痕的系统结构及方法,实现了针对任意业务功能,通过配置界面进行,灵活增加特定业务功能审计、特定业务功能业务数据审计,灵活地进行业务数据粒度和数量的配置,解决了安全审计规范的固化问题,使得安全审计能够随需应变,提高了业务开发效率,减低了开发成本,工作性能稳定可靠,适用范围较为广泛。
Description
技术领域
本发明涉及计算机软件领域,特别涉及企业应用软件系统领域,具体是指一种计算机软件系统中实现基于元数据元的安全审计与留痕的系统结构及其方法。
背景技术
随着企业应用与企业核心业务结合越来越紧密,例如金融行业帐务处理系统,网上银行系统,均涉及核心业务,这些业务对于安全审计要求很高,一般要求这些业务特别是“写”的业务,例如转账、支付等,均需要进行业务操作留痕和业务数据的原始数据,这样安全审计包括两个部分,一部分是操作日志,必须保存什么时间,什么人,操作什么业务,即3W。另一部分业务数据的原始数据留痕,例如一笔客户信息,修改前数据,必须和客户修改操作同时进行留痕和记录,结合操作日志,忠实记录谁修改什么数据,从什么数据修改为什么数据。
当然,在业界通行做法,就是针对需要进行安全审计的业务,特殊进行历史模型的设计,同时根据特定业务逻辑(Application Logic)处理,例如针对客户信息修改或者删除处理,以硬编码的方式,增加客户数据备份处理和业务操作留痕处理等内容。例如请参阅图1所示,其中为以客户和订单信息为例的数据模型设计,再请参阅图2所示,其中为业务逻辑操作。
采用现有技术中的这种方式,存在以下问题:
(1)必须针对特定功能,进行针对性安全审计的设计,包括数据模型审计和业务逻辑处理,因此导致处理效率很低,开发工作量较大;
(2)随需应变能力较弱;特别对于已经上线的系统,安全审计变更较为频繁的系统,例如我们针对一个已有系统某个特定功能增加安全审计,或者调整安全审计粒度的时候,需要修改数据实体、业务逻辑多层次的代码;
(3)复用能力低,安全审计规范无法落实;这个功能从安全审计需求而言,是存在一定共性需求,如何把通用类功能灵活绑定在每一个特定功能上,是需要考虑和关注的。
发明内容
本发明的目的是克服了上述现有技术中的缺点,提供一种能够实现针对任意业务功能、灵活进行业务数据粒度和数量的配置、安全审计能够随需应变、有效提高业务开发效率、降低开发成本、工作性能稳定可靠、适用范围较为广泛的计算机软件系统中实现基于元数据元的安全审计与留痕的系统结构及其方法。
为了实现上述的目的,本发明的计算机软件系统中实现基于元数据元的安全审计与留痕的系统结构及其方法如下:
该计算机软件系统中实现基于元数据元的安全审计与留痕的系统结构,其主要特点是,所述的系统结构中包括配置接口功能模块、过滤器、数据分解器、日志记录功能模块,所述的配置接口功能模块依次通过所述的过滤器和数据分解器与所述的日志记录功能模块相连接。
该计算机软件系统中实现基于元数据元的安全审计与留痕的系统结构中的日志记录功能模块包括数据库记录器、文件记录器和控制台记录器,所述的数据库记录器、文件记录器和控制台记录器均与所述的数据分解器相连接。
该通过上述的系统结构实现计算机软件系统中基于元数据元的安全审计与留痕的方法,其主要特点是,所述的方法包括以下步骤:
(1)所述的配置接口功能模块根据配置信息获取相应类型的过滤器;
(2)当有Request请求数据的时候,所述的过滤器根据该Request请求数据的统一资源定位符URL进行安全拦截;
(3)根据所述的过滤器对Request请求数据进行安全审计的结果信息,进行业务数据的输出处理;
(4)所述的日志记录功能模块根据系统预设的输出形式进行日志信息输出。
该实现计算机软件系统中基于元数据元的安全审计与留痕的方法中的配置信息包括URL配置信息和数据配置信息。
该实现计算机软件系统中基于元数据元的安全审计与留痕的方法中的进行业务数据的输出处理,具体为:
根据键-值形式,进行数据输出,或者根据SDO对象或者XML数据,通过XPATH形式进行数据输出。
该实现计算机软件系统中基于元数据元的安全审计与留痕的方法中的日志记录功能模块进行日志信息输出,具体为:
所述的日志记录功能模块根据系统预设的输出形式采用以下方式中的一种或者多种进行日志信息输出:
所述的数据库记录器将所述的日志信息输出至数据库中;
所述的文件记录器将所述的日志信息输出至文件中;
所述的控制台记录器将所述的日志信息输出至控制台中。
采用了该发明的计算机软件系统中实现基于元数据元的安全审计与留痕的系统结构及其方法,由于其中通过功能拦截器、元数据元(MMM)定义操作、元数据控制操作等三个核心部分,实现了针对任意业务功能,通过配置界面进行,灵活增加特定业务功能审计、特定业务功能业务数据审计,并可以灵活地进行业务数据粒度和数量的配置,从而很好地解决了安全审计规范的固化问题,使得安全审计能够随需应变,提高了业务开发效率,减低了开发成本,工作性能稳定可靠,适用范围较为广泛。
附图说明
图1为现有技术中的以客户和订单信息为例的数据模型设计示意图。
图2为现有技术中的业务逻辑操作示意图。
图3为本发明的计算机软件系统中实现基于元数据元的安全审计与留痕的系统结构中的静态类图。
图4为本发明的计算机软件系统中实现基于元数据元的安全审计与留痕的方法的过程示意图。
图5为本发明中的元数据元的解释示意图。
具体实施方式
为了能够更清楚地理解本发明的技术内容,特举以下实施例详细说明。
首先对本发明中所出现的术语进行必要的解释:
【元数据】——关于数据的数据或者叫做用来描述数据的数据或者叫做信息的信息。例如,可以把元数据简单的理解成,最小的数据单位。元数据可以为数据说明其元素或属性(名称、大小、数据类型等)或其结构(长度、字段、数据列)。
针对SDO数据实体描述信息,一般也定义为元数据,例如CUST数据对象,定义了CUSTID(客户号、Integer类型、必输入项)。
【元数据元】——英文对应为“meta data meta”,针对SDO元数据安全审计中,需要对审计的元数据进行定义和拦截,因此提出元数据元的概念,这是描述元数据审计和拦截信息等内容,具体可参阅图5所示。
请参阅图3所示,该计算机软件系统中实现基于元数据元的安全审计与留痕的系统结构,其中包括配置接口功能模块、过滤器、数据分解器、日志记录功能模块,所述的配置接口功能模块依次通过所述的过滤器和数据分解器与所述的日志记录功能模块相连接。
其中,所述的日志记录功能模块包括数据库记录器、文件记录器和控制台记录器,所述的数据库记录器、文件记录器和控制台记录器均与所述的数据分解器相连接。
再请参阅图4所示,该通过上述的系统结构实现计算机软件系统中基于元数据元的安全审计与留痕的方法,其中包括以下步骤:
(1)所述的配置接口功能模块根据配置信息获取相应类型的过滤器;该配置信息包括URL配置信息和数据配置信息;
(2)当有Request请求数据的时候,所述的过滤器根据该Request请求数据的统一资源定位符URL进行安全拦截;
(3)根据所述的过滤器对Request请求数据进行安全审计的结果信息,进行业务数据的输出处理,具体为:
根据键-值形式,进行数据输出,或者
根据SDO对象或者XML数据,通过XPATH形式进行数据输出;
(4)所述的日志记录功能模块根据系统预设的输出形式进行日志信息输出,具体为:
所述的日志记录功能模块根据系统预设的输出形式采用以下方式中的一种或者多种进行日志信息输出:
所述的数据库记录器将所述的日志信息输出至数据库中;
所述的文件记录器将所述的日志信息输出至文件中;
所述的控制台记录器将所述的日志信息输出至控制台中。
在实际应用中,本发明的业务日志记录功能对业务人员关注的数据进行监控。在系统开发完成之后,业务人员对系统的关键操作提出记录日志的需求,由配置人员将业务人员关注的数据配置,控制业务人员关注的数据能够被记录。
业务人员一般会关注如:什么用户在什么时间登录,在什么时间进行了什么关键操作等信息。
在记录日志方面,系统通过截取需要记录的URL所有的HTTP请求,并根据用户的配置对HTTP请求的内容过滤。即可以实现业务日志功能。
各个类的方法:
日志记录的各个类为LogIntercepter调用。Intercepter调用顺序图请参阅图4所示。
(1)根据配置信息(配置URL和数据配置),取得多种Filter,当存在request请求时候,我们根据URL,进行安全拦截请求。
(2)同时,根据配置需求安全审计的信息,进行哪些业务数据进行输出;例如我们根据key-value形式,进行数据输出。通过SDO对象或者XML数据,我们通过XPATH形式,进行数据输出。
(3)同时我们根据输出形式,输出一种或者多种数据格式,例如文件、数据库等内容。
本发明的方法中,主要的代码实现用伪代码给出如下:
public class DataPasser {
public static LogData handleData(HttpServletRequest request,Filter
filter){
LogData logData=null;
String url=request.getRequestURL().toString().toLowerCase();
String reg=filter.getUrlPattern().replace(″*″,″.*″);
if(url.matches(reg)){
logData=new LogData(request,filter);
}
return logData;
}
}
public class LogData{
private Date date;
private HttpServletRequest request;
private Filter filter;
//...
public String getFormattedLog(){
StringBuffer sb=new StringBuffer();
sb.append(″[@@]″);
sb.append(″[@time][″).append(DateUtil.format(getTime(),″yyyy-MM-dd
HH:mm:s s.SSS″)).append(″]″);
sb.append(″[@url][″).append(getUrl()).append(″ =>
″).append(getAction()).append(″]″);
sb.append(″[@user][″).append(getUser()).append(″]″);
String[]datakeys=getDataKeys();
for(int i=0;i<datakeys.length;i++){
sb.append(″[@″).append(datakeys[i]).append(″][″).append(request.getParame
ter(datakeys[i])).append(″]″);
}
sb.append(″[$$]″);
return sb.toString();
}
public Date getTime(){
return date;
}
public String getAction(){
return request.getParameter(″eosFlowAction″);
}
//...
}
public class LogInterceptor implements IWebInterceptor{
private List<Filter>filters;
public LogInterceptor(){
this.filters=IConfig.factory.create().getFilters();
}
public void doIntercept(HttpServletRequest request,HttpServletResponse
response,IWebInterceptorChain chain)throws IOException,ServletException{
for(int i=0;i<filters.size();i++){
LogData logData=DataPasser.handleData(request,filters.get(i));
if(logData!=null){
writerData(logData,filters.get(i));
break;
}
}
chain.doIntercept(request,response);
}
private void writerData(LogData logData,Filter filter){
for(int i=0;i<filter.getOutput().length;i++){
IWriter.factory.create(filter.getOutput()[i]).write(logData);
}
}
}
相应的技术方案具有以下优点:
(1)固化安全审计规范和要求
通过元数据配置方式和拦截器方式,支持标准安全规范方式,进行业务数据留痕和业务日志记录。
(2)随需应变的能力
通过配置文件配置和元数据配置方式,能方便支持任意功能的安全审计配置,同时系统上线后,也能灵活进行调整和增加。
(3)减低成本,提高效率
针对Handler方式和元数据方式,也能快速定义安全配置;而不采用硬编码和针对数据模型的方式。
下面结合具体例子进行进一步说明:
假设有个客户基本信息维护(cust)的安全审计需要,包括任何人,修改客户信息(客户ID,客户名称、客户编码等)。同时要求输出安全审计表中。下面详细说明:
(1)配置filter(标准J2EE应用)或者handler(EOS应用)
(2)配置文件所在路径:WEB-INF/classes/bizlog.properties文件(本文件可选)
配置文件的第一行需要指名业务日志的输出路径:
如下所示:
log_file_path=e:/logs/cust.log
业务日志的配置格式如下:
URL字符串.属性=值
#URL字符串中:
#*:任意多个字符
#其中属性包括:
#data:定义对应于该URL的关注数据,即,从页面传入的参数
#output:定义对应于该URL的输出位置。可以选择以下三种方式:
file:输出到日志文件
console:输出到控制台
database:输出到数据库例如DB_JIDI=default_db
(3)针对客户信息维护功能内容,举例如下:
例如:前提是客户维护的URL均为/cust/*.jsp,数据库源为:default_db.需要记录信息包括custName,custCode等内容。
以下为一个示例:
log_file_path=e:/logs/business.log
/cust/*.jsp.data=custId,custName,custCode
*.output=dababase
DB_JIDI=default_db
基于上述描述,本发明的基于元数据的安全审计方法的核心思想包括以下几点:
(1)基于元数据方式进行业务数据留痕和记录。根据reques数据区中,数据内容,通过SDO或者XML方式,以XPATH方式进行寻址,根据元数据配置要求,进行数据留痕和输出。
(2)通过不同输出端,采用一种或多种输出形式支持数据输出和存储,包括DB\FILE\CONSOLE等多种方式,并支持应用进行特殊扩展。
(3)全面考虑业务数据留痕的通用需求,完全通过配置化的方式,支持业务数据安全审计和留痕操作。
(4)全面支持基于Handler方式进行扩展,同时很好与元数据配置相结合,支持操作日志和业务日志两者完美结合。
采用了上述的计算机软件系统中实现基于元数据元的安全审计与留痕的系统结构及其方法,由于其中通过功能拦截器、元数据元(MMM)定义操作、元数据控制操作等三个核心部分,实现了针对任意业务功能,通过配置界面进行,灵活增加特定业务功能审计、特定业务功能业务数据审计,并可以灵活地进行业务数据粒度和数量的配置,从而很好地解决了安全审计规范的固化问题,使得安全审计能够随需应变,提高了业务开发效率,减低了开发成本,工作性能稳定可靠,适用范围较为广泛。
在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。
Claims (6)
1.一种计算机软件系统中实现基于元数据元的安全审计与留痕的系统结构,其特征在于,所述的系统结构中包括配置接口功能模块、过滤器、数据分解器、日志记录功能模块,所述的配置接口功能模块依次通过所述的过滤器和数据分解器与所述的日志记录功能模块相连接。
2.根据权利要求1所述的计算机软件系统中实现基于元数据元的安全审计与留痕的系统结构,其特征在于,所述的日志记录功能模块包括数据库记录器、文件记录器和控制台记录器,所述的数据库记录器、文件记录器和控制台记录器均与所述的数据分解器相连接。
3.一种通过权利要求1所述的系统结构实现计算机软件系统中基于元数据元的安全审计与留痕的方法,其特征在于,所述的方法包括以下步骤:
(1)所述的配置接口功能模块根据配置信息获取相应类型的过滤器;
(2)当有Request请求数据的时候,所述的过滤器根据该Request请求数据的统一资源定位符URL进行安全拦截;
(3)根据所述的过滤器对Request请求数据进行安全审计的结果信息,进行业务数据的输出处理;
(4)所述的日志记录功能模块根据系统预设的输出形式进行日志信息输出。
4.根据权利要求3所述的实现计算机软件系统中基于元数据元的安全审计与留痕的方法,其特征在于,所述的配置信息包括URL配置信息和数据配置信息。
5.根据权利要求3所述的实现计算机软件系统中基于元数据元的安全审计与留痕的方法,其特征在于,所述的进行业务数据的输出处理,具体为:
根据键-值形式,进行数据输出,或者根据SDO对象或者XML数据,通过XPATH形式进行数据输出。
6.根据权利要求3所述的实现计算机软件系统中基于元数据元的安全审计与留痕的方法,其特征在于,所述的日志记录功能模块包括数据库记录器、文件记录器和控制台记录器,所述的数据库记录器、文件记录器和控制台记录器均与所述的数据分解器相连接,所述的日志记录功能模块进行日志信息输出,具体为:
所述的日志记录功能模块根据系统预设的输出形式采用以下方式中的一种或者多种进行日志信息输出:
所述的数据库记录器将所述的日志信息输出至数据库中;
所述的文件记录器将所述的日志信息输出至文件中;
所述的控制台记录器将所述的日志信息输出至控制台中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010269087 CN101908014A (zh) | 2010-09-01 | 2010-09-01 | 计算机软件系统中实现安全审计与留痕的系统结构及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010269087 CN101908014A (zh) | 2010-09-01 | 2010-09-01 | 计算机软件系统中实现安全审计与留痕的系统结构及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101908014A true CN101908014A (zh) | 2010-12-08 |
Family
ID=43263478
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201010269087 Pending CN101908014A (zh) | 2010-09-01 | 2010-09-01 | 计算机软件系统中实现安全审计与留痕的系统结构及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101908014A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102541647A (zh) * | 2010-12-24 | 2012-07-04 | 中国科学院沈阳自动化研究所 | 一种软件集成过程中的可执行组件功能外部调用方法 |
CN103095693A (zh) * | 2013-01-08 | 2013-05-08 | 北京中创信测科技股份有限公司 | 定位访问数据库用户主机信息的方法 |
CN107220369A (zh) * | 2017-06-13 | 2017-09-29 | 广发证券股份有限公司 | 基于http的网站留痕方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101520833A (zh) * | 2009-04-10 | 2009-09-02 | 武汉大学 | 基于虚拟机的数据防泄漏系统及其方法 |
CN101702724A (zh) * | 2009-11-02 | 2010-05-05 | 中国农业大学 | 网络访问的安全控制方法及装置 |
CN101789942A (zh) * | 2010-01-29 | 2010-07-28 | 蓝盾信息安全技术股份有限公司 | 一种防敏感数据泄密的方法及装置 |
-
2010
- 2010-09-01 CN CN 201010269087 patent/CN101908014A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101520833A (zh) * | 2009-04-10 | 2009-09-02 | 武汉大学 | 基于虚拟机的数据防泄漏系统及其方法 |
CN101702724A (zh) * | 2009-11-02 | 2010-05-05 | 中国农业大学 | 网络访问的安全控制方法及装置 |
CN101789942A (zh) * | 2010-01-29 | 2010-07-28 | 蓝盾信息安全技术股份有限公司 | 一种防敏感数据泄密的方法及装置 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102541647A (zh) * | 2010-12-24 | 2012-07-04 | 中国科学院沈阳自动化研究所 | 一种软件集成过程中的可执行组件功能外部调用方法 |
CN102541647B (zh) * | 2010-12-24 | 2013-06-26 | 中国科学院沈阳自动化研究所 | 一种软件集成过程中的可执行组件功能外部调用方法 |
CN103095693A (zh) * | 2013-01-08 | 2013-05-08 | 北京中创信测科技股份有限公司 | 定位访问数据库用户主机信息的方法 |
CN103095693B (zh) * | 2013-01-08 | 2015-11-18 | 北京中创信测科技股份有限公司 | 定位访问数据库用户主机信息的方法及装置 |
CN107220369A (zh) * | 2017-06-13 | 2017-09-29 | 广发证券股份有限公司 | 基于http的网站留痕方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11699020B2 (en) | Document architecture with efficient storage | |
US8315974B2 (en) | Provision of data for data warehousing applications | |
Huff et al. | Cases in electronic commerce | |
US20190026709A1 (en) | File vault and cloud based document notary service | |
KR101365832B1 (ko) | 데이터 액세스 계층 클래스 생성기 | |
US20070100834A1 (en) | System and method for managing data in a distributed computer system | |
CN107301594A (zh) | 一种多样化电子会计档案管理系统及方法 | |
CN111367975A (zh) | 一种多协议数据转换处理方法及装置 | |
CN101908014A (zh) | 计算机软件系统中实现安全审计与留痕的系统结构及方法 | |
Corey et al. | SQL server 7 data warehousing | |
CN101495973A (zh) | N^n数据管理、访问、存储、传输、交换和检索系统(数据集中管理) | |
Batory | A molecular database systems technology | |
JP2011181024A (ja) | システム間連携用csvファイル出力装置 | |
US10311022B2 (en) | CDBMS (cloud database management system) distributed logical unit repository | |
Jocelyn I | An overview of landing gear dynamics | |
CN103914514A (zh) | 控制业务凭证输出方式的方法及系统 | |
Graetz et al. | Expert opinions and taxpayer compliance: A strategic analysis | |
Mukkamala et al. | A performance comparison of two decomposition techniques for multilevel secure database systems | |
CN103399961B (zh) | 支持多版式的电子文献管理系统 | |
Mobile Computing | Retracted:: A Fuzzy Evaluation Method Based on Industrial Cluster Investment Risk Assessment Method Based on IoT Applications | |
CN117891653A (zh) | HBase数据与磁带库数据互传的方法、装置和系统 | |
Sidney | Logging and recovery in a highly concurrent database | |
JP2009505249A (ja) | ファイルされたデータを検索するための、短期メタデータアーカイブを含む長期ファイリングシステム | |
Gardner et al. | Numerical Methods for the Hydrodynamic Device Model: Subsonic Flow | |
Dey | A design methodology for temporal databases |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20101208 |