CN113420312A - 一种动态控制api接口访问的方法 - Google Patents

一种动态控制api接口访问的方法 Download PDF

Info

Publication number
CN113420312A
CN113420312A CN202110770073.9A CN202110770073A CN113420312A CN 113420312 A CN113420312 A CN 113420312A CN 202110770073 A CN202110770073 A CN 202110770073A CN 113420312 A CN113420312 A CN 113420312A
Authority
CN
China
Prior art keywords
control
api interface
service
api
establishment
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
Application number
CN202110770073.9A
Other languages
English (en)
Other versions
CN113420312B (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.)
Shandong Yunman Intelligent Technology Co ltd
Original Assignee
Shandong Yunman Intelligent Technology 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 Shandong Yunman Intelligent Technology Co ltd filed Critical Shandong Yunman Intelligent Technology Co ltd
Priority to CN202110770073.9A priority Critical patent/CN113420312B/zh
Publication of CN113420312A publication Critical patent/CN113420312A/zh
Application granted granted Critical
Publication of CN113420312B publication Critical patent/CN113420312B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24552Database cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/252Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/547Messaging middleware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/548Queue

Abstract

一种动态控制API接口访问的方法,通过基于数据库和缓存结合http请求或消息队列实现动态控制API访问的设计方案,在保证API接口提供高并发访问支持的前提下,对API接口的访问进行控制,保护业务系统不被恶意访问攻击。

Description

