V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
timi
V2EX  ›  问与答

Java 程序 A 和 B 都部署在公网中,二者需要频率不高的通信,使用 REST 的话,安全机制一般怎么保证的

  •  
  •   timi · 2021-08-30 12:18:48 +08:00 · 1790 次点击
    这是一个创建于 1166 天前的主题,其中的信息可能已经有所发展或是发生改变。
    比如 A 生成一个 token, 手动同步到 B,B 请求 A 的时候带着 token,A 的网关进行校验这样的?
    12 条回复    2021-08-31 11:43:52 +08:00
    dzdh
        1
    dzdh  
       2021-08-30 12:22:08 +08:00
    证书+ip 白名单
    lshero
        2
    lshero  
       2021-08-30 12:24:55 +08:00
    简单对参数做个签名验证就行了
    dqzcwxb
        3
    dqzcwxb  
       2021-08-30 12:26:17 +08:00
    ip 白名单最安全最省事
    Rocketer
        4
    Rocketer  
       2021-08-30 12:31:41 +08:00 via iPhone
    各种支付的接入就是这么个场景啊,常用的方法是客户端(购物商城之类的)把要传输的数据按一定规则组成字符串,然后接上一段密文,再求 md5 作为签名一起传过去。服务端(支付宝、PayPal 之类的)用同样的算法检查签名是否正确,就知道是不是真正的客户端传过来的了。

    加密不用考虑,https 就行了。
    chinvo
        5
    chinvo  
       2021-08-30 13:37:17 +08:00 via iPhone
    最简单是做个 mtls
    Puteulanus
        6
    Puteulanus  
       2021-08-30 13:41:59 +08:00
    不是非要走公网 IP 访问的话,可以两边建个隧道之类的,像 wireguard 这种,以后方便也不用自己维护安全性
    Veneris
        7
    Veneris  
       2021-08-30 13:42:42 +08:00
    api 验签吧,可以扩展

    https://github.com/viticis/API-Signed
    yannxia
        8
    yannxia  
       2021-08-30 13:50:23 +08:00
    简单的不就是加个 Token,为了防止嗅探加个 Https 了事。
    XiLingHost
        9
    XiLingHost  
       2021-08-30 13:56:02 +08:00
    直接互相保存公钥,做客户端证书认证不就好了
    akira
        10
    akira  
       2021-08-30 14:05:58 +08:00
    签名 + ssl + ip 白名单
    hushao
        11
    hushao  
       2021-08-30 16:27:47 +08:00 via iPhone
    @akira 这个在理
    xilou31
        12
    xilou31  
       2021-08-31 11:43:52 +08:00
    https 加 ip 白名单就好了吧
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2825 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 02:19 · PVG 10:19 · LAX 18:19 · JFK 21:19
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.