Git 在用于部署live的公共回购中隐藏凭据
在GitHub等公共repo中隐藏凭据(如API密钥或数据库凭据)的最佳实践是什么?我的解决方案是拥有一个存储凭据的配置文件,然后添加一个gitignore文件,以便在推送过程中不包含该配置文件 需要注意的是,每次推送都会使用此回购进行部署,例如Netlify或Heroku。因此,通过回购推动,Netlify/Heroku网站已上线。在这种情况下,如果存在API调用或数据库请求,则凭据需要位于公共repo中,因为这是“生产文件夹”Git 在用于部署live的公共回购中隐藏凭据,git,github,heroku,netlify,Git,Github,Heroku,Netlify,在GitHub等公共repo中隐藏凭据(如API密钥或数据库凭据)的最佳实践是什么?我的解决方案是拥有一个存储凭据的配置文件,然后添加一个gitignore文件,以便在推送过程中不包含该配置文件 需要注意的是,每次推送都会使用此回购进行部署,例如Netlify或Heroku。因此,通过回购推动,Netlify/Heroku网站已上线。在这种情况下,如果存在API调用或数据库请求,则凭据需要位于公共repo中,因为这是“生产文件夹” 我听说过Travis CI,它可以在GitHub推送后构建,但我
我听说过Travis CI,它可以在GitHub推送后构建,但我没有对它进行太多研究。从公共存储库部署时,其他项目如何使用其凭据?通常,人们向代码传递机密的方式是通过环境,这被认为是最佳做法。原因如下:
- 环境中的秘密永远不会写入磁盘,因此被发现或泄露的意外风险要小得多
- 环境中的秘密仅对具有相同用户ID的其他进程可见,这在部署到硬件时非常有用
secret
)供开发使用,或者您可以在开发和测试代码中提供一组回退。有些项目还使用.env
文件,尽管这需要一些人不想安装的附加代码
如果您拥有无法存储在秘密存储中的巨额凭证,您可以。使用Heroku,您可以使用。谢谢@bk2204!环境是有道理的,我听说过一些秘密,只是还没有研究过。我来看看这个