跳到主要内容

用户管理

概述

用户管理是 LLM Gateway 的核心管理功能,提供完整的用户账户生命周期管理、角色权限控制和访问审计。通过用户管理,管理员可以:

  • 创建和管理用户账户
  • 分配角色和权限
  • 设置用户配额和限制
  • 管理用户下的 API Token
  • 审计用户操作和访问记录
👤
用户账户管理
创建、编辑、禁用和删除用户账户
🛡️
角色权限
基于角色的访问控制(RBAC),灵活分配权限
📊
配额管理
为用户设置 API 调用配额和限制
📋
操作审计
记录所有用户操作,支持审计和追溯

用户角色

内置角色

系统提供三种内置角色,满足不同的权限需求:

权限: 所有权限,不受任何限制

能力:

  • ✓ 管理所有用户和 Token
  • ✓ 配置系统设置
  • ✓ 管理渠道和路由
  • ✓ 查看所有日志和统计
  • ✓ 管理许可证
  • ✓ 导入导出数据
  • ✓ 执行系统维护操作

限制:

  • 无限制
  • 不受配额限制
  • 不受限流限制

使用场景:

  • 系统初始化
  • 关键配置变更
  • 紧急故障处理
注意

Root 账户权限极高,应妥善保管,避免日常使用。

权限矩阵

功能RootAdminUser
用户管理
查看所有用户
创建用户
编辑其他用户✓(非管理员)
删除用户✓(非管理员)
编辑自己
Token 管理
查看所有 Token
管理自己的 Token
管理他人 Token
渠道管理
查看渠道
创建/编辑渠道
删除渠道
系统设置
查看系统设置
修改系统设置部分
管理许可证
日志和统计
查看全局日志
查看自己日志
导出数据✓(自己的)

用户管理操作

创建用户

1
导航到用户管理

登录管理后台,点击左侧菜单的"用户管理"。

用户管理页面
2
点击添加用户

在用户列表页面,点击右上角的"添加用户"按钮。

添加用户按钮
3
填写基本信息

在创建用户表单中,填写以下信息:

  • 用户名: 唯一标识符,3-32 字符,字母数字下划线
  • 显示名称: 用户的显示名称
  • 邮箱: 用于通知和密码重置
  • 密码: 至少 8 字符,包含字母数字和特殊字符
  • 确认密码: 再次输入密码
用户基本信息表单
4
选择角色

为用户分配角色:

  • Root: 超级管理员
  • Admin: 管理员
  • User: 普通用户
选择用户角色
5
配置配额(可选)

设置用户的 API 使用配额:

  • 月度配额: 每月可用的 tokens
  • 无限配额: 勾选后不受配额限制
  • 配额警告阈值: 达到多少百分比时告警
用户配额配置
6
设置状态

选择用户初始状态:

  • 启用: 用户可以正常登录和使用
  • 禁用: 用户无法登录,其 Token 也无法使用
用户状态设置
7
保存用户

点击"创建"按钮保存用户。

信息

创建成功后,可以选择发送欢迎邮件给用户,包含登录信息。

编辑用户

1
找到目标用户

在用户列表中找到要编辑的用户,或使用搜索功能。

用户列表搜索
2
点击编辑
在用户行的操作列中,点击"编辑"图标。
3
修改信息

在编辑表单中修改需要更新的字段:

  • 基本信息(显示名称、邮箱等)
  • 角色
  • 配额
  • 状态
注意
  • 用户名创建后不可修改
  • 修改角色需要谨慎,避免误操作
  • Root 用户只能由其他 Root 用户修改
4
保存更改
点击"保存"按钮应用更改。

重置密码

管理员可以为任何用户重置密码:

  1. 在用户列表中,点击用户的"重置密码"按钮
  2. 选择重置方式:
    • 自动生成: 系统生成随机密码
    • 手动设置: 管理员指定新密码
  3. 选择通知方式:
    • 发送邮件: 将新密码发送到用户邮箱
    • 显示密码: 在页面上显示,管理员手动告知用户
  4. 确认操作
管理员重置密码

禁用和删除用户

禁用用户

效果: 用户无法登录,其 Token 无法使用,但保留数据

