GMTC全球大前端技术大会(北京站)门票9折特惠截至本周五,点击立减¥480 了解详情
写点什么

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

2020 年 12 月 17 日

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/


2020 年 12 月 17 日 13:422825
用户头像
万佳 InfoQ编辑

发布了 572 篇内容, 共 211.5 次阅读, 收获喜欢 1429 次。

关注

评论

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

如何从ERP将Material的Batch信息下载到CRM

Jerry Wang

CRM SAP ERP abap

架构训练营-模块四作业

冬天的树

ABAP OPEN SQL里OPEN CURSOR和SELECT的比较

Jerry Wang

CRM SAP abap ST05 OPENSQL

第四次作业

Geek_9cf7b5

如何快速的学习一门新的编程语言?

架构精进之路

学习推荐 5月日更

为什么有的系统的事务码BSP_WD_CMPWB看不见Enhance Component这个按钮

Jerry Wang

CRM SAP abap

利用CRM中间件Middleware从ERP下载Customer Material的常见错误

Jerry Wang

中间件 CRM SAP ERP

One Order行项目里Item Category是怎么计算出来的

Jerry Wang

CRM SAP abap ONE-ORDER

SAP S4CRM (SAP Customer Management for S/4HANA) 1.0 介绍

Jerry Wang

CRM SAP abap S/4HANA

CRM和ERP的Sales Organization的映射关系

Jerry Wang

中间件 CRM SAP ERP

CRM product UI里assignment block的显示隐藏逻辑

Jerry Wang

CRM SAP abap

如何从ERP下载Sales BOM到CRM

Jerry Wang

CRM SAP ERP abap

如何检查某个用户是否具有某个权限对象上定义的某种权限

Jerry Wang

CRM ERP abap Authorization Authentication

【建议收藏】缺少 Vue3 和 Spring Boot 的实战项目经验?我这儿有啊!

十三

vue.js 面试 springboot Vue3 项目经验

谣言粉碎机 - 极短时间内发送两个Odata request,前一个会自动被cancel掉?

Jerry Wang

JavaScript SAP SAP UI5

中间件事务码R3AC1里Block Size的含义

Jerry Wang

中间件 CRM SAP abap

网络攻防学习笔记 Day23

穿过生命散发芬芳

5月日更 网络攻防

CRM数据库表COM_TA_R3_ID的数据来源

Jerry Wang

中间件 CRM SAP abap

为什么使用中间件下载时总是收到警告消息Object is in status Wait

Jerry Wang

中间件 CRM SAP ERP

SAP CRM 和 Cloud for Customer 的 Document flow API 介绍

Jerry Wang

CRM SAP abap C4C documentFlow

Mybatis获取自增长id

风翱

mybatis 5月日更

CRM中间件里的发布-订阅者模式

Jerry Wang

CRM SAP ERP abap

前端之变(二)- "不变"的前端

御剑

程序员 前端 架构师

同时开左右两个SAPGUI编辑器显示同一段ABAP代码

Jerry Wang

SAP abap SAPGUI

SAP CRM中间件里的CSA队列有什么用

Jerry Wang

中间件 消息中间件 CRM SAP

模块4作业

梦寐凯旋

架构实战营

面试问题 - 只用位操作在ABAP里实现a+b

Jerry Wang

面试 SAP abap

数字货币兴起背后:全球货币超发 主权信用贬值

CECBC区块链专委会

SAP ABAP的权限检查跟踪(Authorization trace)工具使用步骤介绍

Jerry Wang

SAP abap Authorization Authentication

一种不通过UI给C4C自定义BO创建测试数据的方式

Jerry Wang

CRM SAP C4C Cloud for Customer

如何处理错误信息 Pricing procedure could not be determined

Jerry Wang

CRM SAP

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