API接口数据流转常见安全机制

news/2025/3/14 18:12:12/

01 什么是API?

百度百科给出了API的定义:

API(应用程序接口)是一些预先定义的函数,或指软件系统不同组成部分衔接的约定。目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问原码,或理解内部工作机制的细节。

通俗的来理解就是API是一种为客户提供服务的方式。当一家企业或数据中心为客户提供API的时候,意味着它们建立了一组专用的URL通道,服务响应后返回的是纯数据。

很多时候API自身还能被包装成一种服务模式。例如,Weather Underground就将其天气数据API的访问权限出售给其他人,同样华为也对API服务有超出免费次数的API请求支付费用的服务模式。

API接口作为数据共享开放的基础,随着数字化进程的推进,越来越多的企业和数据中心将服务封装成数据接口进行开放,供第三方使用。

总体来说,API接口分为三大类:开放API、面向合作方API和内部API。如表一所示。

AP类型

简介

开放API

开放API指调用者不需要 与API提供者建立合作关系,且面向公网开放,允许公共调用的应用程序接口。

面向合作方API

面向合作方API指组织与外部合作伙伴、用户等进行数据交互、交流和系统 集成的应用程序接口。

内部API

内部API仅在组织内部使用,是用来协调内部不同系统、应用之间的调用关 系的应用程序接口。

表一:API分类

开放API(OpenAPI)是开发者运用最多的一类了。由于具有标准化、通用性等优势,不断被运用到需要快捷的服务场景。数据共享开放时代,几乎没有人可以绕过API来构建信息系统和App。

API是共享开放的基础。如图一所示,API的主要价值可以总结为三点:

  • 数据共享开放,更精准的触达客户,提供更丰富的服务

  • 通过API接口聚合,实现应用场景及商业模式的转变

  • 通过API接口快速接入海量数据,实现数据的价值增值

图片

图一 API是共享开放的基础

02 API接口面临的主要风险

下面八种API接口的安全风险需要我们予以重视(如图二):

图片

图二 API接口面临的主要风险

过去,应用程序可以安全地隐藏在防火墙后面。如今API成了企业应用程序的关键,它使应用程序的特性更加丰富和动态,随着数字化转型,数据在不断打通,API成为数据重要的流通链路。这是好的一面,但同时API也增加了攻击面,并没有防火墙防护,常常被意外地公开。

API接口传输数据类型复杂多变, 有些接口涉及敏感的商业数据、个人隐私数据。一旦发生泄露窃取,企业将面临巨大的合规风险和商密数据泄露风险。许多重大数据泄露问题,其幕后原因都在于 API 遭到破坏、泄露或攻击。

03 API安全常见解决方案

2019年OWASP发布了API安全十大项目,但由于API安全涉及的范围比较广,不少常见的安全问题并没有被列入其中。

API安全市场处于相对早期阶段,国内专业从事API安全的厂商也不多,从市场角度来看,主要有两类:API网关方案和基于数据流转分析的API安全方案。

一、API网关方案:

通常的解决方法是为内部环境和云计算环境部署设置API网关,并有数据中心将它们作为托管的服务来提供。

遗憾的是,并非API网关就是一个好主意。目前市场上的代理API和API网关大多只能解决其中的几项,无法针对这些风险给出全面的防护手段。

当然,API网关有其优点:通过API网关汇集所有API流量,可以确保基本的安全策略(如加密、身份验证和访问控制)得到充分实施、并能执行负载均衡和DDoS保护等策略。

这似乎是一个理想的选择,但现实很骨感。

首先,整个过程需要从创建API目录开始,包括数据中心公开的所有的API目录。但要保持目录更新是一件很困难的事,尤其是在今天讲究快速迭代更新的时代,新的服务在几天甚至几小时内就会推出。

其二,使用令牌来标识每个API,控制对数据和服务的访问,没有授权令牌的开发人员不能公开新的API。但是一些企业的实践表明,要让所有开发人员都参与进来可能的困难程度超出想象。

其三,将API网关作为托管的服务来提供是一个很美妙的设想,但数据中心却无法也不能强迫客户这样做。

其四,单点故障和中央网关延迟是API网关避不开的隐患,它增加了数据中心复杂性和管理开销。成千上万个企业API都通过API进行通信,出现单点故障和延迟是一个可怕的噩梦。

二、基于数据流转分析的API安全方案

通过AI技术和小样本深度学习对API的访问行为和流量进行分析,从而发现API的各种异常访问行为。这类基于数据流转分析的API安全方案可以实现全场景动态防护,主要包含四大类,如图三所示。

图片

图三 API全场景动态防护

非法调用防护:主要包括防止未授权的API调用、检测API安全验证机制、识别API越权、遍历检测等等......

恶意访问防护:主要包括持续监控API接口访问行为、识别API接口攻击访问等......

数据泄漏防护:主要包括监控API接口传输敏感数据、防止敏感数据超范围获取等......

滥用防护:主要包括监控API接口高频访问行为、识别API接口数据爬取行为、高权限账户异常地址访问、识别API接口数据聚合分析行为等......


http://www.ppmy.cn/news/1131991.html

相关文章

SpringCloud Alibaba - Sentinel 微服务保护解决雪崩问题、Hystrix 区别、安装及使用

目录 一、Sentinel 1.1、背景:雪崩问题 1.2、雪崩问题的解决办法 1.2.1、超时处理 缺陷:为什么这里只是 “缓解” 雪崩问题,而不是百分之百解决了雪问题呢? 1.2.2、舱壁模式 缺陷:资源浪费 1.2.3、熔断降级 1.…

【图像分割】图像检测(分割、特征提取)、各种特征(面积等)的测量和过滤(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

js 实现删除数组指定元素

文章目录 需求分析1. 使用 splice() 方法2. 使用 filter() 方法3. 使用 splice 和展开运算符(ES6): 新的需求新的分析 需求 删除数组中的指定元素,阁下该如何应对 分析 有多种方法可以实现 JavaScript 数组删除指定元素。以下是其…

Vue与React//双绑问题

Vue和React是两个目前最流行的前端框架,它们有一些区别主要区别如下: 响应式原理:Vue使用基于模板的方式进行双向绑定,其中使用了Vue自己实现的响应式系统。Vue能够通过追踪数据的依赖关系,自动更新DOM元素。而React采…

030-从零搭建微服务-消息队列(二)

写在最前 如果这个项目让你有所收获,记得 Star 关注哦,这对我是非常不错的鼓励与支持。 源码地址(后端):mingyue: 🎉 基于 Spring Boot、Spring Cloud & Alibaba 的分布式微服务架构基础服务中心 源…

XSS详解

XSS一些学习记录 XXS短标签、属性、事件、方法短标签属性事件函数弹窗函数一些对于绕过有用的函数一些函数使用payload收集 浏览器编码问题XML实体编码URL编码JS编码混合编码 一些绕过方法利用constructor原型污染链构造弹框空格绕过圆括号过滤绕过其他的一些绕过 参考 XXS短标…

机器学习之单层神经网络的训练:增量规则(Delta Rule)

文章目录 权重的调整单层神经网络使用delta规则的训练过程 神经网络以权值的形式存储信息,根据给定的信息来修改权值的系统方法称为学习规则。由于训练是神经网络系统地存储信息的唯一途径,因此学习规则是神经网络研究中的一个重要组成部分 权重的调整 &#xff08…

centos 部署nginx 并配置https

centos版本:centos 7.8 (最好不要用8,8的很多用法和7相差很大) 一.安装nginx 1。下载Nginx安装包:首先,访问Nginx的官方网站(https://nginx.org/)或您选择的镜像站点,找…