API通过在应用层提供抽象能力来创造价值。例如,使用API对内部系统和数据的访问进行抽象,可以简化并自动化对传统IT系统的访问。API也是实现生态系统集成和合作伙伴集成的途径。如今,API还是实现自动化和编排的主要方式,因此成为成功推进数字化转型的关键技术之一。由此,API已成为企业的战略资源,可用于推动创新、高效执行和商业变现。
变现
在数字经济中,任何能够创造收入的事物最终都会实现商业变现。API尤其如此,研究表明,API经济发展势头强劲。
集成
API已取代ESB和基于Web的门户,成为企业间集成的主要方式。大量资料表明,在数字经济中,API是企业取得成功所依赖的战略要素。
o 超过60%的受访者认同,API集成对其业务战略至关重要。(《2018年API集成现状》)
o 超过50%的B2B协作将通过API集成开展。(2018年API集成现状)
o 51%的受访者将“与外部组织合作”列为决定开发API的主要驱动因素之一。
(2019年API现状报告)
业务和微服务等现代应用架构对API的依赖,使API成为极具吸引力的攻击目标。攻击者深知获取这些端点的访问权限乃至控制权所带来的价值。鉴于这一风险,应更加重视API层,尤其要保护对API所代表业务功能的访问。
身份验证必不可少
API安全始于访问控制,而访问控制离不开身份验证。“开放API”不应描述API访问模型,而应表示API具有完善的文档并遵循相关标准。调用API应始终要求身份验证,并尽可能要求授权。
有多种方案可供选择。在做出选择之前,应先了解每种方案的功能和局限性。
- 良好: HTTP Basic
HTTP Basic Auth是默认方式。这是对HTTP流量(例如目前大多数API)强制实施身份验证最简单、最常见的方式。Basic Auth的缺点是需要凭据,而凭据往往会在多个应用之间共享。攻击者越来越多地利用被盗(或泄露)的凭据来访问系统。密码强度及其存储位置和方式也会影响此方法的整体安全性。总比没有身份验证好。 - 较好: API密钥
API密钥比HTTP基本身份验证更进一步,因为它们由颁发方颁发,而且通常也由颁发方跟踪。除了安全用途外,API密钥还用于计量和计费等多种用途。不过,API密钥通常是静态的,这意味着第三方可能会提取并利用它们来冒充合法用户。密钥共享也是一个现实问题。与凭据一样,密钥可能会被同事和家人共享,实际中也确实如此。密钥传播得越广,就越有可能被恶意人员获取和利用。 - 更佳: 有效期令牌
随着API数量增加,令牌的使用日益普遍。目前常用的两种令牌是OAuth令牌(专用于API)和JWT(JSON Web Token)。JSON已成为交换HTTP资源访问声明的标准格式,并且也适用于API以外的场景,这推动JWT成为目前广泛使用的身份验证和授权机制之一。JWT甚至还有相应的RFC (7519)。与采用XML的同类机制SAML非常相似,系统会签发一项JSON断言,用于描述已通过身份验证的用户所拥有的访问范围和角色。它具有很强的可移植性,更重要的是,它设有到期日期和时间,因此不易被用于冒充已通过身份验证的用户。缺点是,令牌集成需要投入更多工作,而且并非始终受到原生支持。这可能导致实施错误,无意中带来可被利用的风险。
API安全可以直接在应用中实施,更合适的做法是在API网关中实施。API网关可以进一步保护API,例如通过速率限制(防止意外或蓄意的拒绝服务攻击)和授权等功能。授权仅允许指定客户端访问特定的API调用,从而缩小API的访问范围;这些客户端通常通过令牌或API密钥进行识别。API网关还可以限制可使用的HTTP方法,并记录滥用其他方法的尝试,以便及时发现攻击企图。
业务日益依赖应用,因此也需要保护应用所依赖的API。如果尚未着手实施基本防护措施,现在就应开始行动。要保护业务,就需要确保API安全。
关于作者

Lori MacVittie是F5首席技术官办公室的杰出工程师兼首席技术布道师,在应用交付、自动化战略和基础设施领域拥有深厚的专业知识。无论是为AI智能体定义防护机制、剖析脆弱的多云架构,还是探索可扩展系统的极限,她都善于化繁为简。她在应用开发、IT架构以及网络和系统运维领域拥有30多年的行业经验。加入F5之前,她曾担任技术编辑,并因出色表现获得奖项。 MacVittie拥有计算机科学硕士学位,著述颇丰,出版作品涵盖安全、云和企业架构领域。她还热衷于桌面游戏和电子游戏,并且对奶酪有着毫不掩饰的鲜明见解。
Lori Mac Vittie 的更多博客文章相关博客文章
Thingbot正转变为攻击平台
Lori MacVittie重点介绍了F5 Labs对2018年1月至6月全球物联网设备攻击的研究,并指出了其中令人警醒的影响。物联网设备不仅持续遭到利用,还被转变为攻击平台,这意味着攻击者可以更充分地利用这个必然增长的市场。
借助F5全新Quick Start,在AWS上快速开展业务
在AWS re:Invent开幕前,我们很高兴与大家分享F5与AWS之间全新的Quick Start集成。F5的Tom Atkins将介绍该服务如何启动、配置和运行在AWS上部署工作负载所需的计算、网络、存储及其他AWS服务。