管理员账号管理
管理 Admin 后台的登录账号和权限。
角色
| 角色 | 权限 |
|---|---|
super_admin | 全部权限,包括管理其他管理员 |
admin | 日常管理权限(实例/服务器/用户) |
API
获取当前登录信息
GET /api/v1/auth/me
Authorization: Bearer <JWT>
返回:{ id, email, name, role }
管理员列表
GET /api/v1/admin-users
返回:{ list: [{ id, email, name, role, status, created_at }] }
创建管理员
POST /api/v1/admin-users
Body: { email, name, role, password? }
role:super_admin|admin- 如果不传
password,默认设为google-oauth-only(仅 Google 登录)
更新管理员
PATCH /api/v1/admin-users/:email
Body: { name?, role?, status? }
status:active|revoked
删除管理员
DELETE /api/v1/admin-users/:email
软删除(设 deleted_at)。
认证方式
密码登录
POST /api/v1/auth/login
Body: { email, password }
返回 JWT token。
Google OAuth
GET /api/v1/auth/google → 跳转 Google 授权
GET /api/v1/auth/google/callback → 回调,返回 JWT
数据库
CREATE TABLE admin_users (
id VARCHAR(36) PRIMARY KEY,
email VARCHAR(255) UNIQUE NOT NULL,
password_hash VARCHAR(255),
name VARCHAR(100),
role VARCHAR(20) DEFAULT 'admin',
status VARCHAR(20) DEFAULT 'active',
last_login_at DATETIME(3),
created_at DATETIME(3) DEFAULT CURRENT_TIMESTAMP(3),
deleted_at DATETIME(3)
);