操作:

  1. 在用户列表中找到目标用户
  2. 切换用户的启用/禁用开关
  3. 或在编辑页面修改状态

场景:

  • 用户违反使用政策
  • 账户疑似被盗
  • 临时停用账户
  • 用户离职或不再使用

恢复: 随时可以重新启用

禁用用户开关
删除用户

效果: 永久删除用户及其所有数据

操作:

  1. 在用户列表中,点击用户的"删除"按钮
  2. 确认删除操作
  3. 可选择是否同时删除:
    • 用户的 Token
    • 用户的访问日志
    • 用户的统计数据
注意

删除是不可逆操作,建议先禁用用户,确认无影响后再删除。

场景:

  • 确认不再需要的账户
  • 数据清理
  • 合规要求(GDPR 数据删除权)
删除用户确认

批量操作

支持批量管理用户:

通过 CSV 文件批量创建用户:

  1. 下载 CSV 模板
  2. 填写用户信息:
    username,display_name,email,role,quota,status
    user1,张三,user1@example.com,user,100000,enabled
    user2,李四,user2@example.com,user,200000,enabled
    user3,王五,user3@example.com,admin,1000000,enabled
  3. 上传 CSV 文件
  4. 预览和确认
  5. 批量创建,系统自动生成密码并发送邮件
批量创建用户

用户配额管理

配额类型

限制用户可使用的 LLM tokens 数量:

配额层级:

  • 用户配额: 用户下所有 Token 共享
  • Token 配额: 单个 Token 的独立配额

关系:

用户总配额 >= Σ(用户下所有 Token 的使用量)

配置:

{
"user_quota": {
"monthly": 1000000, // 月度 1M tokens
"used": 345678, // 已用
"remaining": 654322 // 剩余
}
}

配额设置

1
编辑用户配额

在用户编辑页面,找到"配额设置"部分。

用户配额设置
2
设置配额值

配置各项配额:

  • 月度 Token 配额: 100000 - 10000000 或无限
  • 每日请求配额: 100 - 100000 或无限
  • 成本限额: $10 - $10000 或无限
配置配额值
3
配置告警

设置配额告警:

  • 告警阈值: 80%(推荐)
  • 告警方式: 邮件、短信、Webhook
  • 告警接收人: 用户本人、管理员
配额告警配置
4
设置超额策略

配额用尽后的处理:

  • 拒绝请求: 返回配额不足错误(默认)
  • 降级服务: 使用低成本模型
  • 超额扣款: 允许超额,按超额费率计费
超额策略设置
5
保存配置
点击"保存"按钮应用配额设置。

配额监控

查看单个用户的配额使用:

  • 配额总量和已用量
  • 使用率(百分比和进度条)
  • 预估耗尽时间
  • 使用趋势图(过去 7 天/30 天)
用户配额监控

配额调整

临时提升配额

为用户临时增加配额:

场景: 用户临时需要更多配额(活动、演示等)

操作:

  1. 进入用户编辑页面
  2. 点击"临时配额追加"
  3. 输入追加数量和有效期
  4. 填写原因(审计用)
  5. 确认

效果:

  • 配额立即增加
  • 有效期后自动恢复
  • 记录操作日志
临时提升配额
配额重置

重置用户的配额使用量:

场景:

  • 配额周期重置
  • 误操作恢复
  • 特殊处理

操作:

  1. 进入用户配额页面
  2. 点击"重置配额"
  3. 选择重置类型:
    • 完全重置(清零)
    • 重置到基础值
    • 自定义值
  4. 确认操作
配额重置
配额转移

在用户之间转移配额:

场景: 团队内部配额调配

操作:

  1. 选择源用户和目标用户
  2. 输入转移数量
  3. 确认双方配额充足
  4. 执行转移

限制:

  • 仅 Admin 以上角色可操作
  • 转移后不可撤销
  • 记录详细日志

用户分组

创建用户组

1
导航到用户组管理

在用户管理页面,切换到"用户组"标签。

用户组管理
2
创建新组

点击"添加用户组"按钮:

  • 组名: 如"开发团队"、"测试团队"
  • 描述: 组的用途和说明
  • 默认角色: 组成员的默认角色
  • 默认配额: 组成员的默认配额
