git - 在私有(private) Git Repo 中存储 API key /连接字符串

标签 git security github

我正在做一个单独的项目,并将我的连接字符串和几个 API key 添加到私有(private) github 存储库中。

我认为它是私有(private)的,所以它一定是安全的,但我不知道这是否是好的做法?最近,我创建了环境变量并将配置保存在我的本地电脑上。但是,它仍然存在于 Git 历史中。

我应该费心删除它还是我只是偏执狂?

最佳答案

确保您没有将 key 存储在源代码中是有意义的。您是否偏执完全取决于您。与所有安全问题一样,它归结为一个风险问题,您可以通过某人获取您的 key 的可能性以及某人获取您的 key 的影响来衡量风险。

首先看一下可能性,这需要您与某人共享存储库。鉴于它本质上是一个私有(private) GitHub 存储库,您正在寻找三个选项: 1.你是合作者 2.你公开 repo 3. 你转移了 repo 的所有权

现在考虑影响,键有什么用?有权访问 key 的人可以做什么?这对您来说是经济损失吗,即他们可以像您一样查询收费服务。或者数据丢失,他们可以从服务中获取属于您的信息?

在考虑了您需要决定的可能性和影响后,您是否接受?对于大多数人来说,如果可能性很低且影响很小,那么他们就会接受它。如果可能性很高并且影响很大,那么他们就不会接受。归结为个人选择的灰色区域是中间地带。

如您所见,我们(StackOverflow 社区)无法告诉您您是偏执狂还是遇到了真正的问题。不过,我希望以上信息能帮助您自己做出明智的决定。

如果您确实决定应该对此做些什么,您有两个选择:

  1. 为您的存储库重写 git 历史记录。通过重写 git 历史记录,您可以从存储库的历史记录中删除 API key ,而不会丢失项目中其他可能有用的历史记录。

这意味着有人从您的 git 历史记录中获取 key 的可能性会急剧下降。

  1. 更改 API key 。大多数服务都会提供一些重新生成 key 的方法。如果没有,您可以联系服务支持并告诉他们您的 key 有被泄露的风险,然后他们应该为您更改。

这意味着某人获得 key 的影响几乎为零。

关于git - 在私有(private) Git Repo 中存储 API key /连接字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59557629/

相关文章:

c# - merge 时 TortoiseGit/Winforms : Resolving Resource. resx

c# - Java 加密 C# 解密

github - 如何通过 GitHub API 获取 Dependabot 警报列表?

iphone - 如何在 iPhone 上存储信用卡信息?

git - 我可以在 git 中将一个子文件夹从一个分支 merge/同步到另一个分支的根目录吗?

Javascript裁剪插件: Darkroom

git - 用什么方式和git merge ?

java - 模块化 Maven 项目和多个 Git 存储库

macos - 如何使用 SSH 将 IntelliJ 连接到 GitHub

bash - 如果物理机死机,Docker rm 不会删除我的容器