【问题标题】:How to correctly use GitHub's authentication token?如何正确使用 GitHub 的认证令牌?
【发布时间】:2020-12-19 12:01:15
【问题描述】:

当我使用 bash 终端推送到我的存储库时,GitHub 给我发了一封电子邮件:

[GitHub] 弃用通知
你好,

您最近使用密码访问存储库,网址为 与 git 一起使用 git/。

使用 Git 密码的基本身份验证已被弃用,并将 很快就不再工作了。访问 https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ 有关建议的解决方法和删除日期的更多信息。

感谢 GitHub 团队

所以我尝试弄清楚如何使用身份验证令牌,但 thisthisthis 页面并没有真正帮助。

一旦我生成了一个类似于ff35995a9624470a855520c573972d2f1812843 的令牌,我知道我应该能够执行git push --all,然后输入我的用户名并输入令牌以进行身份​​验证。
但这意味着我需要将此令牌以纯文本或某些密码管理器的形式存储。这似乎是错误的。还是我对整个过程的理解有问题?

如何安全地使用此令牌而不是密码?我记得SourceTree 有一些我认为是存储此类令牌的规定,但是如何通过 Linux 终端安全地进行存储呢?

【问题讨论】:

  • 我真的对这个问题感到困惑,因为我成功地使用了 ssh -T 并连接,并且在 Ubuntu 20.04 上它告诉我“你已经成功验证,但 GitHub 不提供 shell 访问。”但这就是文档告诉我如何连接的方式。如果我尝试使用用户名和密码登录,它会警告我将来不允许这样做。通过 git 进行控制台访问会不会从 github 上消失?
  • 我终于弄清楚了如何使用 PAT 继续前进的确切步骤,并将其写在:stackoverflow.com/questions/18935539/…

标签: authentication github


【解决方案1】:

实际上,您的密码被“个人访问令牌”取代,这只是另一种密码。如何生成它的说明是here。它是完全随机的,所以不可能记住。凉爽的。将其代替您的密码保存在密码管理器中,以便您在必要时使用它,或者有其他解决方案,例如缓存。

查看this help page 的底部,您会看到它的使用方式与密码和原始用户名的使用方式完全相同。还有you might need to switch your repository from ssh to html

更多stackoverflow答案在这里Authenticate with GitHub using a token

【讨论】:

  • 请在这里给出更详细的说明。随着时间的推移,链接可能会变成 404,但您的基本说明将永远保留在这里。
【解决方案2】:

根据GitHub community的回复:
使用密码管理器将是首选解决方案。您可以查看 git-credential-cache 这样您就不必为每次推送输入令牌(来自密码管理器)。将 SSH 与加密密钥和 ssh-agent 一起使用具有类似的效果。

【讨论】:

    猜你喜欢
    • 2020-10-07
    • 2018-11-12
    • 1970-01-01
    • 1970-01-01
    • 2020-04-10
    • 2019-12-11
    • 1970-01-01
    • 2020-04-22
    • 2017-10-17
    相关资源
    最近更新 更多