如何避免通过开发者向Bitbucket推送凭证? [英] How to avoid credentials push to bitbucket via the developers?

查看:18
本文介绍了如何避免通过开发者向Bitbucket推送凭证?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们有一个应用程序,它使用JSON文件来定义数据库和其他API的连接字符串和凭据。理想情况下,这些凭据作为变量添加到Bitbucket repo中,并在Jenkins中的构建时替换。

开发人员在本地使用它们时会替换它们。

我们需要找到一种方法,以便他们不会将这些凭据错误地提交给Bitbucket。在提交之前,它们必须用各自的变量替换连接。 例如:

Connection_string:DATABASE_CONN_STRING,

此外,无法将这些文件添加到.gitignore,因为在提交到Bitbucket所需的开发过程中,文件中的键值有多处更改。 我们使用Jenkins作为CI/CD工具。

任何帮助都将获得评价。或者,如果有人可以指导我,那么这样做的更好流程是什么。

推荐答案

如上所述,任何敏感数据都需要放在保险库(外部秘密存储服务)中。这样,它们就不会被错误地添加/提交。

使用上述敏感数据的任何配置文件都需要:

  • 结账时自动生成
  • 不是版本(表示添加到.gitignore,如果是以前的版本,则从资源库中删除)
  • 版本化为模板文件(具有占位符值的文件,签出时将替换为密码值)。

此过程通过模糊内容过滤进程完成:
您将(在.gitattributes declaration中)注册content filter driver

(图片来自";Customizing Git - Git Attributes";,来自";Pro Git book";)

与配置文件关联的smudge脚本将(在git checkoutgit switch上自动生成)实际配置文件,方法是将模板中的占位符值替换为Vault中的占位符值。
生成的实际配置文件仍被忽略(由.gitignore)。

在";git smudge/clean filter between branches";查看完整示例。

这篇关于如何避免通过开发者向Bitbucket推送凭证?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