如何预防软件中的安全问题:
需求阶段:在确定需求,做产品设计的时候,不仅要考虑到功能上的需求,还要同时考虑到安全方面的要求。
设计阶段:在做设计架构时,最重要的事就是要把安全加入到设计目标,有了安全方面的设计目标,自然能找到很多安全相关的解决方案。主要包括:
1)攻击面最小化
2)权限最小化
3)纵深防御:纵深防御的设计原则,指的是从不同的维度去实施安全保护措施,从而缓解被攻击的风
险。纵深防御并不是同一个安全方案要做两遍或多遍,而是要从不同的层面、不同的角度对系统做出
整体的解决方案。
开发阶段:
1)编码规范中加入安全相关内容
2)要有代码审查
3)增加安全相关的自动化测试
此文章为10月Day28学习笔记,内容来源于极客时间《软件工程之美》