timi
V2EX  ›  问与答

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

  •  
  •   timi · Aug 30, 2021 · 2897 views
    This topic created in 1891 days ago, the information mentioned may be changed or developed.
    比如 A 生成一个 token, 手动同步到 B,B 请求 A 的时候带着 token,A 的网关进行校验这样的?
    12 replies  •  2021-08-31 11:43:52 +08:00
    dzdh
    dzdh
    Aug 30, 2021
    1
    证书+ip 白名单
    lshero
    lshero
    Aug 30, 2021
    2
    简单对参数做个签名验证就行了
    dqzcwxb
    dqzcwxb
    Aug 30, 2021
    3
    ip 白名单最安全最省事
    Rocketer
    Rocketer
    Aug 30, 2021 via iPhone
    4
    各种支付的接入就是这么个场景啊,常用的方法是客户端(购物商城之类的)把要传输的数据按一定规则组成字符串,然后接上一段密文,再求 md5 作为签名一起传过去。服务端(支付宝、PayPal 之类的)用同样的算法检查签名是否正确,就知道是不是真正的客户端传过来的了。

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

    https://github.com/viticis/API-Signed
    Yanickkk
    Yanickkk
    Aug 30, 2021
    8
    简单的不就是加个 Token,为了防止嗅探加个 Https 了事。
    KagurazakaNyaa
    KagurazakaNyaa
    Aug 30, 2021
    9
    直接互相保存公钥,做客户端证书认证不就好了
    akira
    akira
    Aug 30, 2021
    10
    签名 + ssl + ip 白名单
    hushao
    hushao
    Aug 30, 2021 via iPhone
    11
    @akira 这个在理
    xilou31
    xilou31
    Aug 31, 2021
    12
    https 加 ip 白名单就好了吧
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   5332 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 53ms · UTC 02:46 · PVG 10:46 · LAX 18:46 · JFK 21:46
    ♥ Do have faith in what you're doing.