如何安全地保存 git 凭据?

问题描述 投票:0回答:1

我最近一直在寻找有关如何在 CentOS 7 中安全保存 git 凭据的解决方案。

我想保存多个 git 存储库的凭据。

我想出的解决方案是在任何版本的 git 上使用 gnome-keyring。但我遇到了一些问题。我发现很多帖子都说这在 Redhat 7Centos 7 中不是一个好的解决方案。并且它将被弃用。

git config --global credential.helper /usr/share/doc/git/contrib/credential/gnome-keyring/git-credential-gnome-keyrin  

但这对我不起作用,使用git时出错:

与 gnome-keyring-daemon 通信时出错

然后我升级了git最后一个版本2.11+使用libsecret,似乎更容易使用。

我也做过同样的事情。

git config --global credential.helper /usr/share/doc/git/contrib/credential/libsecret/git-credential-libsecret

这似乎按预期工作。我的问题是这是安全保存 git 凭据的好解决方案吗?你知道在 CentOS 机器上保存 git 凭据的任何其他解决方案吗?

git credentials
1个回答
8
投票

这是安全保存 git 凭据的好解决方案吗?

是的,正如我在“将 Git 凭据助手与

gnome-keyring
作为 Sudo 一起使用时出错”中所述。
libsecret
实现 XDG Secret Service API.

使用的是当前官方库。


更新 Git 2.15.x/2.16(2018 年第 1 季度),其中

libsecret
(在
contrib/
中)的凭证助手已得到改进,以允许可能提示最终用户解锁当前锁定的秘密(否则秘密可能无法加载)。

参见 Dennis Kaarsemaker (seveas)

commit 9c109e9(2017 年 11 月 3 日)。
(由 Junio C Hamano 合并 --
gitster
--
commit 906329f,2017 年 11 月 9 日)

credential-libsecret
:解开锁定的秘密

秘密服务 DBUS 接口暴露的凭据可能被锁定。
设置

SECRET_SEARCH_UNLOCK
标志将使秘密服务解锁这些秘密,可能会提示用户提供凭据。
没有这个标志,秘密就不会被加载。


温馨提示:

libgnome-keyring
是GNOME特有的,是:

  • 自 2014 年 1 月起弃用
  • 使用
  • Git 2.41(2023 年第二季度)完全删除
© www.soinside.com 2019 - 2024. All rights reserved.