安全
双重身份验证、通行密钥与登录会话。
设置 > 安全用于保护你的 Warmbly 登录方式,包括双重身份验证、通行密钥以及已登录的设备。
保护账户安全
打开设置 > 安全。
选择添加通行密钥,让日常登录更快捷,并抵御网络钓鱼。
使用任意标准身份验证器应用开启双重身份验证,并妥善保存恢复码。
定期检查会话,将任何不认识的会话退出登录。
使用须知
- 恢复码只显示一次,每个恢复码也只能使用一次。
- 通行密钥登录会跳过邮件验证码,因为解锁设备已经证明了你的身份。
- 修改密码会结束所有会话。当前使用的设备会立即重新登录。
- 某些敏感变更会要求再次输入密码或身份验证器验证码。身份确认的有效期为五分钟。
- 密码长度必须为 8 至 128 个字符,常见的泄露密码不予接受。
| 方式 | 步骤 |
|---|---|
| 密码 | 输入电子邮件地址、密码、邮件中的 6 位验证码;如果开启了双重身份验证,再输入身份验证器验证码 |
| 通行密钥 | 选择通行密钥,通过 Touch ID、Face ID、Windows Hello 或安全密钥解锁。无需密码或邮件验证码 |
| Google / Apple | 在控制台或 iOS 应用的原生界面中一键登录。服务商已验证你的身份,因此无需邮件验证码 |
首次通过 Google 或 Apple 使用新地址登录时,会自动创建账户、工作区并开启免费试用。
如果该地址已经对应一个设有密码的 Warmbly 账户,首次使用该地址通过 Google、Apple 或单点登录时,必须先输入该密码,才能将身份提供商关联到账户。身份提供商确认地址属于你,密码确认账户属于你。关联完成后,之后使用该提供商登录即可直接进入。从未设置过密码的账户(通过身份提供商或邀请创建)会在首次登录时完成关联。
通过外部身份提供商创建的账户最初没有密码。尝试使用密码登录时,会收到与密码错误相同的“凭据无效”响应。请继续通过原身份提供商登录,或使用忘记密码先设置密码,再用密码登录。重置链接只能使用一次,而且仅对申请重置时的密码状态有效:通过任何途径修改密码,包括使用另一条重置链接,都会使此前所有重置链接提前失效。
无密码登录设计
通行密钥与设备绑定,并通过生物识别或 PIN 解锁,因此已经同时证明了你拥有某个设备,以及具备某种生物特征或知道某项秘密。这就是它可以跳过邮件验证码的原因。Warmbly 要求完成这种解锁:未设置 PIN 的安全密钥不能添加,也不能用于登录,必须先在密钥上设置 PIN。
双重身份验证(2FA,使用 TOTP)会为每次密码登录增加一项动态的 6 位验证码,因此仅窃取密码还不足以登录。任意标准身份验证器均可使用,例如 Google Authenticator、Microsoft Authenticator、1Password、Authy 和 Bitwarden。
设置流程分为三步:
- 扫描。 使用身份验证器扫描二维码。如果无法扫描,例如使用桌面密码管理器,请打开无法扫描?手动输入密钥并复制设置密钥;旁边会列出账户、签发者、位数、时间间隔和算法,供需要这些信息的应用使用。
- 验证。 输入应用当前为 Warmbly 显示的 6 位验证码。输入第六位后会立即验证;验证码错误时会清空输入框,方便尝试下一组验证码。
- 保存恢复码。 十个恢复码只会显示一次。下载将其保存为文本文件,复制将其放入剪贴板,打印则打开可打印的页面。在你确认已保存恢复码之前,无法关闭设置向导。
恢复码仅显示一次
每个恢复码只能使用一次;如果遗失身份验证器,它们就是重新进入账户的途径。关闭向导前,请将它们保存到密码管理器。既没有恢复码又没有身份验证器时,你将无法访问自己的账户。
开启双重身份验证后,安全页面会显示启用时间和剩余恢复码数量。点击重新生成并输入当前验证码后,会签发新的一组十个恢复码;新恢复码显示的瞬间,所有旧恢复码即失效。剩余三个或更少时,该行会变为琥珀色。
登录时,输入六位数字后验证码会自动提交。如果没有身份验证器,请选择使用恢复码。
每个验证码只能使用一次。身份验证器验证码的有效期约为一分钟,以兼容较慢的网络连接;但只要成功登录过,同一验证码便已使用,不能再次使用。
错误验证码受到三层限制:每次登录尝试最多五次,超过后需重新从头登录;每个网络地址每十五分钟最多二十次;每个账户每十五分钟最多十次,不论期间重新输入了多少次密码。输入正确验证码会清除该账户的错误次数。
关闭时先要求输入当前验证码或恢复码,再明确确认。关闭双重身份验证后,账户仅由密码和邮件验证码保护,恢复码会失效;重新设置会生成新的密钥和恢复码。
通行密钥使用设备的解锁方式让你登录。凭据不会离开设备,因此无法被钓鱼网站窃取。当前版本的 Chrome、Safari、Edge 和 Firefox 均支持通行密钥;如果浏览器不支持,安全页面会提示你继续使用密码。
添加通行密钥会先提示你在设备上确认,再要求命名,例如“MacBook Touch ID”或“YubiKey”。请为每个用于登录的设备添加通行密钥。通过 iCloud 钥匙串或 Google 密码管理器同步的通行密钥会标记为已同步,并可在其他已登录的设备上使用。
如果设备因为已经拥有该账户的通行密钥而拒绝添加,Warmbly 会明确提示原因,不会默默结束注册流程。你可以继续使用现有通行密钥,或选择另一台设备添加。
每一项都显示添加时间和最近使用时间,并支持重命名或移除。
此设备上没有通行密钥时怎么办?
未同步的通行密钥只存在于创建它的设备上。如果当前设备没有通行密钥,Warmbly 会提示未找到。你可以先使用密码登录,再在该设备上添加通行密钥。
即使已经登录,执行某些变更时仍需确认是你本人:
- 创建 API 密钥
- 添加或移除通行密钥
- 开启双重身份验证
- 邀请成员或修改成员角色
- 导出或导入整个工作区
- 批准自托管实例的预热池关联
- 显示或轮换 Webhook 或 OAuth 应用的签名密钥
- 将工作区转移给他人
- 安排删除工作区或账户
提示框只会提供你的账户实际可用的验证方式:
- 通行密钥:如果已经添加
- 通过 Google、Apple 或单点登录继续:如果你使用该方式登录。身份提供商会在小窗口中打开,你在那里选择的账户必须是已关联到 Warmbly 的账户。如果浏览器阻止了窗口,请允许控制台弹出窗口
- 密码:如果账户设有密码
- 身份验证器验证码或恢复码:如果已开启双重身份验证
身份确认有效期为五分钟,因此连续执行一系列相关变更时只需确认一次。在 iOS 应用中,同一个提示框除密码和身份验证器验证码外,也提供“通过 Apple 继续”和“通过 Google 继续”。
如果账户没有任何可用方式,例如创建账户时使用的身份提供商已不再由此服务器提供,界面会说明情况,不会展示无法填写的字段。这种情况下,重新登录本身就是身份确认:请重新登录,在五分钟内再次执行变更,然后添加通行密钥或开启双重身份验证,避免以后再次遇到这种情况。
这些操作需要额外确认,是因为它们会签发有效期超出当前会话的凭据、泄露机密、改变可访问账户的人员,或产生无法由你自行撤销的结果。即使有人拿到了已登录的浏览器,也不应在不知道你所掌握的验证信息时执行这些操作。
每个已登录的设备都会出现在会话列表中,显示设备信息(Chrome on macOS)、位置(如果已知)、登录方式(电子邮件、Google、Apple 或通行密钥)以及最近活动时间。当前设备标记为此设备。
退出登录结束一个会话;退出其他会话清除当前设备以外的所有会话。在所有设备上退出、修改或重置密码,以及账户被封禁,都会立即结束全部会话,并关闭控制台或 API 客户端与实时服务建立的所有活动连接。
会话会在后台自动续期,每次续期都会替换用于维持会话的凭据。如果旧凭据再次出现,说明其他地方存在它的副本。因此,Warmbly 会立即结束该会话,你需要在对应设备上重新登录。
发现异常时
退出可疑会话、修改密码,并确认已开启双重身份验证。退出其他会话是最快的切断访问方式。
密码长度必须为 8 至 128 个字符,并会与英国国家网络安全中心公布的 100,000 个最常见泄露密码列表进行比对。如果密码出现在列表中,系统会拒绝并说明原因。检查不区分大小写,因此仅将已知密码的首字母改为大写无法绕过检查。
没有必须混合大写字母、数字和符号的规定。一个容易记住的长密码短语,比在短密码后硬加一个符号更好;这也符合 NIST 和 NCSC 当前的指南。输入时,控制台会显示密码强度指示。
密码错误次数按账户累计,而非仅按设备累计,因此攻击者从多个地址猜测同一账户,也不能获得更多尝试机会。一个小时内失败五十次后,该账户会停止接受密码尝试,直到这一小时结束。正确登录或完成密码重置会清除计数。修改密码时要求输入的当前密码,以及确认敏感变更时输入的密码,共用另一套同等额度的错误次数限制。
你的姓名和工作区名称会出现在 Warmbly 发送给他人的邮件中,例如邀请邮件。它们只能是纯文本:如果名称包含链接、网址、电子邮件地址或不可见的格式字符,系统会拒绝,并在字段旁说明原因。完整规则参见名称拒绝规则。
在密码区域修改密码:先输入当前密码,再输入新密码。修改密码会结束所有会话,包括执行修改的当前会话。 当前设备会立即通过新会话重新登录,因此你不会察觉中断;任何设备上持有旧会话的客户端都会退出登录。仅使用 Google、Apple 或通行密钥的账户没有可供修改的密码。
登录提醒会在账户通过新的浏览器与操作系统组合访问时通知你,显示设备和位置,并提醒你在非本人操作时采取行动。默认情况下,提醒出现在应用内通知列表;如需邮件通知,请在设置 > 通知的安全分类中开启邮件渠道。首次登录不会触发提醒,因为没有可供比较的历史记录。
创建账户时会记录注册来源的网络地址、浏览器的 user-agent 字符串,以及根据电子邮件地址本身特征得出的评分。这些信息是防滥用的证据,帮助平台发现同一人开设多个账户,或来自同一位置的大量注册;缺少这些信息,每个账户看起来都会与其他账户毫无关联。
- 电子邮件地址也会以规范化形式存储,去除加号标签,并合并 Gmail 地址中的点号,因此可以识别
[email protected]与[email protected]对应同一个人。这种形式仅用于关联分析,绝不用于登录。 - 每次注册都会记录这些信息,而不只记录可疑注册。如果只为已经显得有风险的账户保留记录,恰恰会使需要识别的关联模式缺少大量证据。
- 信息保留在创建该账户的实例中,工作区归档文件不会携带这些信息。
这里的任何一项信息都不会单独导致注册被拒。单一弱信号误判的概率过高,若把误报直接转化为拒绝创建账户,就会让真实客户无路可走。
被劫持的工作区拥有已完成预热的邮箱和可解密的发件凭据,因此对攻击者的价值高于普通账户。登录提醒是在事后通知你,而这项保护会阻止可疑登录。
Warmbly 保留账户近期使用地点的一小段时间窗口,并将每次新登录与上一次比较。如果两次登录所需的移动速度超过约 1000 公里/小时,在物理上不可能由同一人完成,那么即使来自曾使用过的浏览器,也必须通过邮件验证码才能登录。这正是记住设备机制无法发现的情况,因为持有你的 Cookie 的攻击者看起来就像熟悉的设备。
它有意保留了以下例外:
- 不判断首次登录。 没有历史记录可供比较,对其要求额外验证相当于要求所有新账户都额外验证。
- 忽略短距离移动。 位置来自城市数据库,因此同一城市两端的两次登录不视为跨地点旅行。
- 忽略不足两分钟的间隔。 相隔数秒却显示在不同城市的登录,更可能是代理造成的,而非真实旅行;用如此短的时间作除数,会使任何距离看起来都不可能完成。
- 真实航班行程可以通过。 九小时从伦敦到纽约是正常情况,不会触发额外验证。
- 遵循登录验证码设置。 如果运维人员完全关闭了邮件验证码,系统只记录异常供审查,不要求输入验证码,因为该部署可能没有可用的邮件发送功能。
两周内反复出现的异常会记录到工作区的风险状况中。一次不寻常的行程不足以构成模式。
需要地理位置数据库
此功能使用可选的 MaxMind 城市数据库。如果没有配置数据库,系统仍记录登录,但不作判断。这是更稳妥的默认方式,因为错误要求验证可能导致真实用户无法进入自己的账户。
单独来看,每项防滥用控制只观察一个对象:频率限制关注一个账户,预热健康度关注一个邮箱,验证关注一个地址。将相同行为分散到多个账户的人,可能始终不触发任何一项限制。
每晚运行的扫描会改为观察群体。它将从同一网络地址创建的工作区,或去除加号标签并合并 Gmail 点号后属于同一邮件身份的工作区归为一组,也会留意一次连接异常多邮箱的工作区。
发现的问题会作为证据记录在工作区风险状况中,绝不单独据此采取行动:
- 至少三个工作区才纳入判断。 两个工作区使用同一地址可能只是巧合。
- 忽略私有地址和环回地址,因为每套自托管安装都可能通过局域网注册。
- 仅共享地址的权重很低。 办公室、共享办公空间和 VPN 都可能正常出现这种情况。
- 仅统计最近 30 天。 在同一个办公室相隔一年创建的两个工作区不视为相关。
- 添加通行密钥,让日常登录更快捷,并抵御网络钓鱼。
- 开启双重身份验证并妥善保存恢复码,让密码登录始终需要第二重验证。
- 定期检查会话,将任何不认识的会话退出登录。