CN112291088A - 一种用于Web接口自动梳理和归类的方法 - Google Patents
一种用于Web接口自动梳理和归类的方法 Download PDFInfo
- Publication number
- CN112291088A CN112291088A CN202011137595.7A CN202011137595A CN112291088A CN 112291088 A CN112291088 A CN 112291088A CN 202011137595 A CN202011137595 A CN 202011137595A CN 112291088 A CN112291088 A CN 112291088A
- Authority
- CN
- China
- Prior art keywords
- interface
- restful
- node
- interfaces
- web
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L67/025—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9027—Trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
- G06F16/9566—URL specific, e.g. using aliases, detecting broken or misspelled links
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0823—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0876—Aspects of the degree of configuration automation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/22—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/146—Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Automation & Control Theory (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种用于Web接口自动梳理和归类的方法,具体涉及Web接口梳理和归类技术领域,具体步骤如下:步骤一:普通接口识别和分类;步骤二:RESTful接口自动识别:S1、构建RESTful节点树;S2、识别RESTful节点;S3、节点剪枝;步骤三:RESTful接口手动配置;步骤四:RESTful接口合并;步骤五:复合接口拆分配置。本发明能对接口流量做自动化分析与整合,能给企业或个人组织提供接口流量数据安全分析提供一种有效的分析辅助手段。
Description
技术领域
本发明实施例涉及Web接口梳理和归类技术领域,具体涉及一种用于Web接口自动梳理和归类的方法。
背景技术
常见的企业开发系统拥有众多的Web应用和接口,如需要按照业务的角度对各个应用和接口进行梳理和归类,往往需要每个部门熟悉业务的开发人员整理出一份很详细的接口资料。在这个过程中涉及的业务系统会非常多,依靠人力很难完整地将所有Web接口都罗列出来,而且也很容易遗漏掉后续开发过程中新写的一些接口。
通过查阅相关文献,还未有相关文献资料针对此技术场景做深入研究分析,故本发明针对此类场景提供一种有效的技术分析方法。
发明内容
为此,本发明实施例提供一种用于Web接口自动梳理和归类的方法,能对接口流量做自动化分析与整合,能给企业或个人组织提供接口流量数据安全分析提供一种有效的分析辅助手段。
为了实现上述目的,本发明实施例提供如下技术方案:一种用于Web接口自动梳理和归类的方法,具体步骤如下:
步骤一:普通接口识别和分类:
通过对有效的HTTP流量进行解析,取出接口中的Request URL字段,并去除URL中的参数作为接口的唯一标识,并使用请求中的Host作为应用归类的依据;
步骤二:RESTful接口自动识别;
S1、构建RESTful节点树;
S2、识别RESTful节点:
使用一些特定的算法对单个节点所有同级的子节点进行校验;
S3、节点剪枝。
步骤三:RESTful接口手动配置:
针对无法自动识别的RESTful接口或者误识别的情况,用户可以通过手动新增、修改或者删除RESTful接口表达式;
步骤四:RESTful接口合并:
通过RESTful接口表达式,对一些存量的RESTful接口进行合并。
步骤五:复合接口拆分配置。
进一步地,在步骤二的S1中Request URL去除“?”后面的参数,使用“/”将RequestURL分割成path列表,使用path节点在内存中构建出一颗多叉树,RESTful接口树的顶级节点一般为scheme,而后跟着host节点。
进一步地,在步骤二的S3中在构造RESTful节点树的过程中,有数百万级别甚至更多的path节点放入到内存中,需要对某些符合RESTful合并规则的节点进行剪枝。
进一步地,在步骤四中通过RESTful接口表达式的正则比对,对符合该表达式的接口进行一些忽略和删除操作,并将该接口上的所有信息统一合并到该RESTful接口上。
进一步地,在步骤五中有些业务系统中同一个接口可能有多种业务含义,通常使用不同的接口参数来作为不同的业务标识,针对这种类型的接口可以配置一些特定的参数,根据用户配置的参数对某一个接口进行自动拆分。
本发明实施例具有如下优点:
本发明能对接口流量做自动化分析与整合,能给企业或个人组织提供接口流量数据安全分析提供一种有效的分析辅助手段:
1、从Web流量中还原出所有有效请求的接口,并对接口进行自动梳理和归类。
2、可辅助企业内部人员对接口做一些可视化操作和管理,在此基础上对接口做一些安全风险监测和分析等。
附图说明
为了更清楚地说明本发明的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引伸获得其它的实施附图。
本说明书所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本发明可实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本发明所能产生的功效及所能达成的目的下,均应仍落在本发明所揭示的技术内容得能涵盖的范围内。
图1为本发明提供的RESTful节点树图;
图2为本发明提供的流程图;
图3为本发明提供的普通接口识别和分类图;
具体实施方式
以下由特定的具体实施例说明本发明的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本发明的其他优点及功效,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参照说明书附图1-3,该实施例的一种用于Web接口自动梳理和归类的方法,具体步骤如下:
步骤一:普通接口识别和分类:
通过对有效的HTTP流量进行解析,取出接口中的Request URL字段,并去除URL中的参数作为接口的唯一标识,并使用请求中的Host作为应用归类的依据,如图3所示;
步骤二:RESTful接口自动识别:
现代WEB系统大多采用了RESTful的架构风格,通过识别Request URL可以区分一些普通的接口,但是对某些将参数赋值在path上的RESTful接口无能为力,这一类的接口虽然URL不同但是接口的实际业务功能是一致的,在业务系统的认知上通常属于同一类接口,通过本方法可对全量接口建模并根据接口PATH上一些相似度比对、全数字、无意义字符串等判断方式识别出该接口为RESTful接口,并使用自定义的RESTful表达式作为接口标识。RESTful接口的识别大致可以分为以下几个步骤:
S1、构建RESTful节点树:在步骤二的S1中Request URL去除“?”后面的参数,使用“/”将Request URL分割成path列表,使用path节点在内存中构建出一颗多叉树,RESTful接口树的顶级节点一般为scheme,而后跟着host节点,如图1所示;
S2、识别RESTful节点:使用一些特定的算法对单个节点所有同级的子节点进行校验;比如上图虚线框内path节点都为数字,当这些数字节点超过某个阈值时,我们就可以认为该接口符合RESTful接口合并规则,就此可以得到一个新的合并后的RESTful接口表达式:http://test3.com/order/query/$(string)。
S3、节点剪枝:在构造RESTful节点树的过程中,可能有数百万级别甚至更多的path节点放入到内存中,为了防止内存泄露的风险,需要对某些符合RESTful合并规则的节点进行剪枝,比如图1虚线框内的节点会全部被删除。
步骤三:RESTful接口手动配置:
针对无法自动识别的RESTful接口或者误识别的情况,用户可以通过手动新增、修改或者删除RESTful接口表达式,以便系统更好地对RESTful接口进行梳理。另外,本方法支持使用正则表达式的方式标识某个path,比如修改上文自动识别到的RESTful接口表达式为http://test3.com/order/query/\d+,这样就能够保证方框内的数字接口能够被合并和删除,但是末尾节点为字符串的会被保留下来。
步骤四:RESTful接口合并:
通过RESTful接口表达式,对一些存量的RESTful接口进行合并。通过RESTful接口表达式的正则比对,对符合该表达式的接口进行一些忽略和删除操作,并将该接口上的所有信息统一合并到该RESTful接口上,保证业务属性的一致性。
步骤五:复合接口拆分配置:有些业务系统中同一个接口可能有多种业务含义,通常使用不同的接口参数来作为不同的业务标识,针对这种类型的接口可以配置一些特定的参数,根据用户配置的参数对某一个接口进行自动拆分。
本发明能够从Web流量中还原出所有有效请求的接口,并对接口进行自动梳理和归类。
本发明可辅助企业内部人员对接口做一些可视化操作和管理,在此基础上对接口做一些安全风险监测和分析等。
虽然,上文中已经用一般性说明及具体实施例对本发明作了详尽的描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。
Claims (5)
1.一种用于Web接口自动梳理和归类的方法,其特征在于:具体步骤如下:
步骤一:普通接口识别和分类:
通过对有效的HTTP流量进行解析,取出接口中的Request URL字段,并去除URL中的参数作为接口的唯一标识,并使用请求中的Host作为应用归类的依据;
步骤二:RESTful接口自动识别;
S1、构建RESTful节点树;
S2、识别RESTful节点:
使用一些特定的算法对单个节点所有同级的子节点进行校验;
S3、节点剪枝。
步骤三:RESTful接口手动配置:
针对无法自动识别的RESTful接口或者误识别的情况,用户可以通过手动新增、修改或者删除RESTful接口表达式;
步骤四:RESTful接口合并:
通过RESTful接口表达式,对一些存量的RESTful接口进行合并。
步骤五:复合接口拆分配置。
2.根据权利要求1所述的一种用于Web接口自动梳理和归类的方法,其特征在于:在步骤二的S1中Request URL去除“?”后面的参数,使用“/”将Request URL分割成path列表,使用path节点在内存中构建出一颗多叉树,RESTful接口树的顶级节点一般为scheme,而后跟着host节点。
3.根据权利要求1所述的一种用于Web接口自动梳理和归类的方法,其特征在于:在步骤二的S3中在构造RESTful节点树的过程中,有数百万级别甚至更多的path节点放入到内存中,需要对某些符合RESTful合并规则的节点进行剪枝。
4.根据权利要求1所述的一种用于Web接口自动梳理和归类的方法,其特征在于:在步骤四中通过RESTful接口表达式的正则比对,对符合该表达式的接口进行一些忽略和删除操作,并将该接口上的所有信息统一合并到该RESTful接口上。
5.根据权利要求1所述的一种用于Web接口自动梳理和归类的方法,其特征在于:在步骤五中有些业务系统中同一个接口可能有多种业务含义,通常使用不同的接口参数来作为不同的业务标识,针对这种类型的接口可以配置一些特定的参数,根据用户配置的参数对某一个接口进行自动拆分。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011137595.7A CN112291088B (zh) | 2020-12-22 | 2020-12-22 | 一种用于Web接口自动梳理和归类的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011137595.7A CN112291088B (zh) | 2020-12-22 | 2020-12-22 | 一种用于Web接口自动梳理和归类的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112291088A true CN112291088A (zh) | 2021-01-29 |
CN112291088B CN112291088B (zh) | 2022-03-29 |
Family
ID=74423238
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011137595.7A Active CN112291088B (zh) | 2020-12-22 | 2020-12-22 | 一种用于Web接口自动梳理和归类的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112291088B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115146187A (zh) * | 2022-09-01 | 2022-10-04 | 闪捷信息科技有限公司 | 接口信息处理方法、存储介质和电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080294654A1 (en) * | 2007-05-23 | 2008-11-27 | Fabrizio Muscarella | Base Tree Node Infrastructure |
CN105681126A (zh) * | 2015-12-30 | 2016-06-15 | 合一网络技术(北京)有限公司 | 一种基于协议接口的自动化测试方法及系统 |
CN106528175A (zh) * | 2016-11-29 | 2017-03-22 | 福州大学 | 面向bs架构的数据接口生成方法 |
CN107463376A (zh) * | 2017-07-21 | 2017-12-12 | 珠海牛角科技有限公司 | 基于Javadoc的自动生成后端接口文档的方法及装置 |
CN111162949A (zh) * | 2019-12-31 | 2020-05-15 | 国网山西省电力公司信息通信分公司 | 一种基于Java字节码嵌入技术的接口监测方法 |
CN111159044A (zh) * | 2019-12-31 | 2020-05-15 | 上海绊糖信息科技有限公司 | 基于特征类型的自动化移动端rest协议模糊测试方法 |
-
2020
- 2020-12-22 CN CN202011137595.7A patent/CN112291088B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080294654A1 (en) * | 2007-05-23 | 2008-11-27 | Fabrizio Muscarella | Base Tree Node Infrastructure |
CN105681126A (zh) * | 2015-12-30 | 2016-06-15 | 合一网络技术(北京)有限公司 | 一种基于协议接口的自动化测试方法及系统 |
CN106528175A (zh) * | 2016-11-29 | 2017-03-22 | 福州大学 | 面向bs架构的数据接口生成方法 |
CN107463376A (zh) * | 2017-07-21 | 2017-12-12 | 珠海牛角科技有限公司 | 基于Javadoc的自动生成后端接口文档的方法及装置 |
CN111162949A (zh) * | 2019-12-31 | 2020-05-15 | 国网山西省电力公司信息通信分公司 | 一种基于Java字节码嵌入技术的接口监测方法 |
CN111159044A (zh) * | 2019-12-31 | 2020-05-15 | 上海绊糖信息科技有限公司 | 基于特征类型的自动化移动端rest协议模糊测试方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115146187A (zh) * | 2022-09-01 | 2022-10-04 | 闪捷信息科技有限公司 | 接口信息处理方法、存储介质和电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112291088B (zh) | 2022-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102648464B (zh) | 用于从网络数据中生成词汇的系统和方法 | |
JP2019532370A (ja) | ユーザ権限データ検索方法および電子機器 | |
WO2019196226A1 (zh) | 制度信息查询方法、装置、计算机设备和存储介质 | |
CN106970958B (zh) | 一种流文件的查询与存储方法和装置 | |
CN110928851A (zh) | 处理日志信息的方法、装置、设备及存储介质 | |
CN112235253A (zh) | 数据资产的梳理方法、装置、计算机设备和存储介质 | |
CN112291088B (zh) | 一种用于Web接口自动梳理和归类的方法 | |
CN112330299A (zh) | 业务流程管理方法、装置、设备及存储介质 | |
CN112765150A (zh) | 大数据异构融合提取方法及装置 | |
CN115514784A (zh) | 基于物联网的多源数据采集中台 | |
CN117171711B (zh) | 一种基于云平台的企业内外部数据融合共享方法及系统 | |
CN113221535B (zh) | 情报处理方法、装置、计算机设备和存储介质 | |
CN111176901B (zh) | 一种hdfs删除文件恢复方法、终端设备及存储介质 | |
WO2023226461A1 (zh) | 一种多域数据融合的方法、装置和存储介质 | |
CN111177311A (zh) | 一种事件处理结果的数据分析模型及分析方法 | |
KR101693727B1 (ko) | 소셜 네트워크를 활용한 연구개발 관점의 사회적 이슈 재구성 장치 및 방법 | |
CN116821133A (zh) | 一种数据处理方法和装置 | |
Kaur et al. | Image processing on multinode hadoop cluster | |
CN107491530B (zh) | 一种基于文件自动标记信息的社会关系挖掘分析方法 | |
CN115811434A (zh) | 防火墙策略的收敛与智能下发方法及系统 | |
CN102043925A (zh) | 一种新型分析信息流的方法 | |
CN107391695A (zh) | 一种基于大数据的信息提取方法 | |
KR101846347B1 (ko) | 대용량 문서의 관리 방법 및 그 장치 | |
CN111651531A (zh) | 数据导入方法、装置、设备及计算机存储介质 | |
CN111563123A (zh) | 一种hive仓库元数据实时同步方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |