InfoQ Geekathon 大模型技术应用创新大赛 了解详情
写点什么

GitHub 新规:Git 操作的身份验证将放弃密码,改用令牌或 SSH 密钥

  • 2020-12-17
  • 本文字数:1717 字

    阅读完需:约 6 分钟

GitHub新规:Git操作的身份验证将放弃密码,改用令牌或SSH密钥

12 月 15 日,GitHub 在官方博客宣布:从 2021 年 8 月 13 日开始,在 GitHub.com 上执行 Git 操作时,不再接受以账户密码的形式完成身份验证。


换言之,如果此后,开发者再使用密码去完成身份验证,那将无法通过,也就不能进一步执行 Git 操作。


据悉,在今年 7 月,GitHub 宣布将在所有需要身份验证的 Git 操作中使用基于令牌的验证机制,比如个人访问、OAuth 或者 GitHub App 安装令牌。


哪些工作流受到影响?


  • 命令行 Git 访问

  • 使用 Git 的桌面应用程序(GitHub Desktop 不受影响)

  • 使用您的密码直接访问 GitHub.com 上各 Git repo 的一切应用程序/服务


以下客户不受此项变更的影响:


  • 如果您为账户启用了双因素身份验证(2FA),则代表已经在使用基于令牌或 SSH 的方式进行身份验证。

  • 如果您使用 GitHub Enterprise Server,此本地产品尚未就身份验证做出更改。

  • 如果您已经拥有GitHub App,其之前就已经不支持密码验证方式。


变更背景


上周,Github 发布了 2020 年度开发者报告。报告显示,自 2008 年推出以来,GitHub 已经成为互联网上最大的项目管理和开源协作平台,到今年为止,社区已经拥有 5600 万开发者,去年这个数据是 4000 万。假设保持这样的增长速率,GitHub 用户预计将在 2025 年达到一个亿。2020 年,开发人员共创建了 6000 万个新 repo 库,相比去年增加了 35%。


毫无疑问,随着 GitHub 规模和社区影响力的不断变大,安全变得越来越重要。为此,GitHub 推出了一系列安全增强功能,来帮助用户提升安全水平,比如双因素身份验证、登录警报、认证设备、防止使用已泄露的密码以及支持 WebAuth 等等。在这些功能的支持下,攻击者将更难于获得已经被用于多个网站的重复密码,无法单纯借此完成密码撞库。


但是,出于一些历史原因,未启用双因素身份验证的客户仍能够单纯使用 GitHub 用户名及密码以验证 Git 及 API 操作。


在 2021 年 8 月 13 日之后,当针对 Git 操作进行身份验证时,GitHub 将不再接受纯账户加密码形式,即强制要求您使用基于令牌的认证机制。


GitHub 表示:


您可以使用个人访问令牌(对于开发人员)、OAuth 或者 GitHub App 安装令牌(对于集成商)在 GitHub.com 上完成一切需要身份验证的 Git 操作。当然,您也可以继续使用 SSH 密钥。


据悉,与基于密码的传统身份验证机制相比,令牌保护具有以下安全优势:


  • 唯一——令牌将权限于 GitHub 使用,可按使用次数或按设备生成。

  • 可撤销——令牌可以随时被单独撤销,且无需更新未受影响的其他凭证。

  • 受限——令牌的使用范围可以得到严重控制,例如仅允许执行用例中需要的访问活动。

  • 随机——令牌的复杂度远高于您需要硬性记忆并定期输入的简单密码,因此不受字典或暴力破解等行为的影响。


开发者当下需要做些什么?


  • 对于开发者们,如果您正在使用密码以通过 GitHub.com 验证 Git 操作,则必须在 2021 年 8 月 13 日之前开始通过 HTTPS(推荐)或 SSH 密钥使用个人访问令牌,以避免业务受到影响。如果收到警告,则代表您正在使用已经过时的第三方集成,请尽快将客户端更新为最新版本。

  • 对于集成商,您必须在 2021 年 8 月 13 日之前使用 Web 或设备授权流程对集成方案进行身份验证,以避免业务受到影响。关于更多详细信息,请参阅授权OAuth应用以及开发者博客上的相关公告


启用双因素身份验证


要确保您的账户不允许基于密码的身份验证,请立即为账户启用双因素身份验证机制。具体来讲,您需要通过 Git 及第三方集成将个人访问令牌应用于一切经过身份验证的操作。


两轮预演


为了确保所有受到影响的客户都明确知晓本次验证机制变更,我们计划通过两轮预演暂停对密码认证的支持,届时用户将无法使用密码执行 Git 操作。预演活动计划于以下日期及时段内进行:


2021 年 6 月 30 日


  • 7:00 AM UTC – 10:00 AM UTC

  • 4:00 PM UTC – 7:00 PM UTC


2021 年 7 月 28 日


  • 7:00 AM UTC – 10:00 AM UTC

  • 4:00 PM UTC – 7:00 PM UTC


