Skip to content

账户安全 ​

OTW 只有一个账户,没有密码重置邮件。保护它的是密码(或已关联的 social 账号)、可选的第二重验证因素, 以及除你之外没有任何东西能访问这台机器这一事实。本页 介绍你可以开启什么,以及出问题时该怎么办。

这里的一切都位于设置 → 安全,只有密码本身例外,它仍在 设置 → 账户中。

双因素认证 ​

由手机上的应用生成的六位数验证码,在输入密码之后要求输入。它能挡住仅靠被盗密码的入侵, 也是在向互联网开放应用之前最有用的一项开关。

不会向你发送任何内容

这是 TOTP(RFC 6238),而不是按需短信或邮件发送的验证码。你的验证器和 服务器在设置时共享一次密钥,之后各自根据当前时间计算出相同的验证码。 没有短信,没有邮件,没有第三方服务,机器离线时也能工作。

开启 ​

  1. 设置 → 安全 → 设置。应用会显示一个二维码、其背后的 otpauth:// 链接, 以及密钥本身。
  2. 将其添加到任意验证器应用:Google Authenticator、Aegis、Ente Auth、1Password、 Bitwarden、Proton Pass,用你已经在用的那个即可。扫描二维码、粘贴链接, 或手动输入密钥。
  3. 输入它显示的六位数字并确认。

在最后一步成功之前,登录方式不会有任何变化。你无法生成的验证码 绝不会成为要求,所以做到一半的设置不会把你锁在外面。

之后的登录 ​

像以前一样输入用户名和密码;应用随后会要求输入验证码。每个验证码只能使用 一次,有效期 30 秒,对时钟有偏差的手机,两侧各留有一点容差。

关闭 ​

设置 → 安全 → 关闭,会再次要求输入你的密码。在清空手机之前先这样做, 并在新手机上重新设置。

如果你丢失了验证器 ​

没有备份码,也没有恢复邮件,原因与没有密码 重置表单相同。请在机器的 shell 中恢复:

bash
docker exec -it opentraderworld-core-1 /app/otw-core disable-totp USERNAME

第二重验证因素及其密钥会被移除,所有会话都会退出登录。用你的密码登录, 然后在新设备上重新设置。

保留一条回来的路

设置时请把密钥存入你的密码管理器,或保持验证器自带的备份处于开启状态。 否则唯一的办法就是通过 shell 访问这台机器。

Social sign-in ​

Google、Microsoft、GitHub 或 OpenID Connect 登录,锁定到一个已关联的账号, 带有恢复码,并可选择关闭密码。参见 Social sign-in。

活跃会话 ​

设置 → 安全列出当前登录该账户的每个浏览器,以及 其来源地址和最后使用时间。你正在阅读本页的那个会标出来。

  • 关闭会结束其中一个。
  • 关闭其他所有会话会结束除你自己之外的全部会话,如果你在 不该登录的地方登录过,或者拿不准,就点这个。

来自该账户从未使用过的地址的登录,也会触发通知。它 会出现在铃铛中,并 push 到任何已授予 Security (sign-ins) producer 的渠道(在设置 → 通知中,通配授权已经涵盖它)。它按 每个地址触发一次,而不是每次登录都触发。

会话持续一周。在面向网络的模式(LAN + HTTPS 和公网)下,它们在一天无活动后 也会结束,因此在你离开的机器上遗留的浏览器不会 一直保持登录。在 localhost 和纯局域网下,只适用一周的限制。

再次出现的密码提示 ​

有少数操作即使你已经登录,也会再次要求输入密码:

  • 为 AI agent 生成访问 token(设置 → AI agents)
  • 更改网络模式(设置 → 网络)
  • 向保险库写入一个值
  • 下载包含凭据的部分备份
  • 关闭第二重验证因素

这些操作要么创建凭据,要么改变外部世界能访问的范围,要么把所有 已存储的机密一次性交给你。一次确认在五分钟内涵盖所有这些操作,所以连续的 更改只会询问一次,并且确认属于给出它的那个浏览器。如果第二重 验证因素已开启,提示也会要求输入验证码。

密码规则 ​

在设置 → 账户中设置或更改,总是先要求输入当前密码, 成功后会让其他所有会话退出登录。

密码必须至少 12 个字符,且不能是已经出现在 公开泄露名单中的密码。该检查会忽略人们为绕过规则而添加的装饰,所以 P@ssw0rd!2024 与 password 一样会被拒绝。序列(abcdefghijkl)以及 任何包含你账户名的密码也会被拒绝。

最简单且能通过的密码是几个不相关的单词:fennel-ladder-oxide-73 会 被接受,既短又好输入。没有关于混用符号和数字的规则,因为 长度才是关键。

忘记了?参见忘记密码。

请求超时 ​

设置 → 安全还可设定单个请求在服务器终止它之前最多能运行多久。 默认值是 120 秒。

它的存在是为了让卡住的请求不会永远占用连接。它不是 速率限制:不会统计你调用应用的频率,高强度调用 API 的 AI agent 也不受影响。实时价格流和日志视图同样不受影响,因为该限制针对的是 生成响应,而不是流的生命周期。

如果长时间的 backtest 或大型导入被超时消息中断,请调高它。

网络可达实例上的首次运行 ​

在已可从网络访问的实例(LAN + HTTPS 或公网)上创建第一个账号时, 设置向导会要求输入设置 token。参见 网络与远程访问。