全流程指导,一堂高质量的API网关技术课!!!

博文小编

2022-06-03

【以下文章来源于派先生的随笔 ,作者imiyoo】

Web安全的攻防重心在慢慢地向API场景进行转移

随着前端框架的发展成熟以及前后端分离模式的流行,API也正在成为服务端的主要攻击入口;同时由于云原生和微服务架构越来越多的企业接受和采用,API的数量也在急剧暴增;

Programmable Web 曾统计过API的增长趋势,在2006年之后,API就开始实现快速增长,尤其在2010年以后,这种趋势更加明显;全球的API数量都实现了广泛地增长,如下:

Salt Security研究部门Salt Labs的一份新报告发现,SaltSecurity的客户遭遇的API攻击流量在过去一年中增长了681%,与此同时整体API流量增长了321%,如下:

Gartner也曾在其《如何建立有效的API安全策略》报告中预测,“到2022年,API滥用将成为导致企业Web应用程序数据泄露的最常见攻击媒介”, 这里面所说的最常见却并没有之一,足以见得API的重要性;

各种现象和趋势都在表明API越来越重要,我也相信,未来API将在互联网中会占据极其重要地位,尤其是在移动互联网中,不管是企业的内部,还是企业的外部,越来越多的应用、网站、数据都将通过API来进行数据传播,API服务化已经是不可阻挡的趋势。

毕竟:开放与连接,才是世界的主旋律。

01 API网关与Web防火墙

Web防火墙主要是针对HTTP请求来进行安全过滤,当然也可以对API进行安全过滤;而API却有一些自身的约定条件、管理方式和场景要求,所以,API网关的功能与Web防火墙也是不同的,它们其实是两种不同的安全产品。

Web防火墙可以简单抽象为:「Web服务器」+「规则引擎」

API网关则可以抽象为:「Web服务器」+「网关逻辑」

也许,有的朋友会好奇地问:网关为什么能够进行快速开发,它不是应该挺复杂的吗?
确实如此,但主要还是因为它们的开发模式和设计思路大部分都是相同的,且入门阶段也都是有章法可循;所以,我想通过API网关开发的专栏内容来给大家分享下一些具体的开发方法和思路,让你也能够快速掌握并开发出满足自己需求的应用层网关。

一堂高质量的API网关技术课

《从0开始打造自己的API网关》


(扫描下方二维码了解专栏详情)

✔ 15期图文专栏

✔ 设计+实践+部署,全流程指导

✔ 带你动手开发轻量级API网关

扫码立享29.9元上新尝鲜价

02 为什么要选择这门课

提升安全技能

「安全」其实是一个综合性很强的技术方向。

很多安全的同学接触Web安全都是从渗透测试开始,也并不太关注自身的安全开发能力;

但当你不满足现状想进一步提升自己的时候,你就会发现「安全开发能力」原来也是安全技术进阶的必备技能之一,它能够将你的安全想法或技术思路转化为demo、工具、系统,甚至是产品;从而能更加有效地帮助你去验证和解决实际中的问题。

如果你也有这方面的顾虑和想法,那我相信本专栏是一定能帮到你。

关注API生态与技术

随着API技术被广泛使用,早在2010年「ProgrammableWeb」便预测API数量会不断增长,大量的API也直接带来了对安全与管理的诉求,各种API的安全风险也在层出不穷,API场景下的开发和设计也慢慢被重视起来;

可以看出,API生态也都在向简洁、集成和规范的方向发展;而API网关作为API生态的重要组成部分,它的价值也在逐渐地被接受和使用;对于Web技术方向的同学而言,我们也更应该保持对其的关注和学习;API安全网关其实已经有很多开源实现或商业产品,当然,如果你并不仅仅满足于简单的产品使用和维护,而是希望可以对API网关技术的活学活用,并做些功能的移植和集成,这个专栏应该可以帮助到你。

03 你将收获什么

你可能碰到过API网关选型的问题,是选择开源,还是商业,抑或是自研?你可能希望在大的系统中集成轻量级的API网关?

选择什么样的方式来解决问题,当然要依赖问题场景,毕竟需求决定方案。

