V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
di94sh
V2EX  ›  分享发现

删库跑路新姿势

  •  
  •   di94sh · 2020-04-08 18:28:23 +08:00 · 3548 次点击
    这是一个创建于 1695 天前的主题,其中的信息可能已经有所发展或是发生改变。

    今天调研发现, 有一些应用注销用户功能的 验证请求 和 注销请求 是分开的.

    so:

    那天客户端不开心了, 找个地方插上一段 注销 调用, 等出了问题就说手滑了, 也追不了责, 完美删库跑路
    
    20 条回复    2020-04-16 15:35:37 +08:00
    TPOB
        1
    TPOB  
       2020-04-08 18:46:05 +08:00 via Android
    没懂,你说 logout 和 delete my account 的区别吗
    di94sh
        2
    di94sh  
    OP
       2020-04-08 18:50:19 +08:00
    @TPOB #1 delete my account 时需要 验证手机验证码什么的, 有些应用客户端先发一个请求去验证, 成功了再调用注销.
    eason1874
        3
    eason1874  
       2020-04-08 18:54:10 +08:00
    你真以为业务代码能注销用户账号?

    注销请求成功唯一的变化是数据库里用户状态字段被标记为“已注销”,其他内容不仅没删,动都不会动一下。
    di94sh
        4
    di94sh  
    OP
       2020-04-08 19:00:07 +08:00
    @eason1874 #3 人绑定的手机号, 微信号, 乱七八糟的东西总要给人解绑吧.
    eason1874
        5
    eason1874  
       2020-04-08 19:03:40 +08:00
    @di94sh #4 一般不会动任何内容,只是把账号封存起来了。业务操作时完全忽略注销状态的账号,对用户来说等于已经注销,但实际信息还在数据库里保存着,想恢复就是分分钟的事。
    di94sh
        6
    di94sh  
    OP
       2020-04-08 19:05:31 +08:00
    @eason1874 #5 不给人释放 手机号 微信号 那不是注销, 是封禁吧
    Godykc
        7
    Godykc  
       2020-04-08 19:08:13 +08:00 via iPhone
    还是真的有些公司真的是有物理删除记录的注销功能的,法务相关要求
    eason1874
        8
    eason1874  
       2020-04-08 19:08:25 +08:00
    @di94sh #6 业务操作时忽略已注销账号,对用户来说就是注销啊,用户还可以用手机号微信号重新注册,不是封禁。

    你就理解成把原先的账号信息备份了一份放在一边就行了,有良心的存一年几个月看实在用不着就删了,没良心的就存着等需要的时候拿出来用。
    registerrr
        9
    registerrr  
       2020-04-08 19:59:13 +08:00   ❤️ 2
    大家都是 soft delete,删库?不存在的。白高兴了吧😏😂
    orzorzorzorz
        10
    orzorzorzorz  
       2020-04-08 20:09:51 +08:00
    有调用就有日志,跑不了的。
    mokeyjay
        11
    mokeyjay  
       2020-04-08 20:17:18 +08:00
    你以为你删库了,实际上后端是 deleted_at = 2020.xx.xx
    justin2018
        12
    justin2018  
       2020-04-08 21:34:09 +08:00
    还是 sleep 大法好 time.sleep(100000000000000)
    wangxiaoaer
        13
    wangxiaoaer  
       2020-04-08 21:35:59 +08:00
    滴滴注销后的确把之前的一些信息解绑了,亲测。
    EminemW
        14
    EminemW  
       2020-04-08 21:40:38 +08:00
    注销不是真的删数据吧,只是解绑,数据打个 flag…
    mritd
        15
    mritd  
       2020-04-09 10:58:32 +08:00 via iPhone
    你这么说的,十有八九是 bug,首先多借口连续调用一般会有衔接 token,你没有 token 是无法直接调用到中间接口的; 其次,第二个注销借口肯定要第一次的验证码
    wupher
        16
    wupher  
       2020-04-09 11:31:18 +08:00
    一般不会做物理删除,主要是对于数据库来说,物理删除代价太高。所以,多数就是打个标识,更新一下更新时间。
    di94sh
        17
    di94sh  
    OP
       2020-04-09 11:55:25 +08:00
    @mritd #15 正解 .. 但是是不是 bug 就不知道了, 说不定人家故意那样设计的. 我抓包没看到有 token
    Reficul
        18
    Reficul  
       2020-04-09 14:01:38 +08:00
    @di94sh 还不写个脚本,ab 一波那个接口?
    W1angMh
        19
    W1angMh  
       2020-04-10 11:11:29 +08:00
    这个要看情况 就拿国内银行系统来说 客户销户以后数据信息什么的还是在的 最多改下状态 但是国外的银行 法律规定客户销户以后必须要马上删除掉客户在银行留下的所有信息
    rabbit
        20
    rabbit  
       2020-04-16 15:35:37 +08:00
    想多了 目前删除的都是软删除...打个标记而已......
    后台检索的时候 是默认忽略的....
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1836 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 16:29 · PVG 00:29 · LAX 08:29 · JFK 11:29
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.