当前位置: 首页 > news >正文

代码审计必要性探讨

1、背景

为了保证代码的质量,需要一系列的流程来进行保证:

今天要探讨的是代码审计的必要性。

2、代码审计

代码审计的做法多种多样,我理解必须解决以下问题 ,才可能有效:

  • 核心:审计的本质是对比,必须用一个数据与一个预期的数据进行比对
  • 稳定:审计程序需要稳定,不能经常变更。经常变更带来的是审计程序自身的bug。
  • 简单:审计程序应该尽量简单,不应该比业务逻辑还复杂。否则,靠什么保证审计程序的正确性呢?

下面对比下代码审计的几种方式:

方案优点        缺点
明细数据与汇总数据的对比:比如有一张表是明细数据,一张是定期汇总后的数据,为了保证数据的正确性,定期进行审计

1、对比的双方非常明确

2、审计程序简单易懂

字段的变化会引起审计程序的不稳定
审计请求参数的正确性:参数数量、必填、正确性

1、对比双方不清晰,因为请求参数可能来源于多张表,而且经过处理之后的数据,无法直接获取到。

2、基本上是每个请求的审计都需要单独写,请求发生改变就要同步调整

3、审计程序,与业务实现逻辑基本类似

4、如何保证审计程序的正确性、及时性是个难题。

方案1能起到一定的审计作用。

方案2难度较大,收益不明显,不如把该环节前移到单元测试阶段执行。

http://www.lryc.cn/news/268755.html

相关文章:

  • SpringBoot-Shiro
  • 认识Docker
  • uniapp的分包使用记录
  • JSON.stringify()
  • 机器学习——损失函数
  • C#多线程(补充)
  • 关于苹果iOS 16:揭开伪装成飞机模式的隐形蜂窝接入漏洞的动态情报
  • Python+OpenCV 零基础学习笔记(4-5):计算机图形基础+Python相对文件路径+OpenCV图像+OpenCV视频
  • 【C++篇】讲解Vector容器的操作方法
  • 桥接模式-举例
  • FreeBSD下安装Jenkins(软件测试集成工具)记录
  • 数据结构学习 Leetcode474 一和零
  • VS配置PCO相机SDK环境
  • 六、Redis 分布式系统
  • Unity相机跟随角色移动
  • Lua的垃圾回收机制详解
  • java设计模式学习之【解释器模式】
  • Unity中Shader旋转矩阵(四维旋转矩阵)
  • 【大数据】Centos 7安装教程
  • 2024 年 11 款最佳 Android 数据恢复软件应用
  • Redis 核心知识总结
  • Android Jetpack之用Room+ViewModel+LiveData实现增删改查数据(createFromAsset())
  • MySQL ORDER BY(排序) 语句-读取的数据进行排序
  • 【ES】es介绍
  • 07.kubernetes客户端部署
  • laravel5.8中实现验证码组件的安装和验证
  • 使用VScode通过内网穿透在公网环境下远程连接进行开发
  • 常用的 linux 命令
  • [论文阅读笔记28] 对比学习在多目标跟踪中的应用
  • Ubuntu 下播放语音提示