如何在Firefox中为GitHub添加安全密钥解决Git认证失败问题
Git克隆GitHub私有仓库认证失败解决方案
报错核心原因
你碰到的报错不是账号密码输错,是GitHub从2021年8月13日开始,就彻底移除了HTTPS协议下Git操作的密码认证支持,所有HTTPS方式的拉取、推送代码操作,都不能再用账号登录密码做验证。
对应报错信息如下:
$ git clone https://github.com/jamesbond/secretmission Cloning into 'secretmission'... Username for 'https://github.com': kilojoules Password for 'https://kilojoules@github.com': remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead. remote: Please see the official announcement for more information. fatal: Authentication failed for 'https://github.com/jamesbond/secretmission/'
最快解决方法(不用折腾安全密钥)
按下面的步骤操作就能直接解决克隆问题:
- 登录GitHub网页端,点击右上角个人头像进入「Settings」页面,拉到页面最下方找到「Developer settings」入口,进入后选择「Personal access tokens」-「Tokens (classic)」,点击生成新的classic token
- 给token勾选对应权限:只做私有库拉取、代码推送的话,直接把
repo分类下的所有权限勾上即可,按需设置token的有效时长,确认生成后立刻把生成的token字符串复制保存好,页面刷新/关闭后就再也看不到这个值了 - 回到终端重新执行
git clone命令,提示输入Username时正常填写你的GitHub用户名,提示输入Password时,不要填原来的账号登录密码,直接把刚才复制的个人访问令牌粘贴进去回车,就能正常完成克隆 - 不想每次操作都重复输凭证的话,Mac设备可以在终端执行
git config --global credential.helper osxkeychain,系统会自动把凭证存在本地钥匙串里,后续Git操作会自动读取不用重复输入
其他相关问题说明
- 关于Firefox弹出安全密钥注册提示找不到操作入口:这个提示是WebAuthn硬件安全密钥(比如YubiKey这类实体硬件密钥)的注册流程触发的,如果你没有在设备上插入对应的实体硬件密钥,授权后系统搜不到对应设备自然不会出现后续操作入口。普通用户如果没有配备硬件安全密钥,完全不需要走这个配置流程,和你解决Git克隆认证问题没有关系
- 关于Firefox插件要求填写issuer和secret字段:这两个字段是TOTP动态两步验证的配置参数,只有你主动在GitHub账号内开启TOTP模式的两步验证时,平台才会生成对应的专属参数,你没开通对应服务自然拿不到这两个值,这个插件是用来做登录两步验证的,和Git操作的仓库认证无关,不用在这上面浪费时间
- 关于以太坊钱包作为认证方式:GitHub官方原生不支持以太坊钱包作为Git操作的身份认证凭证,你看到的相关界面是第三方插件提供的功能,不属于GitHub官方能力范围,稳定性和安全性都没有官方保障,不建议用这类方式配置仓库认证
相关操作界面参考:
内容的提问来源于stack exchange,提问作者kilojoules
相关产品推荐
相关产品推荐

