加密贯穿始终:api中包含的数据必须是加密的。
测试点:对接口进行抓包处理,核心数据是必须加密的。需要跟研发人员确认加密算法不能是常用的加密算法。
流控:通过应用系统层面来防止黑客使用DDos攻击,导致应用系统长时间不能响应正常用户的访问请求。
测试点:使用压力测试工具(例如jemeter),某一时间段频繁调用接口,看是否符合流控方案,例如:
1.一秒钟同一个IP可以调用几次接口\请求多大带宽
2.调用失败后的响应信息
3.ip是否加入黑名单
认证:使用cookie、session、token、密钥等认证机制
测试点:
接口中携带错误的cookie 、session、token、密钥
接口中携带过期的cookie 、session、token、密钥
审计:通过对接口请求的日志记录,实现对非法请求的溯源
测试点:查看调用api后,调用信息是否被记录在日志中并且频繁调用是否在日志中记录准确。
授权:一般通过使用ACL访问控制(通过给不同用户访问权限实现)或使用rbac(基于用户、角色、权限关联关系实现)。
测试点:不同角色是否具备api的使用权限,例如普通用户不能使用管理员专用的API