API的“灵魂五问”
imperva.com/zh
API是Application Programming Interface的简写,又称为应用程序编程接口,它通过定义一组函数、协议、数据结构,来明确应用程序中各个组件之间的通信与数据交互方式,将Web应用、操作系统、数据库以及计算机硬件或软件的能力以接口的形式,提供给外部系统使用。
换句话说,API就是程序之间的接口业务交互的技术约定。
来源:维基百科
API的出现,大大地节约了研发成本,简化了应用程序开发的难度,节省了时间,为业务能力的快速迭代提供了可操作的机会。
类库型API
●定义:
类库型API通常是一个类库,它的使用依赖于特定的编程语言,开 发者通过接口调用,访问API的内置行为,从而处理所需要的信息。
●举例:
应用程序调用微软基础类库(MFC)
操作系统型API
●定义:
操作系统型API通常是操作系统层对外部提供的接口,开发者通过 接口调用,完成对操作系统行为的操作。
●举例:
应用程序调用Windows API或Linux标准库
远程应用型API
●定义:
远程应用型API是开发者通过标准协议的方式,将不同的技术结合 在一起,不用关心所涉及的编程语言或平台,来操纵远程资源。
●举例:
Java通过JDBC连接操作不同类型的数据库
Web应用型API
●定义:
Web应用型API通常使用HTTP协议,在企业与企业、企业内部不同 的应用程序之间,通过Web开发过程中架构设计的方法,以一组服务的 形式对外提供调用接口,以满足不同类型、不同服务消费者的需求。
●举例:
社交应用新浪微博的用户登录
●小结:
在API技术的发展历史中,业界习惯把前两个阶段的API称为古典 API,后两个阶段的API称为现代API,现代API是当前API技术的主要使用形式,它们使用不同的通信协议或消息格式构成了精彩的API技术世界。
从Web技术发展的4个阶段可以看出,API技术的快速发展是在Web 3.0时代开始的。
现代API是目前最常用的API,以Web应用型API为主。
对于现代API,又可以按照如下维度划分:
#基于服务对象的类型划分
#基于技术形式的类型划分
#基于使用者的类型划分
API发展到现在,往往由于API接口的大量调用,很多企业并不清楚自己有多少个API,也不知道API处于什么状态。大量的API资产无法梳理清楚,这就使得企业API资产不清、责任不清,从而成为黑客攻击的主要入口,引发API安全问题,比如企业敏感数据泄露等。
Imperva API安全解决方案
之API发现
imperva.com/zh
安全团队在 API 业务防护上的痛点
●问题1:
“我需要一份完整的 API 清单以便详细了解现网 API 使用情况”
●问题2:
“业务版本迭代过程中,我如何了解已经下线的 API 是否仍然被使用,以便及时通知业务团队将无效 API 下线”
解决方案
自动、始终保持最新的 API 清单,安全团队化被动为主动,及时了解当前网络中存在的 API,将发现的老旧 API 通知业务部门下线。
方案优势
规避老旧业务一直在无人监督的情况下后台运行,导致攻击者扫描到这些 API 对象,造成信息泄露或进一步通过这些 API 在内网横向移动进行渗透。
安全团队在 API 业务防护上的痛点
●问题1:
“在 API 使用过程中,我们如何知道哪些 API 包含敏感信息从而避免信息泄露,满足合规性要求”
●问题2:
“我们需要知道通过我的 API 公开了哪些数据”
解决方案
自动对所发现的 API 对象进行敏感字段数据匹配,安全团队可以针对这些发现带有敏感数据的 API 做更加严格的防护策略。
方案优势
保护访问者一起企业的敏感信息,满足企业合规性要求。
安全团队在 API 业务防护上的痛点
●问题1:
“我们有对外发布的 API 业务,同时也有内部 API 业务,如何全方位监控到所有的 API ”
●问题2:
“我们新业务全部是在微服务架构下的容器中部署,在这种环境下如何进行 API 的获取识别”
解决方案
支持在传统服务器,虚拟化,容器化等环境的探针部署,也可以通过核心网络设备上进行流量镜像获取 API 流量,全面覆盖南北/东西向 API 流量的获取和展现。
方案优势
全面监控企业各种部署环境下的 API,不放过任何一个漏网之鱼。
最后Imperva祝各位中秋快乐!
●END●
欢迎联系 Imperva 了解更多信息
电话:+86 10 8587 2372
原文始发于微信公众号(IMPERVA):API安全应用场景系列之API发现
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论