前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >对外接口需要注意的事项

对外接口需要注意的事项

作者头像
执生
发布2020-12-01 10:18:26
4870
发布2020-12-01 10:18:26
举报
文章被收录于专栏:立权的博客

1.安全

  之前做的一个在校项目,没有用 https 之前是明文传输账号密码的,被校内安全检测部门责令整改......

  用了 https 也可能因为用户操作不慎,被中间人攻击,这时候就算是 账号密码被加密,但是加密用的公钥是攻击者的,私钥也在攻击者那里 所以也会被破解。

  需要和前端协商好加密的方式 和密钥,如果单纯只用 RSA 这种高消耗的非对称加密的话,性能可能吃不消,如果用户量一大的话,如果用对称加密的话,又要保证密钥交接的过程中不被偷取

  最后因为这个项目用户量不多,只有几百人,最后还是用 RSA 非对称加密了......

  公私钥写死,公钥写死在前端,后端。虽然有可能被暴力破解,但是可能性不大,另外 还有 https 加持,安全性应该还可以。

  如果要求性能的话,就要模拟 https 那样,先非对称,用非对称加密 传输 对称加密的密钥后,再用对称加密。

2.幂等性

  类似情景:用户发过来的订单请求包可能在网络的某个节点因为错误,拷贝了两份,这样的话就需要对这两份包而言,只会执行一次真正的业务操作。

       具体实现可以用 随机 Token 等 策略

3.防止暴力压测

  攻击者可能无法修改 数据包里的数据,也无法实时加密合成出合法的包,但是他可以用合法的包做为请求数据,压测服务器。

  这样的话,就要设置包的过期时间,免得同一个包长期有效,这样的话攻击者只用拿一个包就能疯狂压测服务

4.限流:

另一篇

5.调用方管理

  类似微信小程序的 接口,需要调用方提供 appid

  并且如果调用发有违法行为,就封禁此 appid

待补充。。。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-11-28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云服务器
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档