App端与服务器之间的安全策略

2020年10月19日09:31:18 发表评论

阿里云服务器:[活动地址]

购买可领取:[阿里云2000元代金券]

一:https保证通道安全
二:下发token保证无登录的用户不能随意调用服务
三:token有过期时间,保证服务不被长期木马攻击
四:对于支付等安全功能,需要另外增加支付密码校验和短信验证
五:应用层内做自己的安全协议(对称、非对称、打包证书等等)
移动app通过post请求调用服务器的api接口,为了确保服务器的数据安全和通讯安全,防止数据篡改等恶意攻击,本人通过查询资料和思考,总结出了一个方案,个人认为能解决

基本的接口调用安全问题,具体方案如下。
首先,移动端通过访问公开接口与服务器通讯,使用用户名和密码(当然是MD5加密)作为参数向服务器申请TOKEN,服务器获取用户名和密码,服务器端判断该用户是否法,如果合法,服务端为移动APP应用分配APPID (32位随机字串)以及TOKEN(32位随机字串)同时服务器保存APPID和TOKEN,当然根据应用的不同,服务器可以为该TOKEN(建立有效期如3600s)后台就要建立触发器或者自动作业销毁token。 移动端收到APPID和TOKEN进行存储,同时返回给用户与服务器建立连接成功等提示信息。之后,移动端请求其他功能接口,接口参数中要增加APPID和TOKEN,其接口格式如下:method(APPID, Token,…其他参数),服务器首先验证token是否有效,进行数据服务完成之后如果token为临时有效,应重新修改有效期时间起点为调用时刻。
最后,APP一直没有访问服务端,如token永久有效,则没有后续操作,若token为临时有效,token过了有效期,验证无法通过则通知用户访问相应接口,重新获取验证token。该方案其实是两步验证,其实对于一般应用,在用户注册的时候,可以同时为用户生成永久验证Token,用户在使用APP进行调用服务端API的时候,将该Token配置到系统中,这样就可以防止恶意用户直接通过访问post请求对服务端的数据造成安全隐患。

阿里云服务器:[活动地址]

购买可领取:[阿里云2000元代金券]

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin
阿里云最新代金券免费领取

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: