API接口安全策略小结
采用非对称加密方式与对称加密方式混合方案(RSA+AES)
- 前端通过RAS服务获取公钥后加密(AES秘钥),存放到header
- 前端同时AES加密请求参数后,请求到后端接口
- 后端收到请求后,获取Header数据,通过RSA服务获取私钥,解密AES秘钥
- 后端利用AES私钥,解密请求数据
- 后端处理逻辑数据
- 后端利用AES加密响应数据,并返回
- 前端收到响应,利用AES秘钥解密响应数据 注意:为了防止被窃取,每次请求应该刷新(AES秘钥) 一次,同理RSA公私钥也设置一定更新策略,这个具体是业务情况而定,比如2小时一次刷新,可以统一控制在RSA服务中
基于token机制
- 前端通过后端token服务接口获取token,存放到header
- 前端携带请求参数,请求到后端接口
- 后端收到请求,获取token,并验证token,验证成功,则继续处理业务逻辑 注意:token机制 一般用于幂等验证
基于网关机制
- 后端接口,通常会挂在网关上,生成客户端访问接口
- 前端通过访问网关接口,网关通过一系列验签,验token,限流等策略验证后,验证ok后,则把请求转发到对应的业务服务上,继续逻辑处理
openApi安全策略(IP白名单+个性化签名)
openApi由于是公网上访问,一般安全策略设置较为复杂,通常做法是IP白名单+个性化签名,不同公司,不同的API,通过签名方式大不同,一般都是个性化设计,较为私密,常见设计是,指定某几个特定参数,加上(时间戳),结合RSA+AES算法,组合为签名。