后台用户
{{ overview.users }}
启用中
{{ overview.activeUsers }}
管理员
{{ overview.admins }}
角色
admin · operator · viewer
权限矩阵
| 能力 | admin | operator | viewer |
|---|---|---|---|
| 用户管理(增删改、启停、重置密码) | ✅ | — | — |
| 控制台登录 / 修改自己密码 | ✅ | ✅ | ✅ |
| 购票业务模块(Phase 2+) | ✅ | ✅ | 只读 |
会话 12 小时有效;登录失败 5 次锁定 IP+用户名 15 分钟。首个用户由 MELON_ADMIN_USER/MELON_ADMIN_PASSWORD 引导,未设置时默认 admin/admin123(请立即修改)。
新建用户
密码 ≥ 8 位;角色决定 API 可达范围{{ formError }}
用户列表
{{ users.length }} 个账号| ID | 用户名 | 显示名 | 角色 | 状态 | 最后登录 | 备注 | 操作 |
|---|---|---|---|---|---|---|---|
| {{ u.id }} | {{ u.username }} | {{ u.displayName || '—' }} | {{ u.active ? '启用' : '停用' }} | {{ fmtTime(u.lastLoginAt) }} | {{ u.remark || '—' }} |
自己的账号不可停用/删除;不能停用或删除最后一个 admin。
购票账号
{{ melonAccounts.length }}
登录 OK
{{ melonAccounts.filter(a => a.loginState === 'ok').length }}
失败
{{ melonAccounts.filter(a => a.loginState === 'failed').length }}
未登录
{{ melonAccounts.filter(a => a.loginState === 'pending').length }}
新建购票账号
密码/登录态 AES-GCM 加密落库;代理可空(用 MELON_PROXY){{ formError }}
账号列表
| ID | 标签 | 邮箱 | 状态 | memberKey | 代理 | 最后登录 | 探活 | 备注 | 操作 |
|---|---|---|---|---|---|---|---|---|---|
| {{ a.id }} | {{ a.label }} | {{ a.email }} | {{ {ok:'OK', failed:'失败', pending:'未登录'}[a.loginState] }} | {{ a.memberKey || '—' }} | {{ a.proxy || '默认' }} | {{ fmtTime(a.lastLoginAt) }} | {{ a.lastProbeOK ? fmtTime(a.lastProbeOK) : (a.lastProbeError ? '❌' : '—') }} | {{ a.remark || '—' }} | |
| 暂无购票账号 | |||||||||
登录=走 gmember 全链(会调真实站点);批量登录串行 3s 节流。探活=getMemberKey 校验登录态。
修改我的密码
{{ me.username }}{{ formError }}