php接口安全的三个机制

1、Token授权机制,用户使用用户名密码登录后,服务器将Token返回给客户端。

2、时间戳超时机制,用户每次请求都会带上当前时间戳timestamp。

服务器收到timestamp后,与当前时间进行比较,如果时间差大于一定时间(例如5分钟),则认为请求无效。时间戳超时机制是防御DOS攻击的有效手段。

3、签名机制。

在Token和时间戳中加入其他请求参数,然后用MD5或SHA-1算法加密。

实例

/**
*@desc接受参数处理
*/
privatefunctiondealParam(){
//接受header参数--系统参数
$systemParam=getAllHeadersParam();
//接受body数据--业务参数(json格式)
$data=file_get_contents('php://input');

//读取配置文件中的私钥信息
$api_apiKey=C('api_apiKey');
$privatekey=$api_apiKey[$systemParam['token']];


$arr['token']=$systemParam['token'];//服务端分配的标识(不同客户端需使用不同的标识)
$arr['timestamp']=$systemParam['timestamp'];//时间戳,UTC时间,以北京时间东八区(+8)为准
$arr['version']=$systemParam['version'];//版本号
$arr['sign']=$systemParam['sign'];//签名
$arr['source']=$systemParam['source'];//来源(0-安卓/1-IOS/2-H5/3-PC/4-php/5-java)
$arr['data']=json_decode($data,true);//业务参数json格式
$arr['method']=$data['method'];//访问接口,格式:模型名.方法名

return$arr;
}
原文来自:https://www.py.cn
© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容