一种动态控制API接口访问的方法
技术领域
本发明涉及软件系统领域,具体涉及一种动态控制API接口访问的方法。
背景技术
现代软件系统通常需要和外界进行交互,交互的手段就需要通过预先定义好的应用程序接口,API就是一套交互协议,规定了如何发送请求和接收响应。当外界通过API与软件系统进行交互的时候,需要对软件系统进行保护,确保调用者的合法性及业务系统的安全,所以必须设计一套保护API调用的控制方法。
发明内容
本发明为了克服以上技术的不足,提供了一种通过对API接口的动态控制保护业务系统安全的方法。
本发明克服其技术问题所采用的技术方案是:
一种动态控制API接口访问的方法,包括:
a)软件系统创建数据库表;
b)软件系统由API接口服务模块和API接口管理模块构成;
c)软件系统通过API接口管理模块定义接口控制的类型及其默认值;
d)API接口服务模块启动时注册自己的服务信息,并实时更新当前服务状态,API接口服务模块与API接口管理模块维持心跳;
e)API接口服务模块启动时读取数据库,将数据库中所有控制策略和控制维度加载至缓存;
f)API接口服务模块接收外界请求时,通过身份标识进行控制维度匹配,挑选出权重最高的控制维度对应的控制策略;
g)API接口服务模块按照筛选出的控制维度对API接口访问进行安全控制;
h)如果API接口访问出现安全问题,则通过API接口管理模块对指定的API接口调用者或API接口设置新的控制标准;
i)API接口管理模块通过获取所有所有API接口服务模块的注册信息找到正在提供服务的服务实例,通过向服务实例发送http请求的方式使各API接口服务模块清空缓存的控制策略和控制维度;
j)API接口服务模块再次接收访问请求时重新加载的新的控制策略和控制维度,实现对API接口服务的实时管控。
进一步的,步骤a)中软件系统创建数据库表的步骤为:
a-1)所有API接口服务模块在系统启动时把自己的IP地址和端口注册到数据库表中,并定时更新自身状态,完成服务实例信息表的建立;
a-2)将API接口服务模块进行的控制类型定义相关控制默认值,完成接口控制类型表的建立;
a-3)通过自定义控制类型的值进行扩展覆盖默认值,完成控制标准表的建立;
a-4)将不同控制类型的控制标准醋和为一组策略,完成控制策略表的建立;
a-5)完成控制维度表的建立,包括调用者ID、业务扩展ID、接口资源ID;
a-6)将控制策略与控制标准进行绑定,完成控制策略配置表的建立;
a-7)将控制维度和控制策略进行绑定,完成控制配置表的建立:
进一步的,步骤b)中API接口服务模块提供对外数据交互服务,API管理模块负责对接口进行管理。
进一步的,步骤d)中API接口服务模块启动时注册自己的服务信息为IP地址及端口。
本发明的有益效果是:通过基于数据库和缓存结合http请求或消息队列实现动态控制API访问的设计方案,在保证API接口提供高并发访问支持的前提下,对API接口的访问进行控制,保护业务系统不被恶意访问攻击。
具体实施方式
下面对本发明做进一步说明。
一种动态控制API接口访问的方法,包括:
a)软件系统创建数据库表;
b)软件系统由API接口服务模块和API接口管理模块构成;
c)软件系统通过API接口管理模块定义接口控制的类型及其默认值;
d)API接口服务模块启动时注册自己的服务信息,并实时更新当前服务状态,API接口服务模块与API接口管理模块维持心跳;
e)API接口服务模块启动时读取数据库,将数据库中所有控制策略和控制维度加载至缓存;
f)API接口服务模块接收外界请求时,通过身份标识进行控制维度匹配,挑选出权重最高的控制维度对应的控制策略;
g)API接口服务模块按照筛选出的控制维度对API接口访问进行安全控制;
h)如果API接口访问出现安全问题,则通过API接口管理模块对指定的API接口调用者或API接口设置新的控制标准;
i)API接口管理模块通过获取所有所有API接口服务模块的注册信息找到正在提供服务的服务实例,通过向服务实例发送http请求的方式使各API接口服务模块清空缓存的控制策略和控制维度;
j)API接口服务模块再次接收访问请求时重新加载的新的控制策略和控制维度,实现对API接口服务的实时管控。
通过基于数据库和缓存结合http请求或消息队列实现动态控制API访问的设计方案,在保证API接口提供高并发访问支持的前提下,对API接口的访问进行控制,保护业务系统不被恶意访问攻击。
a-1)所有API接口服务模块在系统启动时把自己的IP地址和端口注册到数据库表中,并定时更新自身状态,完成服务实例信息表的建立。具体的该表的内容如下:
Figure DEST_PATH_IMAGE002
a-2)将API接口服务模块进行的控制类型定义相关控制默认值,完成接口控制类型表的建立,具体的控制类型由应用程序根据实际业务需求开发定制。具体的该表的内容如下:
Figure DEST_PATH_IMAGE004
a-3)当控制类型表中的默认值不能满足实际业务需求时,可以通过自定义控制类型的值进行扩展覆盖默认值,完成控制标准表的建立。具体的该表的内容如下:
Figure DEST_PATH_IMAGE006
a-4)将不同控制类型的控制标准醋和为一组策略,完成控制策略表的建立。策略会优先获取各控制类型的自定义控制标准,如果没有就会用默认值。具体的该表的内容如下:
Figure DEST_PATH_IMAGE008
a-5)完成控制维度表的建立,定义了要对哪些接口调用进行管理,包括调用者ID、业务扩展ID、接口资源ID。根据实际业务需求可以将基础维度进行组合成不同的控制模板标识,不同的控制维度权重不同,高权重的维度会优先使用。具体的该表的内容如下:
Figure DEST_PATH_IMAGE010
a-6)将控制策略与控制标准进行绑定,完成控制策略配置表的建立。具体的该表的内容如下:
Figure DEST_PATH_IMAGE012
a-7)将控制维度和控制策略进行绑定,完成控制配置表的建立。具体的该表的内容如下:
Figure DEST_PATH_IMAGE014
步骤b)中API接口服务模块提供对外数据交互服务,API管理模块负责对接口进行管理。
步骤d)中API接口服务模块启动时注册自己的服务信息为IP地址及端口。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (4)

