dsh-lock:DeepSeek Harness 网页版密码门禁

前言

DeepSeek Harness (DSH) 网页版在无人值守或多人共用一台机器时,存在被直接操作的风险。dsh-lock 插件通过全屏遮罩和密码验证,在用户访问 DSH 前加了一道门禁,只有输入正确密码才能进入工作区。

功能概览

  • 全屏遮罩:未解锁时覆盖整个界面,阻止直接操作会话。
  • 手动锁定:随时通过侧边栏按钮或快捷键立即锁定。
  • 自动锁定:可配置空闲时长,超时后自动锁定。
  • 密码安全:仅存 scrypt 单向哈希(N=2^15, r=8, p=1),永不保存明文。
  • 界面中英双语:跟随 DSH 的界面语言设置实时切换。

安装与启用

在终端执行以下命令安装插件:

dsh plugin --profile web add github:felixpu/dsh-lock

安装完成后需重启宿主进程。

使用方法

  • 解锁:打开页面时显示锁定界面,输入密码即可解锁。
  • 立即锁定:
    • 点击侧边栏底部的「锁定」按钮。
    • 使用快捷键:macOS / Windows 为 Ctrl/Cmd + Shift + L;Linux 为 Ctrl/Cmd + Shift + .。
  • 自动锁定时长:进入「设置 → 插件 → dsh-lock」面板配置。

安全机制

  • 存储方式:密码以 scrypt 算法加盐哈希存储,比对使用常量时间比较,仅存哈希值,不保存明文。
  • 令牌机制:解锁后签发的是短期令牌,而非保存密码本身。
  • 卸载安全:存储在插件私有目录下,卸载插件不会把密码留在会话或配置里。
  • 安全边界:这是界面门禁,不是磁盘加密。它防的是「别人走到你电脑前直接操作 DSH」,不能防止能读取你用户目录下文件的攻击者。

注意事项

  • 错误代码:不产出面向用户的自然语言,路由响应只回机器可读的代码,如 invalid-password / too-many-attempts / locked。
  • Locale 配置:为确保中英双语正常工作,必须在 package.json 的 exports 里导出 locale/*.json,且 files 字段需包含 locale 目录。这是两个容易漏掉的点,漏掉会导致静默失效。

总结

dsh-lock 是一个轻量级的界面安全插件,适合需要在公共设备上临时离开或多人协作时保护 DSH 会话安全。其代码托管在 GitHub,遵循 MIT 许可证。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