我可以在没有任何凭据/访问令牌的情况下拉取私有 Git 存储库

I can pull private Git repositories without any credentials/access tokens

提问人:friendly_crab 提问时间:11/1/2023 最后编辑:Peter Mortensenfriendly_crab 更新时间:11/4/2023 访问量:72

问:

我的 VM 操作系统最近更新了,我的大部分数据都已迁移。重新安装了 Git 等。我仍然能够克隆/推送/拉取到我的私人 GitHub 存储库。但是,我没有重新输入我的凭据。

这让我感到困惑。过去,我使用私有访问令牌,因为我启用了 2FA。为了尝试理解这一点,我删除了所有私有访问令牌。我仍然能够克隆/拉动/推送。然后我更改了密码。我仍然能够克隆/拉动/推送。

我不确定为什么我能够这样做。我尝试在另一台计算机上拉取私有存储库,系统提示我输入凭据。因此,VM 上一定有一些东西包含我的一些凭据,但我不确定它们存储在哪里或如何存储。此外,鉴于我删除了我的访问令牌并更改了我的密码,我肯定不能再这样做了。

我在 ~/.gitconfig.git-credentials 中查看了我的 VM。我重命名了这些文件,但我仍然能够克隆。我唯一的想法是,其中一个旧存储库在本地包含我的凭据,并且 Git 以某种方式知道要获取它们。不过,为什么在我删除了所有访问令牌并更改了密码后,这些凭据仍然有效?

git 存储库 私有

评论


答:

0赞 friendly_crab 11/2/2023 #1

我问题的答案是:我为 Visual Studio Code OAuth 应用授权了 GitHub。我使用 Visual Studio Code 连接到 VM,因此我的凭据以这种方式存储。

在密码更改的情况下,OAuth 应用程序仍然获得授权有点奇怪,但我想 GitHub 并不将其视为强大的攻击媒介。