Files
border-red-post-nalati/docs/AUTH_API_REQUIREMENTS.md

18 lines
1.3 KiB
Markdown

# 用户系统与角色权限:前后端接口清单
当前后端未注册认证或管理员路由;前端只提供真实请求封装,任何 404、401、403 或 5xx 都会如实抛出,绝不创建本地假身份。
| 目标接口 | 方法 | 前端用途 | 后端待实现要求 |
|---|---:|---|---|
| `/api/auth/register` | POST | 注册 | 只创建 `user`;不得接受角色字段 |
| `/api/auth/login` | POST | 登录 | 建立 HttpOnly、Secure、SameSite Cookie 会话 |
| `/api/auth/logout` | POST | 退出 | 作废会话并清除 Cookie |
| `/api/auth/me` | GET | 刷新恢复会话 | 返回用户资料与 `user`/`admin` 角色 |
| `/api/users/me` | PATCH | 修改昵称/邮箱 | 只允许修改当前用户自己的基本资料 |
| `/api/auth/change-password` | POST | 修改密码 | 验证旧密码并进行安全哈希 |
| `/api/admin/users` | GET | 用户管理 | 必须由后端校验 `admin` 角色 |
## 前端待接入条件
现有工程尚未安装 `vue-router`。在用户安装该依赖并确认认证接口可用后,前端将接入路由守卫:未登录跳转登录页、成功后回跳、管理员路由额外检查 `role === 'admin'`。前端只用于体验层控制;知识库、来源、实验、用户管理的最终授权必须由 FastAPI 校验。