如果你需要的是一个成熟的解决方案,那么,首推还是「开源」和「商业」,因为你主要目的只是「使用」;

如果你需要的是一个集成型的网关模块,那么,从「成本」和「效率」看,我会建议你来学习下这门课:

API网关的开发成本并不高,功能和维护的效率也会优于「开源」和「商业」,通过本专栏,你不仅能够了解到API网关的设计和原理,还能自由快捷地扩展所需功能。

它可以帮助你从技术视角来评估你所需要功能的复杂度,选择合适的方案;

而且,应用层网关是个相对普适的需求,开发方法有章可循的;同时,应用网关的技术开发范式也是相通的,不管是WAF,还是API网关,或者是其它场景需求的网关,我们学会了API网关的开发实践,是可以进行快速迁移来适应其它的场景;

因此,我们可以固化下应用层网关的开发框架,提高和叠加自己的技术竞争力,

我就曾利用这套方法在一个月内完成WAF的开发,并完成客户的交付;同样,在工作期间内,同时兼顾其它工作的同时,在三个月内完成API网关的设计开发和上线应用;

所以,我完全相信通过本专栏的学习,你也一定可以,甚至会更加优秀。

04 关于课程详情

我们最终的目标是能够用Golang开发出一个属于自己的简易版轻量级API网关,为了符合完整的项目开发过程,我将这门课程分成了三个大部分,分别是:设计、实践和部署,课程大纲如下:

第一部分「设计篇」

围绕API网关进行架构设计,分别从高性能和高可用来完成整体的架构设计

第二部分「实践篇」

按照网关的架构设计要求,首先,从一个最基础的网关框架开始,然后依次将网关所需要的功能进行开发实践,并逐步完善直至最终完成基础版本的网关实现。

第三部分「部署篇」

网关开发完成后,我们需要对网关进行部署和优化,这样才能更完整地对网关进行测试和应用。在这部分中,我们也会对API网关进行性能测试,并通过效果对比来评估自己的网关。
每一讲中我都会为你讲解实现过程和细节,并阐述每个设计的思路和原理,希望你在学习后,不仅可以系统性地掌握API网关的工作原理和开发技能,更能懂得API网关开发的思考过程和设计思路,从而达到举一反三的效果。

关于代码

除了设计篇,其它每节课程都配有对应的实践和操作内容,每一节课程中的代码我将放在 GitHub 上了,你可以跟着课程一边学习一边实践,这样你不仅能更快地掌握和吸收,也可以更好地强化和巩固所学知识。

我相信,按照专栏课程的节奏,一步一步地为自己的网关添砖加瓦,直至完成一个基础且完整的API网关。

好了,最后,感谢你对我的信任,更希望你能学有所获,也欢迎在留言区或社群中分享你学习中的问题和痛点,咱们可以一起交流和讨论。

618大促福利不要错过哦!

ATF8PV(当当20元优惠码)

当当每满100-50 再叠加20元优惠码

实付100可用 花80元买原价200元的书

使用时间:5.25-6.3

数量有限,先买就是赚到!

(更多好书可扫码查看)

读者评论

相关博文

  • 社区使用反馈专区

    陈晓猛 2016-10-04

    尊敬的博文视点用户您好: 欢迎您访问本站,您在本站点访问过程中遇到任何问题,均可以在本页留言,我们会根据您的意见和建议,对网站进行不断的优化和改进,给您带来更好的访问体验! 同时,您被采纳的意见和建议,管理员也会赠送您相应的积分...

    陈晓猛 2016-10-04
    5437 739 3 7
  • 迎战“双12”!《Unity3D实战核心技术详解》独家预售开启!

    陈晓猛 2016-12-05

    时隔一周,让大家时刻挂念的《Unity3D实战核心技术详解》终于开放预售啦! 这本书不仅满足了很多年轻人的学习欲望,并且与实际开发相结合,能够解决工作中真实遇到的问题。预售期间优惠多多,实在不容错过! Unity 3D实战核心技术详解 ...

    陈晓猛 2016-12-05
    3302 36 0 1
  • czk 2017-07-29
    5874 28 0 1