我应该将自签名证书提交到源代码控制吗?

5
假设我们为每个客户生成自签名证书。它们在软件包/部署管道的某些部分中使用,并最终出现在客户的本地计算机上。它们用于连接到我们的 Web 服务。
我们应该将这些证书提交到源代码控制吗?该存储库是私有的,只能由同事访问。出于某种安全原因,我应该将其排除在外(即使仅限于在意外曝光或恶意活动的情况下限制访问)吗?
如果我们将它们排除在外,我们应该在每次软件包/部署管道中生成它们吗?还是将它们放入某个安全密钥库并检索它们?
1个回答

1
这是一种信任和暴露的情况。你相信那些可以访问存储库的人吗?请记住,大多数妥协都来自内部人员。
我的想法是:
  • 根本不要存储已部署的证书。为这些终端系统生成它们。用根证书签名。
  • 配置您的产品以信任由该根证书签名的连接。这样,如果您的根证书被攻击,您可以批量吊销证书,或者根据需要选择性地吊销端点证书,而无需吊销所有证书。
  • 您可以让您的产品使用任何公共标识符引用系统证书存储中的证书,但不要存储私钥。
  • 使私钥可用应该是最终部署步骤,可见性尽可能小。将其提供给两个或三个用户,并使用平台的证书管理机制将公共证书与私钥相关联。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接