内容目录
很早之前,就一直有一个想法:希望能够比较系统地介绍一下Web应用开发过程中的一些安全知识。
为什么呢?
因为从我个人在多家企业工作以及招聘面试的经历来看,我发现:大多数中小企业里的开发人员,甚至包括个别大型企业中的部分开发人员,几乎都是没有安全意识的。
由于各种各样的原因,大多数开发人员想得最多的就是怎样快速实现某些功能,保证这个功能能用,至于完成的这个功能到底安不安全,是没有认真去思考过的。
甚至有部分开发人员认为:应用系统的安全防护是运维人员的事情,是上面的技术大牛才关心的事情,与自己并没有什么关系。可是,有些安全隐患基本上只能靠开发人员在代码层面严防死守才能彻底根绝,譬如:SQL注入漏洞、访问权限漏洞、线程并发漏洞、事务并发漏洞……等。
更关键的是,应用系统的安全性是符合木桶短板定律的,只要有一个开发人员没有基本的安全意识,犯下了一些低级错误,且没有人及时发觉并纠正,那么整个 Web 应用就可能存在极大的安全隐患。尤其是在金融、电商、大数据等一些资金或隐私敏感性较高的领域,这些是不容忽视的,也是不可接受的!
因此,一个合格的开发人员也应该具备一定的开发安全知识。
那么,什么是 Web 安全呢?我按照个人的理解简单概括为:安全就是——任何用户都只能够按照应用产品设计的预期去操作,并得到符合期望的结果。如果Web应用能够完成违背预期的并可能损害任何一方利益的任何操作,都可能是存在安全隐患的。
在具体介绍之前,我先说明几点:
- 本内容仅面向开发人员,与开发者不太相关的内容,暂不考虑;
- 既然是「入门」,就要尽量通俗易懂,有案例,不「玄学」,能实践;
- 由于笔者主要使用 Java 语言,因此示例也以 Java 代码为主,但所有的知识内容在所有语言内都是相通的。
- 如果大家有发现任何错误,欢迎指正。如果有任何意见或建议,也欢迎在评论区交流!
现在,我们就开始步入正题。
限于篇幅原因,我们将分多个章节进行介绍。以下是入门指南的主要内容导航:
1 条评论
期待佳作~
撰写评论