1.一种动态控制API接口访问的方法,其特征在于,包括:
a)软件系统创建数据库表;
b)软件系统由API接口服务模块和API接口管理模块构成;
c)软件系统通过API接口管理模块定义接口控制的类型及其默认值;
d)API接口服务模块启动时注册自己的服务信息,并实时更新当前服务状态,API接口服务模块与API接口管理模块维持心跳;
e)API接口服务模块启动时读取数据库,将数据库中所有控制策略和控制维度加载至缓存;
f)API接口服务模块接收外界请求时,通过身份标识进行控制维度匹配,挑选出权重最高的控制维度对应的控制策略;
g)API接口服务模块按照筛选出的控制维度对API接口访问进行安全控制;
h)如果API接口访问出现安全问题,则通过API接口管理模块对指定的API接口调用者或API接口设置新的控制标准;
i)API接口管理模块通过获取所有所有API接口服务模块的注册信息找到正在提供服务的服务实例,通过向服务实例发送http请求的方式使各API接口服务模块清空缓存的控制策略和控制维度;
j)API接口服务模块再次接收访问请求时重新加载的新的控制策略和控制维度,实现对API接口服务的实时管控。
2.根据权利要求1所述的动态控制API接口访问的方法,其特征在于,步骤a)中软件系统创建数据库表的步骤为:
a-1)所有API接口服务模块在系统启动时把自己的IP地址和端口注册到数据库表中,并定时更新自身状态,完成服务实例信息表的建立;
a-2)将API接口服务模块进行的控制类型定义相关控制默认值,完成接口控制类型表的建立;
a-3)通过自定义控制类型的值进行扩展覆盖默认值,完成控制标准表的建立;
a-4)将不同控制类型的控制标准醋和为一组策略,完成控制策略表的建立;
a-5)完成控制维度表的建立,包括调用者ID、业务扩展ID、接口资源ID;
a-6)将控制策略与控制标准进行绑定,完成控制策略配置表的建立;
a-7)将控制维度和控制策略进行绑定,完成控制配置表的建立。
3.根据权利要求1所述的动态控制API接口访问的方法,其特征在于,步骤b)中API接口服务模块提供对外数据交互服务,API管理模块负责对接口进行管理。
4.根据权利要求1所述的动态控制API接口访问的方法,其特征在于,步骤d)中API接口服务模块启动时注册自己的服务信息为IP地址及端口。
CN202110770073.9A 2021-07-08 2021-07-08 一种动态控制api接口访问的方法 Active CN113420312B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110770073.9A CN113420312B (zh) 2021-07-08 2021-07-08 一种动态控制api接口访问的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110770073.9A CN113420312B (zh) 2021-07-08 2021-07-08 一种动态控制api接口访问的方法

Publications (2)

Publication Number Publication Date
CN113420312A true CN113420312A (zh) 2021-09-21
CN113420312B CN113420312B (zh) 2022-04-26

Family

ID=77720547

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110770073.9A Active CN113420312B (zh) 2021-07-08 2021-07-08 一种动态控制api接口访问的方法

Country Status (1)

Country Link
CN (1) CN113420312B (zh)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1633084A (zh) * 2004-12-28 2005-06-29 北京邮电大学 用于应用服务器的基于令牌的细粒度访问控制系统及方法
US20060031184A1 (en) * 2004-08-04 2006-02-09 Periyaswamy Senthil K Service request module
CN108614709A (zh) * 2016-11-29 2018-10-02 北京明朝万达科技股份有限公司 一种控制Android应用安全访问网络的方法及系统
CN109818902A (zh) * 2017-11-21 2019-05-28 中国电信股份有限公司 业务自动部署方法、服务调度管理模块以及epg平台
CN110300125A (zh) * 2019-02-02 2019-10-01 奇安信科技集团股份有限公司 Api访问控制方法及api访问代理装置
CN110535777A (zh) * 2019-08-12 2019-12-03 新华三大数据技术有限公司 访问请求控制方法、装置、电子设备以及可读存储介质
CN110781476A (zh) * 2019-10-15 2020-02-11 南京南瑞信息通信科技有限公司 一种柔性微服务安全访问控制方法及系统
CN111416837A (zh) * 2020-02-20 2020-07-14 华迪计算机集团有限公司 政务系统api接口访问网关、方法、电子设备及存储介质
CN112035858A (zh) * 2020-08-28 2020-12-04 中国建设银行股份有限公司 Api访问控制方法、装置、设备及介质
CN112243003A (zh) * 2020-10-13 2021-01-19 中移(杭州)信息技术有限公司 访问控制方法、电子设备及存储介质
US20210092669A1 (en) * 2018-06-07 2021-03-25 Huawei Technologies Co., Ltd. Method and apparatus for sending request of service, and system

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060031184A1 (en) * 2004-08-04 2006-02-09 Periyaswamy Senthil K Service request module
CN1633084A (zh) * 2004-12-28 2005-06-29 北京邮电大学 用于应用服务器的基于令牌的细粒度访问控制系统及方法
CN108614709A (zh) * 2016-11-29 2018-10-02 北京明朝万达科技股份有限公司 一种控制Android应用安全访问网络的方法及系统
CN109818902A (zh) * 2017-11-21 2019-05-28 中国电信股份有限公司 业务自动部署方法、服务调度管理模块以及epg平台
US20210092669A1 (en) * 2018-06-07 2021-03-25 Huawei Technologies Co., Ltd. Method and apparatus for sending request of service, and system
CN110300125A (zh) * 2019-02-02 2019-10-01 奇安信科技集团股份有限公司 Api访问控制方法及api访问代理装置
CN110535777A (zh) * 2019-08-12 2019-12-03 新华三大数据技术有限公司 访问请求控制方法、装置、电子设备以及可读存储介质
CN110781476A (zh) * 2019-10-15 2020-02-11 南京南瑞信息通信科技有限公司 一种柔性微服务安全访问控制方法及系统
CN111416837A (zh) * 2020-02-20 2020-07-14 华迪计算机集团有限公司 政务系统api接口访问网关、方法、电子设备及存储介质
CN112035858A (zh) * 2020-08-28 2020-12-04 中国建设银行股份有限公司 Api访问控制方法、装置、设备及介质
CN112243003A (zh) * 2020-10-13 2021-01-19 中移(杭州)信息技术有限公司 访问控制方法、电子设备及存储介质

