• home > tools > versionControl > git >

    GitHub不再支持密码验证解决方案:SSH免密与Token登录配置

    Author:zhoulujun Date:

    GitHub在本地可以用用户密码校验,也可以是person token校验,还可以用ssh。但是Support for password authentication was removed on August 13, 2021 Please use a personal access token instead 个人推荐还是SSH 免登方式使用较好

    今天提交代码,push到GitHub上,突然出现这个问题。

    remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.

    remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information.

    fatal: unable to access 'https://github.com/zhoulujun/algorithm.git/': The requested URL returned error: 403

    官方的解释:https://github.blog/changelog/2021-08-12-git-password-authentication-is-shutting-down/

    As previously announced, starting on August 13, 2021, at 09:00 PST, we will no longer accept account passwords when authenticating Git operations on GitHub.com. Instead, token-based authentication (for example, personal access, OAuth, SSH Key, or GitHub App installation token) will be required for all authenticated Git operations.

    Please refer to this blog post for instructions on what you need to do to continue using git operations securely.

    Removal

    • August 13, 2021, at 09:00 PST

    大致意思是,密码验证于2021年8月13日不再支持,也就是今天intellij不能再用密码方式去提交代码。请用使用 personal access token 替代。

    这个去年年底就说了,https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/

    In July 2020, we announced our intent to require the use of token-based authentication (for example, a personal access, OAuth, or GitHub App installation token) for all authenticated Git operations. Beginning August 13, 2021, we will no longer accept account passwords when authenticating Git operations on GitHub.com.

    自己鼓捣了一遍 Token,烦人的很。还是觉得直接ssh 的方式操作git就好(之前是ssh的源,也没有这个问题)。

    github配置SSH免密登录

    这里讲的是Mac OS 操作。windows可以借鉴 

    查看ssh目录

    ls -al ~/.ssh

    Mac OS目录~/.ssh,windows目录是:  Users/uestc/.ssh/id_rsa

     -如果有配过,会列出:

    •  id_rsa (私钥)——这个不能泄露

    •  id_rsa.pub(公钥)

     -如果没有配过,那么就进入第二步

    新建一个新的SSH KEY

    ssh-keygen -t rsa -b 4096 -C "[email protected]"

    接着会提示这个公钥私钥的保存路径-建议直接回车就好(默认目录里)

    接着提示输入私钥密码passphrase - 如果不想使用私钥登录的话,私钥密码为空,直接回车

    生成成功后,把  id_rsa.pub 拷贝到 github  新建的 SSH keys 中

    WX20210814-184938@2x.png

    配置好好,记住,你项目得使用 SSH clone

    WX20210814-185202@2x.png

    如果本地是https 源,那么就修改git 仓库地址

    git修改远程仓库地址

    方法有三种:

    1. 1.修改命令

      • git remote origin set-url [url]

    2. 先删后加

      • git remote rm origin

      • git remote add origin [url]

    3. 直接修改config文件

      • git文件夹,找到config,编辑,把就的项目地址替换成新的。

    顺手安利下 《git宝典—应付日常工作使用足够的指北手册

    关于github 建议让换 Token的形势,操作如下

    GitHub token 

    打开自己的GitHub主页,点击自己的头像找到Settings并进入,在左边目录栏找到Personal access tokens,点击Generate new token,按照步骤申请即可,过程简单。Scopes(范围)那里建议全选。

    Token申请成功后,将Token复制到Token一栏中

    操作路径:

    GitHub个人账户设置GitHub开发者中心

    生成新的token就好。权限我是全部勾选上的。

    GitHub个人权限token设置

    Intellij IDEA 上Github账号校验

    配置Git路径

    打开Settings(File-->Settings) --> 在搜索栏内输入git,回车跳转到Git配置页面 --> 将git的运行路径填入Path to Git executable一栏(一般IDEA会自动定位)

    配置GitHub账户密码

    第一种方法可以选择使用帐号密码认证(Password)

    intellij GitHub配置

    之前的老板是这样的

    intellij 配置GitHub账户密码

    在Login一栏填入你GitHub的用户名 --> Password那栏填入你GitHub的登录密码 

    现在新版本的,点击密码登录,会自动跳转到登录验证页面,在验证页面点击确定(我的密码是chrome记住的)。就自动登录

    WX20210814-175230@2x.jpg


    选择log width token,填入token就好



    参考文章:

    github配置SSH免密登录 https://blog.csdn.net/qq_38163309/article/details/105335097

    GIT免密登录神器 SSH KEY配置详解 https://blog.csdn.net/w15321271041/article/details/80535135

    Intellij IDEA 使用GitHub+Git https://www.cnblogs.com/yysbolg/p/8566389.html

    Intellij IDEA 协同 Git 与 GitHub 进行开发使用 https://www.jianshu.com/p/ea1703adf5cc

    Github 生成token的方法 — IDEA 拉代码或push失败需要从新校验Token https://blog.csdn.net/SR02020/article/details/106882205

    Intellij IDEA 协同 Git 与 GitHub 进行开发使用 https://www.jianshu.com/p/ea1703adf5cc






    转载本站文章《GitHub不再支持密码验证解决方案:SSH免密与Token登录配置》,
    请注明出处:https://www.zhoulujun.cn/html/tools/VCS/git/8658.html