时间表


  • 今天——如果您目前正在使用密码通过 GitHub.com 对 Git 操作进行身份验证,则将很快收到一封电子邮件,敦促您更新身份验证方法或第三方客户端。

  • 2021 年 6 月 30 日及 7 月 28 日——所有 Git 操作都将暂时性要求使用令牌(或 SSH 密钥)验证,以鼓励受到影响的客户及时更新其身份验证方法。

  • 2021 年 8 月 13 日——全部 Git 操作都需要使用令牌(或 SSH 密钥)完成身份验证。


参考文章:


https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/


活动推荐:

2023年9月3-5日,「QCon全球软件开发大会·北京站」 将在北京•富力万丽酒店举办。此次大会以「启航·AIGC软件工程变革」为主题,策划了大前端融合提效、大模型应用落地、面向 AI 的存储、AIGC 浪潮下的研发效能提升、LLMOps、异构算力、微服务架构治理、业务安全技术、构建未来软件的编程语言、FinOps 等近30个精彩专题。咨询购票可联系票务经理 18514549229(微信同手机号)。

2020-12-17 13:424480
用户头像
万佳 前InfoQ编辑

发布了 677 篇内容, 共 316.6 次阅读, 收获喜欢 1781 次。

关注

评论

发布
暂无评论
发现更多内容

LED显示屏设计和安装比例有什么联系

Dylan

LED显示屏 户外LED显示屏 led显示屏厂家

云BI,如何成为了企业的“贴身管家”?

夏日星河

开源遇上华为云——DataX for HuaweiCloud OBS

华为云开发者联盟

开源 后端 华为云 企业号十月 PK 榜

Git本地提交代码推送远程并未统计贡献量问题分析

Andy

CSS 如何实现五彩斑斓的“呼吸字”?速度拿去装杯!

掘金安东尼

CSS 11月月更

MindStudio模型训练场景精度比对全流程和结果分析

华为云开发者联盟

人工智能 华为云 企业号十月 PK 榜

火山引擎钜惠双11开启,云服务器0.71折起

Geek_2d6073

华为云发布三大生态举措,携手伙伴及开发者共创新价值

华为云开发者联盟

云计算 华为云 企业号十月 PK 榜

React组件通信

xiaofeng

React

HummerRisk 快速入门教程

HummerCloud

云安全 云原生安全 11月月更 HummerRisk

阿里这份Java程序性能优化指南,让你的程序快上200%

小小怪下士

Java 程序员 性能优化

线上kafka消息堆积,consumer掉线,怎么办?

Java永远的神

Java kafka 程序员 程序人生 消息中间件

Databend 在 MinIO 环境使用copy 命令 | 新手篇(3)

Databend

内存数据库如何发挥内存优势?

C++后台开发

算法 内存数据库 后端开发 linux开发 C++开发

双11niubility的数据恢复软件,获得更专业的数据恢复服务

淋雨

数据恢复 文件恢复

开源密码管理器更安全吗?(2)

神锁离线版

开源 网络安全 信息安全 数据安全 密码管理器

react进阶用法完全指南

xiaofeng

React

豆瓣评分8.0!深入理解Java虚拟机,把GC算法与实现讲得明明白白!

Java永远的神

程序员 面试 JVM GC Java虚拟机

链表只有面试有用?Redis 之父说:我不同意!

图灵社区

算法 链表 Redis 数据结构

数据可视化分析之新技能——魔数图

葡萄城技术团队

数据分析 前端 可视化 商业智能

应用现代化产业联盟,正式成立

华为云开发者联盟

云计算 华为云 企业号十月 PK 榜

双十一剁手快,ERP系统不能慢

力软低代码开发平台

链表只有面试有用?Redis 之父说:我不同意!

图灵教育

算法 链表 Redis 数据结构

为什么电脑主板晶振多采用14.318MHz和32.768KHz ?

元器件秋姐

晶振 元器件 元器件电商平台 元器件采购

用火山引擎DataTester,这家企业开始了“数据驱动增长”

字节跳动数据平台

大咖圆桌|研发想要降本增效?来听听专家们的前沿洞见

万事ONES

react组件深度解读

xiaofeng

React

「Go工具箱」web中想做到cookie值安全?securecookie库的使用和实现原理

Go学堂

golang 开源 程序员 Cookie WEB安全

tornado 4.2.1 移植指南(openEuler 20.03 LTS SP1)

openEuler

数据库 tornado centos 开源 操作系统

pkgship 2.1.0 移植指南 (openEuler 20.03 LTS SP1)

openEuler

flask centos 开源 操作系统 openEuler

重磅发布.NET 7!更快、更强、更统一

Azure云科技

.NET 7

  • 扫码添加小助手
    领取最新资料包
GitHub新规:Git操作的身份验证将放弃密码,改用令牌或SSH密钥_安全_万佳_InfoQ精选文章