数据库密码,审计要求,要定期更改,程序怎么可以适应? - V2EX
请不要在回答技术问题时复制粘贴 AI 生成的内容
czwen1993

数据库密码,审计要求,要定期更改,程序怎么可以适应?

  •  
  •   czwen1993 Sep 10, 2020 4247 views
    This topic created in 2074 days ago, the information mentioned may be changed or developed.
    框架:
    Spring Boot,alibaba druid

    期望效果:
    用户改完数据库密码,程序不用改配置,最好也不用重新启动

    思路:
    1. 使用 nacos,但增加工作量,,(不赚钱的项目,,)
    2. 数据配置文件使用远程文件,用户改完密码,顺手改一下配置文件,顺手重新启动一下?
    3. 传统做法

    请教还有什么好的做法吗?
    Supplement 1    Sep 10, 2020
    总结一下,做这事配置中心靠谱
    18 replies    2020-09-11 17:19:20 +08:00
    passerbytiny
        1
    passerbytiny  
       Sep 10, 2020 via Android
    如果要求 100 %数据完整性,除了重启或临时下线,别无它法。数据库是最底层的东西,想做热重载不是一般的难。
    passerbytiny
        2
    passerbytiny  
       Sep 10, 2020 via Android
    补充一下,是无缝热重载不好做,不重启但是数据库下线再上线(期间所有与数据库相关的功能,要么等待新事务开启,要么超时,要么回滚)还是很好做的。
    passerbytiny
        3
    passerbytiny  
       Sep 10, 2020 via Android
    不赚钱的项目,就弄个脚本让改密码的人在改密码后手动执行一下吧。

    spring 体系中要想刷新配置,需要上 spring cloud config,管理起来还是很麻烦的。
    limuyan44
        4
    limuyan44  
       Sep 10, 2020
    通常遇到这种什么不想做的但是什么都想要的,我都会拿起 shell 一把梭,整个定时半夜 12 点改密码写配置起服务。
    itskingname
        5
    itskingname  
       Sep 10, 2020   1
    这个时候就显示出 sprint boot 的不灵活了。

    我用 Apollo 做配置中间。用 fastapi 做后端。发现配置改了,可以直接动态修改连接对象。
    justfindu
        6
    justfindu  
       Sep 10, 2020
    你给他一个操作接口, 接口内进行 shell 操作并进行应用数据库密码更改... 是不是有些危险.
    smallfish1990
        7
    smallfish1990  
       Sep 10, 2020   2
    讲一个上家公司的方案:

    ( 1 )数据库做 2 套账户,错开定期修改;
    ( 2 )应用层走负载,一套一套修改,用户无感
    ( 3 )改密、负载切换都是走 devops 的,现场运维对密码都不可知
    594duck
        8
    594duck  
       Sep 10, 2020
    @itskingname 老哥这个回答靠谱的,走配置中心是最方便的。


    另外,如果是半年一次的话其实可以走 maintenance time 的。哪怕是 Google SRE 都推荐要做做重启动作来熟悉感觉。
    bk201
        9
    bk201  
       Sep 10, 2020
    配置中心?
    zlowly
        10
    zlowly  
       Sep 10, 2020
    肯花钱的话,有专门商业化的账号安全管理系统可以干这些事情。
    wangdashuai
        11
    wangdashuai  
       Sep 10, 2020
    可以在 mysql 和应用中间加一层,屏蔽密码认证。
    iColdCat
        12
    iColdCat  
       Sep 10, 2020   1
    不知道 xxl conf 能不能解
    buaacss
        13
    buaacss  
       Sep 10, 2020 via iPhone   1
    两套账号,要改密的时候,ops 生成新密码,创建 temp 账号,同时更新 k8s 里的 temp secret,重新部署后使用临时密钥,改之前的线上密钥,再更新 online secret 最后再部署一次,删除临时 secret,开发都不知道这玩意儿换过了。ansible 改环境变量也差不多
    czwen1993
        14
    czwen1993  
    OP
       Sep 10, 2020
    @buaacss 还没到这么高级的阶段
    czwen1993
        15
    czwen1993  
    OP
       Sep 10, 2020
    @zlowly 不肯。。哈哈哈哈
    czwen1993
        16
    czwen1993  
    OP
       Sep 10, 2020
    @justfindu 这,,客户有这个想法
    intmax2147483647
        17
    intmax2147483647  
       Sep 11, 2020
    好愚蠢的要求
    LemonCoo1
        18
    LemonCoo1  
       Sep 11, 2020
    https://blog.csdn.net/jackson_hou03/article/details/106408666
    可以集成配置中心,比如 nacos apollo 等,自己实现刷新数据源。
    About     Help     Advertise     Blog     API     FAQ     Solana     1025 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 51ms UTC 23:07 PVG 07:07 LAX 16:07 JFK 19:07
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86