首页 > 解决方案 > 如果员工离开公司并删除了 Github 上的 GPG 密钥,如何保持签名提交的验证?

问题描述

该组织使用 GPG 密钥签署提交。每个员工都有自己的签名,验证签名的密钥已经添加到用户的 github 账户中。如果员工从帐户中删除了他的 GPG 密钥,他之前所做的所有提交都将变得未经验证。问题是 - 组织如何确保没有员工从其 GPG 帐户中删除密钥?或者应该怎么做才能让他删除它,但是之前做出和认可的提交并没有失去验证状态?对于组织离职程序的情况,这个问题更为实际。

标签: gitsecuritygithubgnupgaccount

解决方案


没有办法阻止用户像这样添加或删除公钥,因为他们控制着自己的帐户。如果他们删除了密钥,那么 GitHub 将不再将它们列为已验证。

git verify-commit但是,已提交的提交将保持签名,并且可以使用(或者,对于标签,git verify-tag)从命令行进行验证。如果您有一个受信任的密钥数据库,您甚至可以使用git verify-commit --raw并验证该密钥是否适用于 GnuPG 输出中的预期用户。

如果您需要通过 GitHub 为您的组织签名提交,那么无论它们是否被列为已验证,您都会知道它们在合并到分支之前已经被有效签名,因此状态不会那么重要。


推荐阅读