创建用户组
3
添加成员

将用户添加到组:

  • 从用户列表中选择
  • 或批量导入用户
添加组成员
4
配置组权限

为组配置特定权限:

  • 访问特定渠道
  • 使用特定模型
  • 执行特定操作
配置组权限

用户组应用

场景示例:

  1. 开发团队组:

    • 高配额,用于开发测试
    • 访问所有模型
    • 可查看详细日志
  2. 生产团队组:

    • 严格配额控制
    • 仅访问生产渠道
    • 权限受限
  3. 试用用户组:

    • 低配额
    • 仅访问基础模型
    • 限制功能

访问控制

IP 白名单/黑名单

仅允许特定 IP 访问:

配置:

  1. 进入用户编辑页面
  2. 找到"访问控制"部分
  3. 启用"IP 白名单"
  4. 添加允许的 IP 或 IP 段:
    192.168.1.100
    10.0.0.0/8
    2001:db8::/32
  5. 保存

效果: 用户只能从白名单 IP 访问

IP 白名单配置

时间访问控制

限制用户的访问时间:

配置:

{
"time_restriction": {
"enabled": true,
"allowed_hours": {
"monday": ["09:00-18:00"],
"tuesday": ["09:00-18:00"],
"wednesday": ["09:00-18:00"],
"thursday": ["09:00-18:00"],
"friday": ["09:00-18:00"],
"saturday": [],
"sunday": []
},
"timezone": "Asia/Shanghai"
}
}

场景:

  • 限制工作时间访问
  • 防止非工作时间滥用
  • 合规要求
时间访问控制

操作审计

审计日志

系统记录所有用户操作:

记录内容:

  • 操作时间
  • 操作用户
  • 操作类型
  • 操作对象
  • 操作前后的值
  • IP 地址
  • User Agent

操作类型:

  • 登录/登出
  • 创建/编辑/删除资源
  • 配置变更
  • 权限变更
  • 数据导出

日志示例:

[2025-10-18 10:30:00] [AUDIT]
User: admin_user (ID: 1)
IP: 192.168.1.100
Action: UPDATE_USER
Target: user_123
Changes:
- role: user → admin
- quota: 100000 → 500000
Reason: 升级为管理员
审计日志查看

审计报告

生成审计报告用于合规和安全审查:

报告类型:

  1. 用户操作报告:

    • 特定时间段内的所有用户操作
    • 按用户、操作类型统计
    • 异常操作高亮
  2. 权限变更报告:

    • 所有角色和权限变更
    • 变更时间和执行人
    • 变更前后对比
  3. 数据访问报告:

    • 敏感数据的访问记录
    • 数据导出记录
    • 异常访问检测
  4. 合规报告:

    • 符合 GDPR、SOC2 等标准的审计报告
    • 可定制报告模板
审计报告生成

用户通知

通知类型

👤
账户通知
账户创建、密码重置、角色变更等
📊
配额通知
配额告警、配额用尽、配额重置等
🛡️
安全通知
异常登录、IP 变更、权限变更等
🔔
系统通知
系统维护、版本更新、重要公告等

通知渠道

发送邮件到用户注册邮箱:

配置:

  • SMTP 服务器设置
  • 发件人信息
  • 邮件模板

支持:

  • HTML 邮件
  • 附件
  • 多语言
邮件通知配置

通知偏好

用户可以自定义通知偏好:

配置项:

  • 接收哪些类型的通知
  • 通过哪些渠道接收
  • 通知频率(实时、每日汇总、每周汇总)
  • 免打扰时间段
用户通知偏好设置

最佳实践

用户管理建议

🔑
最小权限原则
仅授予用户完成工作所需的最小权限
📋
定期审查
定期审查用户账户,移除不再需要的账户
🔒
强密码策略
强制使用强密码,定期更换密码
🛡️
多因素认证
为管理员账户启用 MFA(如果支持)

安全建议

  1. Root 账户保护:

    • 使用强密码
    • 启用 MFA
    • 限制 IP 访问
    • 不用于日常操作
    • 定期审计 Root 操作
  2. 管理员账户管理:

    • 为每个管理员创建独立账户
    • 不共享账户
    • 离职时立即禁用
    • 定期审查权限
  3. 普通用户安全:

    • 定期检查异常登录
    • 监控配额使用异常
    • 及时响应安全告警
    • 用户安全培训
  4. Token 安全:

    • 定期轮换 Token
    • 限制 Token 权限
    • 监控 Token 使用
    • 及时吊销可疑 Token

配额规划建议

  1. 评估需求:

    • 统计历史使用量
    • 预估未来增长
    • 考虑峰值和平均值
    • 不同用户群体差异化
  2. 分级设置:

    试用用户:
    - 10K tokens/day
    - 100 requests/day

    基础用户:
    - 100K tokens/day
    - 1000 requests/day

    高级用户:
    - 1M tokens/day
    - 10000 requests/day

    企业用户:
    - 无限制或按需定制
  3. 监控和调整:

    • 定期检查配额使用率
    • 识别配额不足或浪费
    • 根据实际情况调整
    • 收集用户反馈

常见问题

Root 账户密码忘记了怎么办?

解决方案:

  1. 通过命令行重置(如果有服务器访问权限):

    # 进入应用目录
    cd /path/to/llm-gateway

    # 运行密码重置命令
    ./llm-gateway reset-root-password

    # 按提示输入新密码
  2. 通过数据库直接修改:

    -- 生成新密码的哈希(使用 bcrypt)
    -- 然后更新数据库
    UPDATE users
    SET password = '$2a$10$...'
    WHERE username = 'root';
  3. 联系技术支持: 如果以上方法都不行

如何批量导入用户?

使用 CSV 批量导入功能:

  1. 准备 CSV 文件(模板可下载)
  2. 包含字段: username, email, display_name, role, quota
  3. 在用户管理页面选择"批量导入"
  4. 上传 CSV 文件
  5. 预览并确认
  6. 系统自动创建用户并发送欢迎邮件
用户配额和 Token 配额有什么关系?

层级关系:

  • 用户配额: 用户级别的总配额
  • Token 配额: 每个 Token 的独立配额

计算:

用户已用配额 = Σ(用户下所有 Token 的已用配额)

检查顺序:

  1. 先检查 Token 配额是否充足
  2. 再检查用户总配额是否充足
  3. 两者都充足才允许请求

场景: 用户有 100K 配额,创建了 3 个 Token,每个 50K:

  • 3 个 Token 可以同时使用
  • 但总使用量不能超过 100K
  • 任一 Token 使用量不能超过 50K
如何设置用户的访问权限?

方法 1: 通过角色

  • 为用户分配 Root/Admin/User 角色
  • 角色决定基本权限

方法 2: 通过用户组

  • 创建用户组
  • 为组配置权限
  • 将用户加入组

方法 3: 通过访问控制

  • IP 白名单/黑名单
  • 地域限制
  • 时间限制
  • 渠道访问限制

方法 4: 通过 Token 权限

  • 为每个 Token 设置权限范围
  • 限制 Token 可访问的资源
用户数量有限制吗?

许可证限制:

  • 根据许可证类型可能有限制
  • 免费版: 通常限制在 10-100 个用户
  • 付费版: 根据套餐不同
  • 企业版: 无限制

性能考虑:

  • 用户数量本身对性能影响很小
  • 主要取决于并发请求数和配额使用
  • 建议定期清理不活跃用户
如何实现单点登录(SSO)?

如果系统支持 SSO:

LDAP/AD 集成:

  1. 配置 LDAP 服务器信息
  2. 设置用户同步规则
  3. 启用 LDAP 认证

OAuth2/OIDC:

  1. 配置 OAuth2 提供商(如 Google, GitHub)
  2. 设置回调 URL
  3. 配置用户属性映射

SAML:

  1. 配置 SAML IdP
  2. 上传元数据
  3. 配置断言映射

具体实现取决于系统版本和配置。

相关页面

🔑
Token 管理
管理用户的 API Token
📋
访问日志
查看用户操作和访问日志
⚙️
系统设置
配置用户相关的系统设置
📜
许可证管理
管理系统许可证和用户限制