V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
godleon
V2EX  ›  程序员

接口安全问题,请教针对非常轻量的项目的安全方案。

  •  
  •   godleon · 2023-05-29 16:29:11 +08:00 · 1823 次点击
    这是一个创建于 570 天前的主题,其中的信息可能已经有所发展或是发生改变。

    环境

     springboot 2+
     mysql 5.7
     vue 3
      公网云
    

    场景

     甲方要求在现在有项目内做一个数据统计图的功能;
     目前合作是他们提供前端源码,我们在里面开发前端页面;
     我们自己单独搭建一个后端来提供数据统计图功能的支撑,现在使用单机 springboot ,项目内主要是针对数据统计图出接口,api 接口 /3 个,socket 接口 /2 个;
    

    问题

     现在甲方要求提供针对数据统计图的接口安全方案;
     1.不能牵涉到甲方自己后台的逻辑,像 shiro,security 需要在登录时触发,这个还需要他们配合 不到万不得已不考虑;
     2.能否在我们自己的客户端和服务端内完成;
     3.尽量不集成过多的依赖,能使用 Java 原生解决优先;
    
    11 条回复    2023-05-29 23:39:42 +08:00
    xuanbg
        1
    xuanbg  
       2023-05-29 16:35:25 +08:00
    你可以拿我的网关改造一下。在我的 github 里面,自取不谢。
    imnpc
        2
    imnpc  
       2023-05-29 16:37:39 +08:00
    你们自己的前端后端 API 接口可以直接限制指定 IP socket 的只能数据加密解密了吧
    godleon
        3
    godleon  
    OP
       2023-05-29 16:41:46 +08:00
    @imnpc 给他们提限制 IP ,是不是不太友好 #555
    aapeli
        4
    aapeli  
       2023-05-29 16:54:44 +08:00
    买 waf 云厂商的 waf ,自建 waf
    sky857412
        5
    sky857412  
       2023-05-29 17:17:11 +08:00
    感觉他的意思就是返回数据加密吧,然后接口需要鉴权之类的吧
    ThreeK
        6
    ThreeK  
       2023-05-29 17:36:17 +08:00
    最简单粗暴的就的就是约定密钥,俩边对数据进行加解密
    wangxiaoaer
        7
    wangxiaoaer  
       2023-05-29 17:40:46 +08:00 via iPhone
    最简答的办法你的接口不要直接暴露给客户端,一律通过对方后台进行代理,你这边的后台只向原后台服务器 IP 开放。

    对方后台需要微调。
    cyningxu
        8
    cyningxu  
       2023-05-29 17:45:26 +08:00
    “能否在我们自己的客户端和服务端内完成” 是不是直接双端加密通信就行了?
    8355
        9
    8355  
       2023-05-29 18:10:43 +08:00
    最轻量级就是 https 加验签
    数据包整体加解密
    再加一层就是内网
    再加就是 ip 白名单

    上面提到的 waf 就是公网方案, 只不过误报非常多, 需要你加很多规则.并且需要大量测试
    lihang1329
        10
    lihang1329  
       2023-05-29 18:20:48 +08:00
    md5 (私钥+时间戳)
    Sanko
        11
    Sanko  
       2023-05-29 23:39:42 +08:00 via Android
    aksk
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3056 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 13:20 · PVG 21:20 · LAX 05:20 · JFK 08:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.