我最近一直在寻找有关如何在 CentOS 7 中安全保存 git 凭据的解决方案。
我想保存多个 git 存储库的凭据。
我想出的解决方案是在任何版本的 git 上使用 gnome-keyring。但我遇到了一些问题。我发现很多帖子都说这在 Redhat 7 或 Centos 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 凭据的好解决方案吗?
是的,正如我在“将 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 日)。
gitster
-- 在 commit 906329f,2017 年 11 月 9 日)
:解开锁定的秘密credential-libsecret
秘密服务 DBUS 接口暴露的凭据可能被锁定。
设置标志将使秘密服务解锁这些秘密,可能会提示用户提供凭据。SECRET_SEARCH_UNLOCK
没有这个标志,秘密就不会被加载。
温馨提示:
libgnome-keyring
是GNOME特有的,是: