知道你的API

的“注意事项”,确保你的api

博盖Nakhjiri
知道你的API

作为我们的数字转换Equinix的一部分,我们为我们的客户提供web门户接口交互与我们的产品和服务。和许多现代平台服务提供商一样,我们现在有重建我们的产品与现代microservice架构上运行的工作负载弹性Kubernetes基础设施。这些microservices暴露部分的应用程序功能作为单独的端点(url),提供应用程序编程接口(API)交互。这个体系结构允许更多的敏捷开发,不同的应用程序组件可以由不同的团队开发和改进更快和更可靠,使用持续集成和持续开发生命周期(CI / CD)原则和工具。

然而,这种架构构成安全挑战。应用程序功能的整体安全性和鲁棒性严重依赖于api的安全。这些API请求和响应旅游全部通过内部基础设施。另一方面,一个好的API调用的一部分向这些microservices直接来自外部API客户端部署Equinix的客户——所以源自外Equinix的网络。Equinix的,我们的目标是向zero-trust基础设施,避免将内部API和外部API控制飞机安全与不同的假设和前提。然而,鉴于我们有更好的控制我们的软件开发生命周期和部署环境,对外公开的API和路径,需要通过我们的基础设施需要更多的审查。

本文写了这些外部采购API请求,然而,同样的原则也适用于我们的内部API。

测试驱动与API的游乐场

我们收集mock-APIs允许您启动你的项目设计与模拟请求和响应对象。

现在报名
CTA Image_1-27-21_API

“注意事项”部署API的安全

我的粉丝周边安全时从外界摄取的api。构建一个城堡,然后建立一个护城河周围吊桥和警卫。但这是什么意思,当你走出中世纪时代,进入现代世界?

  • 使用强化API网关公开HTTPS接受API请求。
  • 把一个web应用程序防火墙或者可以赶上你的OWASP X的API的威胁。
  • 做你的第一个通过输入验证的边缘网关和防火墙和API使用任何其他edge-capable安全工具。
  • 检查用户,服务帐户或客户(任何一个API发送给你)也在边缘,只允许经过身份验证的用户,帐户或客户端API请求。
  • 不要把所有的凭证或在网关的用户数据库,而不是使用一个经典RADIUS-like AAA模型API边缘网关作为身份验证代理身份验证服务的后端。这样你可以委托你的认证在市场上任何类型的身份提供商,甚至希望得到一些GDPR里程从你的供应商。
  • 一样授权:授权委托给一些服务,能做的基于角色的访问控制(RBAC)和细粒度的服务级别的授权。这意味着避免通用的,你可以吃所有“自助餐风格”牌,并迫使授权具体服务,这样任何内部的横向运动系统是可以避免的。仅仅因为你是在进门,并不意味着你可以在任何地方吃东西:遵循zero-trust模型和范围授权令牌,把他们绑在microservices你认为是合理的,但请不要添加任何个人身份信息(PII)在令牌,除非你打算加密到客户端。

更大的API情报意味着更好的API的可见性

市场上有新的API情报的工具,让你了解到API来通过你的网关。他们不仅给你每个API请求和响应,通过你的网关,但也他们将要和来自端点。安全团队,这是一个伟大的方式来构建API交通,可见性组织,发现基地模式和看到异常——不管他们软件或部署异常或实际的安全事故,需要更多的关注。你是否称之为机器学习,先进的监测、监督学习或配置是取决于你。无论如何,一些腿工作显然是必需的。例如您需要确定您的端点与标签对你有意义的分析;是否由产品名称标签,集群名称、环境类型(开发或生产),甚至产品工程主管发送电子邮件的名称基于完全取决于你。

清晰的API规范可以速度异常检测

架构团队试图设置架构模式,API标准和为API构建成熟的生态系统,让产品团队提供一个API规范新产品,负载的工具和发现任何运行时违反了你的敏感性水平。例如,API等特定标题或特定类型的负载,你所看到的在这个领域不匹配?你可以抓,甚至阻止它。你认为你是否处理侦察或恶意代码注入模式,也可以检测到,并相应地探讨基于什么是你认为的严重性级别异常。

一些工具甚至告诉你哪些源API来自。例如,如果是外部,来自哪个IP地址?它是一个特殊的客户相关的客户?是已知的用户使用特殊的客户端吗?客户支持团队密切,让你的客户知道你收到异常流量IP地址或雇员或客户。

知道基地模式和能够检测异常甚至走很长的路来处理内部交通(城堡内)外的常态。它是人是生产压力测试错误的端点,而不是使用开发环境端点?或者是攻击者内部和执行漏出的行为?这就是有一个好的库存异常期间的内部IP地址范围方便调查。一个例子是一个库存的IP范围,产品工作负载集群(比如Kubernetes)使用。你甚至可以告诉你的是团队和查明Kubernetes集群都是使用最新的操作系统为他们的工作节点,如果他们是池集装箱图片免费的cf映像存储库。如果不是,那么是时候为你的产品团队来解决这些旧JIRA票处理这些cf。同样,验证您的服务架构验证集群相互交谈和确保你有使它们之间的安全通信。

在我们附近

考虑的一个重要的事情是检查敏感和个人数据流经你的隐私合规的api。通过做这些敏感的有效载荷的基础设施走多远和它们是如何保护的?是产品团队的屏蔽应用真的有效吗?

后API是你的一个最好方法找出什么样的同意需要来自用户,你需要去删除当用户想要遗忘的东西。同时,注意PII不仅是敏感数据,但包括商业敏感的事情,你的客户不希望了解他们的竞争对手。一个工具,你会了解到流经你的API基础设施可以监督学习,或定制的检测,被认为是由你的客户敏感信息,因此对你的公司。

了解更多的Equinix的API操场

《阿凡达》的照片
博盖Nakhjiri 总监,首席安全架构师
订阅Equinix的博客
Baidu
map