全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 接口/总线/驱动 >

APP接口安全设计的要点

时间:2020-07-16 16:01

人气:

作者:admin

标签:  

导读:APP接口安全设计的要点-请求合法性校验主要就是指如何避免API被非法的调用,比如系统里面有一个短信接口,就要考虑如何避免这个短信接口不被短信轰炸机滥用。...

  请求合法性校验:

  请求合法性校验主要就是指如何避免API被非法的调用,比如系统里面有一个短信接口,就要考虑如何避免这个短信接口不被短信轰炸机滥用,可以采用的方式有以下几种:

  1.验证码,验证码主要用于防范恶意注册、恶意破解密码、恶意灌水等非法操作,验证码可以使用Google的CAPTCHA解决方案。

  2.Token令牌,Token主要用于自动登录,也就是在不需要用户频繁登录的情况下保证访问的合法性。常见的流程是使用用户名和密码登陆后,服务端返回一个token,后续客户端每次方法都带上这个token,当这个token超过一定的时间(token有效期)没有被使用,则要求客户端重新输入用户名和密码重新获取token,服务端也通过请求的IP地址等一些信息判断客户端的网络环境和设备环境是否发生变化,如果发生变化,也要求客户端重新输入用户名和密码,重新获取token。

  3.IP、MAC地址限制,只允许某一个MAC地址、IP或IP段的客户端进行访问请求,只能一定程度上起到防范作用。

  4.User-Agent和Referer限制,只能一定程度上起到防范作用。

  数据合法性校验:数据合法性的校验主要是为了避免异常数据和注入攻击。

  1.不依赖客户端的数据校验,不管客户端有没有进行数据校验,服务端都要做合法性校验。

  2.用白名单的方式验证数据合法性,也就是根据一系列已知的正确值或规则来验证请求数据,不尝试检验某些特定的错误。

  数据加密:数据加密主要是指对敏感数据进行加密,避免因网络传输过程中的窃听和抓包造成敏感数据泄露,常见方法主要由:

  1.使用HTTPS协议。

  2.对敏感数据采用秘钥进行加密和解密。

  接口错误处理:接口错误处理主要是值对接口的返回结果进行编码,制定统一的错误返回编码,避免因接口错误和异常等原因造成堆栈信息泄露。

  接口过载保护:接口过载保护是指对接口访问频率设置阈值,超出阈值后不予处理,直接返回错误码,可以一定程度上防止CC攻击,过载保护可以通过Web服务器进行控制,也可以通过代码进行控制。

  1.Nginx可以通过HttpLimitReqModul来限制单位时间内连接数的模块,使用limit_req_zone和limit_req指令配合使用来达到限制。一旦并发连接超过指定数量,就会返回503错误。HttpLimitConnModul用来限制单个ip的并发连接数,使用limit_zone和limit_conn指令这两个模块的区别前一个是对一段时间内的连接数限制,后者是对同一时刻的连接数限制。

  2.可以通过代码的方式来判断,最好基于Redis计数器或者服务端缓存,避免对性能造成影响。

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信