library-picturebook-activity/backend/docs/ADMIN_ACCOUNT.md
2025-11-23 14:04:20 +08:00

185 lines
3.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 超级管理员账号说明
## 📋 账号信息
### 登录凭据
- **用户名**: `admin`
- **密码**: `cms@admin`
- **昵称**: 超级管理员
- **邮箱**: admin@example.com
- **角色**: super_admin (超级管理员)
## 🔐 权限说明
超级管理员拥有系统所有权限,共 **27 个权限**
### 用户管理权限
- `user:create` - 创建用户
- `user:read` - 查看用户
- `user:update` - 更新用户
- `user:delete` - 删除用户
### 角色管理权限
- `role:create` - 创建角色
- `role:read` - 查看角色
- `role:update` - 更新角色
- `role:delete` - 删除角色
- `role:assign` - 分配角色
### 权限管理权限
- `permission:create` - 创建权限
- `permission:read` - 查看权限
- `permission:update` - 更新权限
- `permission:delete` - 删除权限
### 菜单管理权限
- `menu:create` - 创建菜单
- `menu:read` - 查看菜单
- `menu:update` - 更新菜单
- `menu:delete` - 删除菜单
### 数据字典权限
- `dict:create` - 创建字典
- `dict:read` - 查看字典
- `dict:update` - 更新字典
- `dict:delete` - 删除字典
### 系统配置权限
- `config:create` - 创建配置
- `config:read` - 查看配置
- `config:update` - 更新配置
- `config:delete` - 删除配置
### 日志管理权限
- `log:read` - 查看日志
- `log:delete` - 删除日志
## 🚀 使用方法
### 1. 登录系统
使用以下 API 登录:
```bash
POST /api/auth/login
Content-Type: application/json
{
"username": "admin",
"password": "cms@admin"
}
```
### 2. 响应示例
```json
{
"code": 200,
"message": "success",
"data": {
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"user": {
"id": 1,
"username": "admin",
"nickname": "超级管理员",
"email": "admin@example.com",
"avatar": null,
"roles": ["super_admin"],
"permissions": [
"user:create",
"user:read",
"user:update",
"user:delete"
// ... 所有 27 个权限
]
}
}
}
```
### 3. 使用 Token 访问 API
```bash
GET /api/users
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
```
## 🔄 重新初始化
如果需要重新初始化超级管理员账号,可以运行:
```bash
cd backend
pnpm init:admin
```
脚本会:
- ✅ 创建/更新所有基础权限27个
- ✅ 创建/更新超级管理员角色
- ✅ 创建/更新 admin 用户
- ✅ 分配角色给用户
**注意**: 如果用户已存在,密码会被重置为 `cms@admin`
## 🔍 验证账号
验证超级管理员账号是否创建成功:
```bash
cd backend
node scripts/verify-admin.js
```
## ⚠️ 安全建议
1. **首次登录后立即修改密码**
2. **生产环境使用强密码**
3. **定期更换密码**
4. **不要将密码提交到版本控制**
## 📝 修改密码
可以通过以下方式修改密码:
### 方式一:通过 API
```bash
PATCH /api/users/1
Authorization: Bearer <token>
Content-Type: application/json
{
"password": "new_strong_password"
}
```
### 方式二:通过数据库
```sql
-- 需要先使用 bcrypt 加密密码
UPDATE users
SET password = '<bcrypt_hashed_password>'
WHERE username = 'admin';
```
### 方式三:通过脚本
可以修改 `scripts/init-admin.ts` 中的密码,然后重新运行脚本。
## 🎯 下一步
1. ✅ 使用 admin 账号登录系统
2. ✅ 创建其他角色(如:编辑、查看者等)
3. ✅ 创建其他用户并分配角色
4. ✅ 配置菜单权限
5. ✅ 开始使用系统