在企业环境中使用 x509 证书签署 git commit

sil*_*ter 5 git configuration certificate x509

我从文档中了解到可以对 git 标签和提交进行签名。

git config --global user.signingkey 0A46826A

文档:https : //git-scm.com/book/en/v2/Git-Tools-Signing-Your-Work

这适用于 GPG。有人用 X509 用户证书做过这样的事情吗?

看起来 GPG 与 x509 pki 证书不兼容或不可互换。由于这是在企业环境中,GPG 不是一个选项。

如果有人可以分享如何使用 x509 证书来实现这一点的想法或经验,那就太好了?需要什么以及实现这样的东西需要什么?

dco*_*les 7

GitHub 提供了一些有关指定签名密钥的有用说明,包括如何smimesign在 Windows 和 Mac 上使用 X.509 证书进行签名。

对于 Git 版本 2.19 及更高版本

$ git config --global gpg.x509.program smimesign
$ git config --global gpg.format x509
Run Code Online (Sandbox Code Playgroud)

对于 Git 版本 2.18 及更早版本

$ git config --global gpg.program smimesign
Run Code Online (Sandbox Code Playgroud)

在 Linux 上你可以使用gpgme。添加您的证书gpgme --import cert.p12。您可能还需要导入根证书和任何中间证书,然后gpgme才能让您签署任何内容。