feat(admin): 添加管理员评论密钥功能和安全设置

- 在管理后台添加管理员评论密钥设置,前台管理员评论需验证
- 新增安全设置区块,包含允许调用域名和管理员密钥配置
- 更新相关API文档和前端配置说明
- 调整评论配置接口返回字段,增加密钥相关字段
This commit is contained in:
anghunk
2026-01-20 17:06:33 +08:00
parent 5fdbc5077b
commit 23c27d9562
6 changed files with 54 additions and 21 deletions

View File

@@ -432,7 +432,7 @@ Token 通过登录接口获取,有效期为 24 小时。
## GET /admin/settings/comments
获取评论配置,例如博主邮箱、徽标头像前缀等。
获取评论配置,例如博主邮箱、徽标头像前缀、管理员密钥等。
- 方法:`GET`
- 路径:`/admin/settings/comments`
@@ -448,11 +448,23 @@ Token 通过登录接口获取,有效期为 24 小时。
"adminBadge": "博主",
"avatarPrefix": "https://gravatar.com/avatar",
"adminEnabled": true,
"allowedDomains": []
"allowedDomains": [],
"adminKey": "your-admin-key",
"adminKeySet": true
}
```
字段说明公开接口 `/api/config/comments` 一致。
字段说明(相比公开接口 `/api/config/comments` 增加了管理员密钥相关字段):
| 字段名 | 类型 | 说明 |
| -------------- | ------- | -------------------------------------------------------- |
| `adminEmail` | string | 博主邮箱地址,用于显示“博主”标识以及管理员身份验证 |
| `adminBadge` | string | 博主标识文字,例如 `"博主"` |
| `avatarPrefix` | string | 头像地址前缀,如 Gravatar 或 Cravatar 镜像地址 |
| `adminEnabled` | boolean | 是否启用博主标识相关展示 |
| `allowedDomains` | Array\<string\> | 允许调用组件的域名列表,留空则不限制 |
| `adminKey` | string\|null | 管理员评论密钥(明文),仅通过管理后台接口返回 |
| `adminKeySet` | boolean | 是否已经设置过管理员评论密钥 |
### 错误响应
@@ -486,19 +498,21 @@ Token 通过登录接口获取,有效期为 24 小时。
"adminBadge": "站长",
"avatarPrefix": "https://cravatar.cn/avatar",
"adminEnabled": true,
"allowedDomains": []
"allowedDomains": [],
"adminKey": "your-admin-key"
}
```
字段说明:
| 字段名 | 类型 | 必填 | 说明 |
| ---------------- | ------- | ---- | ---------------------------------------------- |
| `adminEmail` | string | 否 | 博主邮箱地址,需为合法邮箱 |
| `adminBadge` | string | 否 | 博主标识文字,例如 `"博主"` |
| `avatarPrefix` | string | 否 | 头像地址前缀,如 Gravatar 或 Cravatar 镜像地址 |
| `adminEnabled` | boolean | 否 | 是否启用博主标识相关功能 |
| `allowedDomains` | Array | 否 | 是否允许前端调用的域名 |
| 字段名 | 类型 | 必填 | 说明 |
| ---------------- | ------- | ---- | -------------------------------------------------------------------- |
| `adminEmail` | string | 否 | 博主邮箱地址,需为合法邮箱 |
| `adminBadge` | string | 否 | 博主标识文字,例如 `"博主"` |
| `avatarPrefix` | string | 否 | 头像地址前缀,如 Gravatar 或 Cravatar 镜像地址 |
| `adminEnabled` | boolean | 否 | 是否启用博主标识相关展示 |
| `allowedDomains` | Array | 否 | 允许前端调用组件的域名列表 |
| `adminKey` | string | 否 | 管理员评论密钥,留空则表示清除密钥;设置后前台管理员评论需输入密钥 |
### 成功响应