Skip to content

令牌管理

令牌是 CLI 客户端连接服务器时使用的认证凭据。每个令牌绑定到一个用户,并可选绑定到一个设备。

CLI 命令

bash
# 为用户 ID 1 生成令牌
unns token gen 1

# 带设备名称生成
unns token gen 1 macbook-pro

# 列出所有令牌
unns token list

# 列出特定用户的令牌
unns token list 1

# 撤销令牌
unns token revoke 3

令牌属性

字段说明
hashSHA-256 哈希(存储值,永不存储明文)
user_id所属用户
device_name可选的设备标识符
enabled活跃或已撤销
created_at创建时间戳
last_used最后一次成功认证时间

令牌工作原理

  1. 管理员生成令牌 → 原始令牌只显示一次
  2. 将令牌提供给用户
  3. 用户运行 unne setup 并输入令牌
  4. CLI 在握手过程中发送令牌
  5. 服务器对令牌进行哈希并在数据库中查找对应哈希
  6. 令牌继承其父用户的所有限制

令牌 = 设备

当用户设置了 max_devices 时,每个令牌算作一个设备。如果用户设置了 max_devices=2,则最多可以有 2 个活跃令牌同时连接。

安全性

  • 令牌仅以 SHA-256 哈希形式存储
  • 原始令牌在生成时显示一次,之后永不存储
  • 撤销令牌会立即断开客户端连接
  • 令牌可通过 CLI 或管理面板进行管理

Released under the MIT License.