当前位置: 首页 > 科技观察

API安全分析

时间:2023-03-12 07:59:45 科技观察

Part01.什么是API关于API的定义,先看维基百科上对API的描述。“应用程序编程接口(API)是两个或多个计算机程序相互通信的一种方式。它是一种软件接口,为其他软件提供服务。描述如何构建或使用此类连接或接口的文档或标准称为API规范。满足此标准的计算机系统被称为实现或公开API。术语API可以指规范或实现。”从这个描述中我们可以了解到,API是应用程序开发过程中经常提到的东西,它的全称是ApplicationProgrammingInterface(应用程序编程接口)。API定义了一组函数、协议和数据结构,以明确应用程序中各个组件之间的通信和数据交互方式。在不访问源代码或了解内部工作机制细节的情况下,以接口的形式向外部用户提供Web应用程序、操作系统、数据库和计算机软硬件的能力。Part02.常用API类型在API的开发过程中,根据表现形式的不同,大致可以分为以下四种:?类库API-定义类库API通常是一个类库,其用途取决于on对于特定的编程语言,开发人员通过接口调用来访问API的内置行为,以处理所需的信息。-一个应用程序调用微软基础类库(MFC)的例子?操作系统API-定义操作系统API通常是操作系统层对外提供的接口,开发者通过接口调用。-调用WindowsAPI或Linux标准库的应用程序示例?远程应用程序API-远程应用程序API的定义是开发人员通过标准协议将不同技术结合起来的一种方式,无论涉及何种编程语言或平台。操纵远程资源。-Java通过JDBC连接操作不同类型数据库的例子?Web应用API-定义:Web应用API通常使用HTTP协议,在企业与企业内部的不同应用之间,通过Web开发过程的架构设计方法提供了一个以一套服务的形式调用接口,满足不同类型、不同服务消费者的需求。-示例:社交应用新浪微博的用户登录在API技术的发展历程中,业界习惯将前两个阶段的API称为经典API,将后两个阶段的API称为现代API。ModernAPI是目前API技术的主要使用形式,主要是web应用API。根据现代API的服务对象、技术形式和使用者的不同,可以划分出不同类型的现代API。Part03.API安全问题的主要原因近年来,越来越多的攻击者开始针对API,因API攻击或漏洞引起的攻击或数据泄露事件频频发生,例如:2019年11月,推特利用通讯录匹配功能获取数百万推特用户账号和手机号码的数据泄露。2020年3月,Facebook数据大规模泄露,包括用户昵称、邮箱地址、电话号码、家庭住所等信息,涉及超过5亿用户。2020年4月,GitLabAPI问题导致私有项目命名空间泄露。那么,API安全问题频发的原因有哪些呢?