背景
假设:
- 我在 GitLab 上有一个代码库,并已将其克隆到我的机器上。
- 我有一个 GitLab 令牌,可以让我推送和拉取该代码库。
- 这个令牌已经保存在我的 Bitwarden 密码库中。
- 借助 Bitwarden CLI 工具,我可以通过编程方式进行身份验证、锁定/解锁我的密码库。
问题
是否有方法能够通过编程方式将 Bitwarden 动态获取的 GitLab 令牌链接/管道连接到 git push 和 pull 命令中,以便对这些操作进行身份验证/授权?
调查
我听说过以下几种解决方案来解决此问题,但它们不符合我需要面对的安全规则:我不能以明文形式存储任何机密信息。
- GitLab 令牌可以放在 git 凭据 helper.store 文件中。这里 GitLab 令牌需要以明文形式存储在 store 文件中。
- git 远程 URL 可以修改以包含凭据。这里 GitLab 令牌需要以明文形式存储在 git 远程 URL 中。
注意事项
- 我不能使用 SSH 密钥,必须使用 HTTPS 协议。
- 我所针对的 git 版本是来自官方 Ubuntu 软件包(
2.17.1
,截止到撰写本文时)。
gitcredentials
文档中的自定义助手部分吗?那里似乎有你需要的一切。 - larsks2.17.1
,文档中没有CUSTOM HELPERS
部分与相同内容(对于2.13.7几乎为空)。您知道这是新引入的功能还是只是最近更新了文档? - Hadrien TOMAgit-credential-xxx
可执行文件仍然被视为自定义助手,即使在2.17版本中也是如此。 - VonC