12

我收到了一封来自 GitHub 的电子邮件,内容是:

您最近使用 git/2.24.3 (Apple Git-128) 使用密码通过 git 访问 username/repo 处的存储库。使用 Git 密码的基本身份验证已被弃用,并且很快将不再有效。访问https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/了解有关建议的解决方法和删除日期的更多信息。

因此,对于推送到 GitHub 的 git 提交,我需要使用另一种标准命令行方法,这应该不是问题。

但我想知道这会影响部署密钥吗?例如,在已经运行了几个月或几年的自动化流程中——我们应该为变化做好准备吗?

我已经检查了博客文章,并注意到还有很多时间(弃用发生在 2021 年 8 月 13 日),但重要的是要了解对部署密钥的任何影响以便做好准备。

4

2 回答 2

14

不,部署密钥不受影响。唯一受影响的是使用密码通过 HTTPS 对 Git 或 Git LFS 进行身份验证。如果您通过 HTTPS 使用个人访问令牌或 OAuth 令牌,或者您完全使用 SSH(无论是使用个人密钥还是部署密钥),这些都不受影响。

进行此更改的原因是因为知道帐户密码可以让您登录该帐户、更改密码并配置几乎所有设置。另一方面,令牌不允许您通过 Web 界面登录,并且通常仅限于一组有限的范围,并且它是伪随机生成的。同样,SSH 密钥的访问也受到限制,不容易猜到。

因此,意外暴露您的身份验证凭据的后果会降低,并且您替换它的一组凭据不太可能从旧的暴露中猜到。

于 2020-12-18T01:51:31.147 回答
0

您可以从https://远程网址更改为git@网址(例如 ssh)

git remote -v # check that your remote (e.g. origin) is using https://
git remote rm origin
git remote add origin git@github.com:ORGANIZATION_OR_USER/REPO_NAME.git
git fetch --all
git branch -u origin/master master

然后你可以测试它:

git pull
git commit --allow-empty -m "nothing"
git push
于 2021-06-26T09:43:17.807 回答