Also Published As

Publication number Publication date
CN113420312B (zh) 2022-04-26

Similar Documents

Publication Publication Date Title
US7735129B2 (en) Firewall device
CN110781476A (zh) 一种柔性微服务安全访问控制方法及系统
JP4252034B2 (ja) 携帯可能なリソースモジュールのリソースを管理するシステム及び方法
US20050165902A1 (en) Method and apparatus for operating an open API network having a proxy
US10489145B2 (en) Secure update of firmware and software
WO2019018166A1 (en) NETWORK WAFER SELECTION IN A MOBILE NETWORK BASED ON A DEVICE CHARACTERISTIC
KR101086793B1 (ko) 휴대형 장치 및 정보 관리 방법
CN109088909B (zh) 一种基于商户类型的服务灰度发布方法及设备
US10212286B2 (en) System and method for allocation and management of shared virtual numbers
WO2014094287A1 (zh) 虚拟机控制策略的配置方法和交换机
WO2020197901A1 (en) Delayed printer assignment
CN113396574A (zh) 边缘计算管理装置以及边缘计算管理装置的操作方法
CN113420312B (zh) 一种动态控制api接口访问的方法
US11868668B2 (en) Secure device endpoint assignment and job communication
WO2023029250A1 (zh) 一种一键安全登录的方法、系统及第三方平台
US20100146120A1 (en) Caller-specific visibility masks for networking objects
US20060229060A1 (en) Method and system of alerting callers to surcharges
CN106161431A (zh) 通话建立方法及系统
US9913126B2 (en) Subscription management
CN101330435A (zh) 初始过滤规则优先级冲突处理方法
CN101815273B (zh) 基于号码携带的通信保障方法和系统
CN107911814B (zh) 一种基于hss增强的用户身份信息保护方法及系统
JP2012533101A (ja) 保全された電子トークン中に埋込まれたアプリケーションを管理する方法
JP2017207952A (ja) 処理装置、アクセス制御方法およびアクセス制御プログラム
EP2107756A1 (en) Policy resolution

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
CB02 Change of applicant information

Address after: 250101 west area, North 1st floor, S06 building, 1036 Chaochao Road, high tech Zone, Jinan City, Shandong Province

Applicant after: Shandong Inspur Yunman Intelligent Technology Co.,Ltd.

Address before: 250101 west area, North 1st floor, S06 building, 1036 Chaochao Road, high tech Zone, Jinan City, Shandong Province

Applicant before: SHANDONG YUNMAN INTELLIGENT TECHNOLOGY Co.,Ltd.

CB02 Change of applicant information
CB02 Change of applicant information

Address after: 250101 west area, North 1st floor, S06 building, 1036 Chaochao Road, high tech Zone, Jinan City, Shandong Province

Applicant after: Shandong Inspur Ultra HD Video Industry Co.,Ltd.

Address before: 250101 west area, North 1st floor, S06 building, 1036 Chaochao Road, high tech Zone, Jinan City, Shandong Province

Applicant before: Shandong Inspur Yunman Intelligent Technology Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant