V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
Zrehtt
V2EX  ›  程序员

生产环境数据库密码等私密信息怎么设置?

  •  
  •   Zrehtt · Jan 1, 2021 via iPhone · 4138 views
    This topic created in 1953 days ago, the information mentioned may be changed or developed.

    转行过来的,没有接触过这个,看入门教程都是直接在代码中写,但生产环境肯定不行。是写入配置文件里还是怎么操作的?

    20 replies    2021-01-02 22:29:12 +08:00
    loading
        1
    loading  
       Jan 1, 2021 via Android
    一般写配置文件,起码我看到很多产品都是。
    Jacky23333
        2
    Jacky23333  
       Jan 1, 2021 via Android   ❤️ 1
    有个配置中心 Server,项目启动会自动从配置中心加载数据库信息
    oott123
        3
    oott123  
       Jan 1, 2021 via Android
    配置文件 /环境变量 /分布式配置系统( etcd 之类的)
    ginjedoad
        4
    ginjedoad  
       Jan 1, 2021   ❤️ 1
    用 appolo 或者 etcd 建一个数据中心,你的项目初始化的时候读取一次配置中心的配置,加载到内存。设置一个回调事件,监听配置中心变动。有变动,马上更新全局配置值,perfect!
    wpblank
        5
    wpblank  
       Jan 1, 2021
    一般就写配置文件就好了,新手注意一下别把密码随代码传到公共的 git 上
    YouLMAO
        6
    YouLMAO  
       Jan 1, 2021 via Android
    我们用的 sql,nosql,newsql,全部都是 kerberos 验证,MySQL 是美国定制安全版的
    YouLMAO
        7
    YouLMAO  
       Jan 1, 2021 via Android
    都 2021 了,还用密码登录,就是侮辱先人了
    Zrehtt
        8
    Zrehtt  
    OP
       Jan 1, 2021 via iPhone
    @ginjedoad 了解了,非常感谢
    hantsy
        9
    hantsy  
       Jan 1, 2021
    Vault
    hantsy
        10
    hantsy  
       Jan 1, 2021
    大部分云环境都是支持 https://www.vaultproject.io/ 或者类型的产品。
    hantsy
        11
    hantsy  
       Jan 1, 2021
    所谓的数据堡垒,保险箱。
    yungo8
        12
    yungo8  
       Jan 1, 2021 via Android
    代码写和配置文件里写没啥本质区别,甚至代码写安全性更高,只是为了维护方便就用配置文件。
    为了通过第三方代码安全扫描,会加盐加密配置在配置文件,代码里解密使用
    makdon
        13
    makdon  
       Jan 1, 2021
    写配置文件。生产上网络隔离,外部访问生产集群只允许通过网关鉴权后访问 server 层机器,DB 不允许非白名单机器访问
    xuanbg
        14
    xuanbg  
       Jan 1, 2021
    既不写在代码里面,也不写在配置文件里面。正确的做法是保存在配置中心,由专职的运维人员管理和维护。
    danieladu
        15
    danieladu  
       Jan 1, 2021 via Android
    key vault
    boris93
        16
    boris93  
       Jan 1, 2021 via Android
    写在密钥库,搭配 CICD 工具在构建过程中注入
    比如 Concourse + Vault
    smilingsun
        17
    smilingsun  
       Jan 2, 2021
    @boris93 是把密码写到了 artifact 里面?
    xiaochong0302
        18
    xiaochong0302  
       Jan 2, 2021 via iPhone
    @yeqizhang 之前项目用 ansible 搞过,想想就蛋疼
    haosamax
        19
    haosamax  
       Jan 2, 2021 via iPhone
    配置中心
    boris93
        20
    boris93  
       Jan 2, 2021 via Android
    @smilingsun #17 我们用的是 AppEngine,所以最终状态下配置文件里还是占位符,运行时通过 AppEngine 的配置文件,用环境变量传进去
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   948 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 93ms · UTC 20:50 · PVG 04:50 · LAX 13:50 · JFK 16:50
    ♥ Do have faith in what you're doing.