系统接口安全设计

  1. 系统接口安全设计

接口运行环境为互联网环境,接口安全尤为重要,我们设计三个机制保障接口数据安全。

    1. 客户端授权机制

第三方单位需要向地环总站申请对接appKey客户端系统编码和授权码password(签名时使用),总站根据业务需要设置是否开启IP地址绑定,授权时间可以永久授权,可以选择时间段授权。服务端接收到请求后进行appKey验证,如果appKey不存在,说明请求无效。如果存在进步验证IP地址是否匹配。

    1. 时间戳超时机制

客户端每次请求都带上当前时间的时间戳timestamp,服务端接收到timestamp后跟当前时间进行比对,如果时间差大于一定时间( 比如2分钟 ),则认为该请求失效。时间戳超时机制是防御DOS攻击的有效手段,防止参数重复使用。

    1. API签名机制

将appKey + nonce + timestamp + password采用MD5算法签名,得到的数据就是本次请求的签名signature,服务端接收到请求后以同样的算法得到签名,并跟当前的签名进行比对,如果不一样,说明参数被更改过,直接返回错误标识。签名机制保证了数据不会被篡改。

1.4 接口参数校验

为了保证系统安全性,健壮性,参数校验必不可少,校验参数的合法性不能因为前端或者其他第三方调用因参数传的不对导致我们的系统报错甚至崩溃。一般都是在接口层面,对传入的参数进行校验,对于Controller接口参数校验,requestBody参数校验使用Bean Validation校验注解、方法级别的校验使用Validated校验注解。例如日期时间格式,数值范围等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值