CN112291088B - 一种用于Web接口自动梳理和归类的方法 - Google Patents

一种用于Web接口自动梳理和归类的方法 Download PDF

Info

Publication number
CN112291088B
CN112291088B CN202011137595.7A CN202011137595A CN112291088B CN 112291088 B CN112291088 B CN 112291088B CN 202011137595 A CN202011137595 A CN 202011137595A CN 112291088 B CN112291088 B CN 112291088B
Authority
CN
China
Prior art keywords
interface
restful
node
parameters
interfaces
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.)
Active
Application number
CN202011137595.7A
Other languages
English (en)
Other versions
CN112291088A (zh
Inventor
姜浩骏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Quanzhi Technology Hangzhou Co ltd
Original Assignee
Quanzhi Technology Hangzhou Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Quanzhi Technology Hangzhou Co ltd filed Critical Quanzhi Technology Hangzhou Co ltd
Priority to CN202011137595.7A priority Critical patent/CN112291088B/zh
Publication of CN112291088A publication Critical patent/CN112291088A/zh
Application granted granted Critical
Publication of CN112291088B publication Critical patent/CN112291088B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9027Trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9566URL specific, e.g. using aliases, detecting broken or misspelled links
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0823Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0876Aspects of the degree of configuration automation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing 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接口自动梳理和归类的方法,能对接口流量做自动化分析与整合,能给企业或个人组织提供接口流量数据安全分析提供一种有效的分析辅助手段。
为了实现上述目的,本发明实施例提供如下技术方案:一种用于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节点:使用一些特定的算法对单个节点所有同级的子节点进行校验;比如图1虚线框内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 (2)

1.一种用于Web接口自动梳理和归类的方法,其特征在于:具体步骤如下:
步骤一:普通接口识别和分类:
通过对有效的HTTP流量进行解析,取出接口中的Request URL字段,并去除URL中的参数作为接口的唯一标识,并使用请求中的Host作为应用归类的依据;
步骤二:RESTful接口自动识别:
S1、构建RESTful节点树:
Request URL去除“?”后面的参数,使用“/”将Request URL分割成path列表,使用path节点在内存中构建出一颗多叉树,RESTful接口树的顶级节点为scheme,而后跟着host节点;
S2、识别RESTful节点:
使用一些特定的算法对单个节点所有同级的子节点进行校验;
S3、节点剪枝:
在构造RESTful节点树的过程中,有数百万级别甚至更多的path节点放入到内存中,需要对某些符合RESTful合并规则的节点进行剪枝;
步骤三:RESTful接口手动配置:
针对无法自动识别的RESTful接口或者误识别的情况,用户通过手动新增、修改或者删除RESTful接口表达式;
步骤四:RESTful接口合并:
通过RESTful接口表达式,对一些存量的RESTful接口进行合并;
步骤五:复合接口拆分配置:
有些业务系统中同一个接口有多种业务含义,使用不同的接口参数来作为不同的业务标识,针对这种类型的接口配置一些特定的参数,根据用户配置的参数对某一个接口进行自动拆分。
2.根据权利要求1所述的一种用于Web接口自动梳理和归类的方法,其特征在于:在步骤四中通过RESTful接口表达式的正则比对,对符合该表达式的接口进行一些忽略和删除操作,并将该接口上的所有信息统一合并到该RESTful接口上。
CN202011137595.7A 2020-12-22 2020-12-22 一种用于Web接口自动梳理和归类的方法 Active CN112291088B (zh)

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 CN112291088A (zh) 2021-01-29
CN112291088B true 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)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115146187B (zh) * 2022-09-01 2022-11-18 闪捷信息科技有限公司 接口信息处理方法、存储介质和电子设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107463376A (zh) * 2017-07-21 2017-12-12 珠海牛角科技有限公司 基于Javadoc的自动生成后端接口文档的方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7783651B2 (en) * 2007-05-23 2010-08-24 Sap Ag Base tree node infrastructure
CN105681126B (zh) * 2015-12-30 2019-07-26 合一网络技术(北京)有限公司 一种基于协议接口的自动化测试方法及系统
CN106528175B (zh) * 2016-11-29 2019-09-13 福州大学 面向bs架构的数据接口生成方法
CN111162949A (zh) * 2019-12-31 2020-05-15 国网山西省电力公司信息通信分公司 一种基于Java字节码嵌入技术的接口监测方法
CN111159044B (zh) * 2019-12-31 2023-05-23 上海绊糖信息科技有限公司 基于特征类型的自动化移动端rest协议模糊测试方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107463376A (zh) * 2017-07-21 2017-12-12 珠海牛角科技有限公司 基于Javadoc的自动生成后端接口文档的方法及装置

Also Published As

Publication number Publication date
CN112291088A (zh) 2021-01-29

Similar Documents

Publication Publication Date Title
US11562286B2 (en) Method and system for implementing machine learning analysis of documents for classifying documents by associating label values to the documents
CN102648464B (zh) 用于从网络数据中生成词汇的系统和方法
JP2019532370A (ja) ユーザ権限データ検索方法および電子機器
WO2019196226A1 (zh) 制度信息查询方法、装置、计算机设备和存储介质
CN112291088B (zh) 一种用于Web接口自动梳理和归类的方法
CN112235253A (zh) 数据资产的梳理方法、装置、计算机设备和存储介质
CN112256880A (zh) 文本识别方法和装置、存储介质及电子设备
CN112765150A (zh) 大数据异构融合提取方法及装置
CN112330299A (zh) 业务流程管理方法、装置、设备及存储介质
CN115514784A (zh) 基于物联网的多源数据采集中台
CN113221535B (zh) 情报处理方法、装置、计算机设备和存储介质
CN117171711B (zh) 一种基于云平台的企业内外部数据融合共享方法及系统
CN110765479B (zh) 一种大数据防丢失方法、装置及设备
CN111177311A (zh) 一种事件处理结果的数据分析模型及分析方法
WO2023226461A1 (zh) 一种多域数据融合的方法、装置和存储介质
KR101693727B1 (ko) 소셜 네트워크를 활용한 연구개발 관점의 사회적 이슈 재구성 장치 및 방법
CN107491530B (zh) 一种基于文件自动标记信息的社会关系挖掘分析方法
CN115811434A (zh) 防火墙策略的收敛与智能下发方法及系统
CN102043925A (zh) 一种新型分析信息流的方法
CN112002130B (zh) 一种数据管理方法、装置、服务器及计算机可读存储介质
CN107391695A (zh) 一种基于大数据的信息提取方法
KR101846347B1 (ko) 대용량 문서의 관리 방법 및 그 장치
CN111563123A (zh) 一种hive仓库元数据实时同步方法
US8868720B1 (en) Delegation of discovery functions in information management system
CN111143322A (zh) 一种数据标准治理系统及方法

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