跳至主要内容

使用双重身份验证访问 GitHub

启用 2FA 后,您在登录 GitHub 时将被要求提供您的 2FA 身份验证代码以及您的密码。

启用双重身份验证 (2FA) 后,您需要使用第二个因素才能通过浏览器访问 GitHub。首次配置 2FA 时,您的帐户将进入为期 28 天的检查期,以确保您的帐户 2FA 方法设置正确。您可以在 28 天内成功执行 2FA 以退出检查期。如果您在 28 天内未进行身份验证,系统将要求您在您现有的 GitHub.com 会话之一中执行 2FA。如果您无法执行 2FA 以通过第 28 天的检查,请使用提供的快捷方式重新配置您的 2FA 设置并保留对 GitHub.com 的访问权限。有关更多信息,请参阅“配置双重身份验证”。

如果您使用其他方法访问 GitHub,例如 API 或命令行,您将使用令牌、应用程序或 SSH 密钥进行身份验证。有关更多信息,请参阅“关于 GitHub 身份验证”。

在登录网站时执行 2FA

使用密码登录 GitHub 后,您需要提供身份验证代码、点击 GitHub 移动应用中的通知或使用安全密钥来执行 2FA。

只有在您注销、使用新设备、执行敏感操作或会话过期时,GitHub 才会要求您再次提供 2FA 身份验证代码。有关敏感操作的 2FA 的更多信息,请参阅“Sudo 模式”。

通过 TOTP 应用生成代码

如果您选择使用 TOTP 应用设置双因素身份验证,则可以随时为 GitHub 生成身份验证代码。在大多数情况下,只需启动应用程序即可生成新的代码。您应该参考应用程序的文档以获取具体说明。

如果您在配置双因素身份验证后删除了身份验证器应用程序,则需要提供您的恢复代码才能访问您的帐户。许多 TOTP 应用支持在云中安全备份您的身份验证代码,并且如果您的设备无法访问,可以恢复。有关更多信息,请参阅“如果您丢失了 2FA 凭据,如何恢复您的帐户”。

使用安全密钥

如果您已在您的帐户上设置了安全密钥,并且您的浏览器支持安全密钥,则可以使用它来完成登录。

  1. 使用您的用户名和密码,通过您的浏览器登录 GitHub。
  2. 如果您使用的是物理安全密钥,请确保它已连接到您的设备。
  3. 要从您的操作系统触发安全密钥提示,请选择“使用安全密钥”。
  4. 在提示中选择适当的选项。根据您的安全密钥配置,您可能需要输入 PIN、完成生物识别提示或使用物理安全密钥。

使用通行证密钥

如果您已启用 2FA,并且已将通行证密钥添加到您的帐户,则可以使用通行证密钥登录。由于通行证密钥同时满足密码和 2FA 要求,因此您可以通过一个步骤完成登录。有关更多信息,请参阅“关于通行证密钥”和“使用通行证密钥登录”。

接收短信

如果您通过短信设置了双因素身份验证,GitHub 会向您发送包含身份验证代码的短信。

使用 GitHub 移动应用验证

如果您已安装并登录 GitHub 移动应用,您可以选择使用 GitHub 移动应用进行双因素身份验证。

  1. 使用您的用户名和密码通过浏览器登录 GitHub。

  2. GitHub 会向您发送一个推送通知以验证您的登录尝试。打开推送通知或打开 GitHub 移动应用程序将显示一个提示,要求您批准或拒绝此登录尝试。

    注意:此提示可能要求您输入您正在登录的浏览器中显示的两位数。

    • 批准使用 GitHub 移动应用程序的登录尝试后,您的浏览器将自动完成登录尝试。
    • 拒绝登录尝试将阻止身份验证完成。有关更多信息,请参阅“保护您的帐户和数据安全”。

使用命令行进行双因素身份验证

使用 Git Credential Manager 在命令行上进行身份验证

Git Credential Manager 是一款安全可靠的 Git 凭据助手,可在 Windows、macOS 和 Linux 上运行。有关 Git 凭据助手的更多信息,请参阅 Pro Git 书籍中的 避免重复

设置说明因您的计算机操作系统而异。有关更多信息,请参阅 GitCredentialManager/git-credential-manager 存储库中的 下载和安装

使用 HTTPS 在命令行上进行身份验证

您必须创建一个个人访问令牌,以便在使用 HTTPS URL 在命令行上对 GitHub 进行身份验证时用作密码。

在命令行上提示输入用户名和密码时,请使用您的 GitHub 用户名和个人访问令牌。命令行提示不会在询问您的密码时指定您应该输入您的个人访问令牌。

有关更多信息,请参阅“管理您的个人访问令牌”。

使用 SSH 在命令行上进行身份验证

启用 2FA 不会改变您使用 SSH URL 在命令行上对 GitHub 进行身份验证的方式。有关设置和使用 SSH 密钥的更多信息,请参阅“使用 SSH 连接到 GitHub”。

故障排除

如果您丢失了双因素身份验证凭据,您可以使用恢复代码或其他恢复方法(如果您已设置)来重新访问您的帐户。有关更多信息,请参阅“如果您丢失了 2FA 凭据,请恢复您的帐户”。

注意:如果您无法使用任何恢复方法,则您将永久失去对帐户的访问权限。但是,您可以取消链接与锁定帐户关联的电子邮件地址。然后,可以将取消链接的电子邮件地址链接到新的或现有的帐户。有关更多信息,请参阅“取消链接与锁定帐户关联的电子邮件地址”。

如果您的身份验证多次失败,您可能需要将手机的时钟与您的移动运营商同步。通常,这涉及检查手机时钟上的“自动设置”选项,而不是提供您自己的时区。

进一步阅读