首页 > Windows开发 > 详细

保证API接口安全

时间:2020-11-25 22:51:38      阅读:31      评论:0      收藏:0      [点我收藏+]

APP、前后端分离、后端项目之间调用都涉及接口调用,传输的时候如何防止被抓包、偷窥、伪造、超时、重放

解决方案:

token授权认证,防止未授权用户获取数据
时间戳,防止超时重放
签名,防止数据篡改
HTTPS,防止数据明文传输

Token:

就是一个经过加密或签名的临时令牌,需要设置过期时间,每次请求都校验token

时间戳:

如果时间差大于一定时间(比如:1分钟),则认为该请求失效,防止超时重放

签名:

比如queryString、header、body,将它们按顺序拼接成一个字符串,然后使用秘钥签名,防止数据被篡改。如果传输不敏感信息,仅仅为了防篡改,可以使用签名

防重放:

每次请求生成一个唯一ID,存放到缓存中,如果下次再使用相同的ID请求就拒绝

HTTPS:

HTTP协议是以明文方式发送内容,因此不适合传输一些敏感信息
HTTPS在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为客户端和服务器之间的通信加密

场景:

APP

APP比较特殊,攻击者可以反编译源码,所以不可以在APP中存放秘钥,曾经见过有公司APP使用OAuth的Client Credential授权方式,将ClientID和ClientSecret存放在APP端,app启动时获取Token,肯定不安全
应该使用APP使用者的用户名密码登录获取Token

保证API接口安全

原文:https://www.cnblogs.com/fanfan-90/p/14038264.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!