Note
如果站点管理员已为实例禁用了密钥,则可能无法使用密钥。
关于密钥
使用密钥,无需输入密码,即可在浏览器中安全地登录到 GitHub。
如果使用双因素身份验证 (2FA),则密钥同时满足密码和 2FA 要求,因此只需一个步骤即可完成登录。 如果不使用 2FA,则使用密钥将跳过通过电子邮件验证新设备的要求。 也可以将密钥用于 sudo 模式并重置密码。
密钥是由您控制的身份验证器存储的加密密钥对(公钥和私钥)。 身份验证器可以证明用户存在且有权使用密钥。 身份验证器使用 PIN 码、密码、生物特征或设备密码来证明授权,但具体使用哪项取决于身份验证器的功能和配置。 身份验证器有多种形式,例如 iPhone 或 Android 设备、Windows Hello、FIDO2 硬件安全密钥或密码管理器。
使用密钥登录到 GitHub 时,身份验证器会使用公钥加密向 GitHub 验证身份,无需发送密钥。 密钥绑定到网站域(例如 GitHub.com
)且需要安全连接,这意味着 Web 浏览器将拒绝向类似网络钓鱼网站进行身份验证。 这些属性让密钥具有很高的防网络钓鱼能力,并且比可能遭到网络钓鱼的短信或 TOTP 2FA 更难攻击。
云端密钥服务允许在设备(如 Apple 设备、Android 设备或密码管理器)之间同步密钥,以便可以从更多位置使用密钥,让密钥更不容易丢失。 在一台设备上设置同步密钥后,即可在使用同一服务的多台设备上使用该密钥。 示例:如果使用 MacBook 的 Touch ID 向 iCloud 帐户注册了密钥,则可在绑定了同一 iCloud 帐户的多台设备上交换使用该密钥与人脸、指纹、PIN 码或设备密码。
有关向帐户添加密钥的详细信息,请参阅“管理密钥”。
对于 2FA 用户,如果帐户已经注册了符合密钥条件的安全密钥用于 2FA,可以在帐户设置中轻松地将这些现有凭据升级到密钥。 使用符合条件的安全密钥登录时,系统还会询问是否要将其升级到密钥。 有关详细信息,请参阅“管理密钥”。
关于身份验证器
某些身份验证器允许将密钥用于附近的设备。 例如,你可能想使用未设置密钥但启用了蓝牙功能的笔记本电脑登录到 GitHub。 如果已在手机上注册密钥,可以选择扫描 QR 码,或触发向手机推送通知,以便安全地完成登录。 有关详细信息,请参阅“使用密钥登录”。
其他身份验证器创建设备绑定密钥,表示密钥只能在单个身份验证器上使用。 这些密钥无法备份或移动到另一个身份验证器。 某些密钥提供程序可能会在创建密钥期间提供设备绑定密钥作为选项,其他提供程序可能不支持在设备绑定密钥和同步密钥之间进行选择。
身份验证器也可以是便携设备。 存储在 FIDO2 硬件安全密钥上的密钥也属于“设备绑定密码”;这样的密钥具有可移植优势,并且能以各种方式(USB、NFC 或蓝牙)连接到其他设备。 在某些平台和 Web 浏览器组合中,FIDO2 安全密钥可能是使用密钥的唯一方法。
有关设备和操作系统是否支持密钥的信息,请参阅 Passkeys.dev 文档中的设备支持 和 CanIUse 文档中的 Web 身份验证 API。
反馈
可以与 GitHub 分享你对密钥的反馈。 要加入对话,请参阅“[反馈] 用于无密码身份验证的密钥”。