当前位置: 首页 > news >正文

Github 2FA(Two-Factor Authentication/两因素认证)

Github 2FA认证

多因素用户认证(Multi-Factor Authentication),基本上各个大互联网平台,尤其是云平台厂商(如:阿里云的MFA、华为云、腾讯云/QQ安全中心等)都有启用了,Github算是搞得比较晚些了。
双因素身份验证(Two-Factor Authentication)是多因素用户认证的一种、一种增强账户安全的方法。
传统的用户名和密码登录方式容易受到黑客的攻击,而通过2FA,用户需要在登录时提供两种不同类型的身份验证,通常是密码和手机验证或者密码和一次性验证码。这样,即使密码被泄露,黑客也无法轻易登录账户,保护用户的数据和财产安全。

对github有代码贡献的帐号要求进行2FA验证, 否则过期不能提交代码。

但是github手机短信验证不支持中国号码(未亲测),这里介绍2种网友推荐的方式:

totp应用
浏览器扩展
启用2FA之后,每次在不同设备上登录github都要输入验证码,【浏览器插件】可以生成验证码,但前提是需要先把【帐号】添加【扩展】中,【换设备登录】建议在【手机】上安装【totp应用】

2. 解决方案

2.1 方式1: TOTP应用

推荐Microsoft Authenticator(以小米手机为例,应用商店可搜索到)

其类似于【QQ安全中心】。
每次打开都会生成一个动态验证码,用此验证码进行登录,在国内的应用商店中可以下载到或者从google play中下载。

Step1 进入2FA认证主页。长这样:
在这里插入图片描述
或对应Github菜单路径:Github-Personal Center-Settings-Password and Authentication-(点击按钮: Enable Two-Factor Authentication)
在这里插入图片描述
从【Two-factor authentication】区域中选择 “Authenticator app”。

选择【Edit】,就会打开一个 页面显示 QR 码(二维码), 请勿关闭此页面。

打开手机【Microsoft Authenticator】应用,从右上角的【+】号添加帐户, (Google、Facebook 等) 选择其他帐户

然后,手机【Microsoft Authenticator】应用扫一扫github页面上的这个QR码

扫描完成之后,帐号就添加到Authenticator中了,下次打开切到github即可展示动态验证码。
在这里插入图片描述

还需将手机【Microsoft Authenticator】应用的动态码输入到github页面下方的输入框中

输完之后,将进入流程2的页面
在这里插入图片描述
该页面将提供【Recovery Code(恢复码)】,有很多个。github将要求你必须下载下来保存好,便于哪天万一手机设备不可用或丢失时,可通过【恢复码】充当备用(相对于手机认证器)第2认证因子。

在第一次启用2FA后会给你一串码,下载下来保存这串码,关于这种恢复码的解释如下:
Recovery codes can be used to access your account in the event you lose access to your device and cannot receive two-factor authentication codes.
如果是第1次启用2FA,可以查看微软的文档:Add non-Microsoft accounts to the Microsoft Authenticator app - Microsoft Support
在这里插入图片描述

此时,就算真正完成了2因素认证了!

方式2: 浏览器扩展

  • 开源免费的Authenticator: 2FA Client,支持多种浏览器。

  • 切到github的设置- 安全页面,展示一个二维码,然后点击扩展上的扫描按钮,用鼠标选中github的二维码,即可添加github帐号。

Github URL : https://github.com/Authenticator-Extension/Authenticator
Edge扩展:https://microsoftedge.microsoft.com/addons/detail/authenticator-2fa-client/ocglkepbibnalbgmbachknglpdipeoio

Google Extension:身份验证器 - Chrome 应用商店

在这里插入图片描述


http://www.mrgr.cn/news/99045.html

相关文章:

  • Linux驱动开发--阻塞、非阻塞I/O
  • 【面试向】点积与注意力机制,逐步编码理解自注意力机制
  • 如何对docker镜像存在的gosu安全漏洞进行修复——筑梦之路
  • 【笔记】网路安全管理-实操
  • 【OpenGL】OpenGL学习笔记-1:VS2019配置OpenGL开发环境
  • Workflow轻量级工作流引擎实现
  • c++ 类的语法1
  • velocity模板引擎
  • 外接键盘与笔记本命令键键位不同解决方案(MacOS)
  • PSN港服跳过生日找回密码(需要英语对话,需要注册的id)
  • CANFD技术在新能源汽车通信网络中的应用与可靠性分析
  • 使用ref和refs获取DOM元素和组件方法,使用$nextTick解决Vue异步更新的逻辑下无法获取DOM的问题
  • GIS开发笔记(6)结合osg及osgEarth实现半球形区域绘制
  • 论文阅读:2024 ICLR Workshop. A STRONGREJECT for Empty Jailbreaks
  • 数据结构实验7.2:二叉树的基本运算
  • 测风塔布局算法详解:基于宏观分区与微观定量选址的双阶段优化方法
  • 计算机视觉cv2入门之车牌号码识别
  • MLLMs for TSAD ?
  • 2025年最新版 Git和Github的绑定方法,以及通过Git提交文件至Github的具体流程(详细版)
  • Kubernetes控制平面组件:API Server详解(二)