【问题标题】:Does deprecation of basic password authentication affect GitHub deploy keys?弃用基本密码身份验证会影响 GitHub 部署密钥吗?
【发布时间】:2021-03-28 16:41:44
【问题描述】:

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

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

所以我需要使用another method 作为标准命令行,以便将 git 提交推送到 GitHub,这应该不是问题。

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

我检查了blog post,并注意到还有很多时间(弃用发生在 2021 年 8 月 13 日),但为了做好准备,了解对部署密钥的任何影响非常重要。

【问题讨论】:

    标签: github deploy-keys


    【解决方案1】:

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

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

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

    【讨论】:

      【解决方案2】:

      您可以将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
      

      【讨论】:

        猜你喜欢
        • 2017-06-21
        • 2015-12-08
        • 2019-01-29
        • 1970-01-01
        • 2013-02-15
        • 2019-07-22
        • 1970-01-01
        • 2018-04-26
        • 1970-01-01
        相关资源
        最近更新 更多