API管理和API 生命周期的区别
在许多团队会认为,API 管理和 API 生命周期经常被混为一谈:
· API 管理主要是技术领导的责任。
· API操作生命周期是要求团队中的开发快速的交付结果。
一般来说,技术领导允许开发在这两个领域做出决策时有一定的自主权,但是这样操作就会将API的基础设计交给了开发团队去设计,但是一般来讲,普通的开发人员并没有设计API的能力。
把API开发搞简单,统一管起来
如果我们不把API整合起来,方便快捷地管理,各个小团队就得自己琢磨怎么弄。他们会自己想办法,想出一些临时的招数来解决问题。这样一来,负责管理整个平台的领导就不知道这些小招数是否安全,也没法控制。
开发总是涂自己省事,想在自己的逻辑代码里搞定API的控制功能。可这事其实应该是技术领导从上层父类统一管起来,这样才能保证安全。
如果不能把大家的API整合在一起,统一弄一个标准的做法,那就麻烦了。搞的大家工作效率低下,谁也管不着谁。
这样下来导致的后果:
1、生产力降低——一旦开发人员做他们不擅长的事情,生产力就会下降。开发人员的职责是写业务逻辑API,不是搭建底层API基础设施。
2、控制分散化——API的功能重复时采用的不一致控制措施会产生阻碍安全管理的隔离区。由于代码过多混乱,无法全面看到API的潜在风险,可能会由于分散化带来安全隐患,导致被恶意攻击者利用。
3、维护麻烦——临时写的代码大概率是需要持续维护,降低了可靠性和效率。重复性工作是一种浪费。
通过API管理实现统一API控制
正确的API管理平台能够解决上述所述的问题,它可为API提供统一的安全控制面板、管理和运营能力。
没有现代化的API平台,API和微服务数量的增加只会加剧重复和分散化问题。当使用多个来自不同供应商的API管理平台时也存在同样的问题。缺少单一控制面板来管理和审视安全配置就会留下安全隐患
对于现代API基础设施,常见的API控制措施包括:
1、安全性 - 网络层安全(防火墙、DDoS保护)和应用层安全(身份验证/授权、凭证管理)、流量安全(异常检测)。
2、流量管理 - 速率限制、分级访问控制等。
3、分析与日志 - API监控、使用分析、访问日志等。
安全永远是头等大事,尤其是对于API开发来说。在开发API的时候,我们得做两件重要的事情:一是制定一个详细、完备的API规范,确保我们的API能按需正确工作;二是确保进行足够的测试,这样才能防止API在处理请求的时候不小心泄露了不该泄露的信息。并且要确保有个明确的团队人员负责管理API,而且这个团队的管理方式也得是透明的,让大家都放心。负责人源定期去检查这些API,确保它们安全可靠。如果这个任务都落在了开发团队头上,那么公司的高层就很难真正掌握背后的风险了,更别提及时采取措施来防范这些风险了。总之,安全问题大家都得重视起来,API基础设施的安全和质量绝对不能掉以轻心。
结论
说白了,现在网络攻击越来越多了,保护API安全这事不只是技术团队得上心,领导们也得重视起来。大家可能都想找个完美的时机来改进这块,但实际上,攻击事件一个接一个的发生已经告诉我们,赶紧搭建好我们自己的API保护墙才是迫在眉睫的事情。