44 lines
1.7 KiB
Markdown
44 lines
1.7 KiB
Markdown
# 系统运行与配置当前行为
|
||
|
||
## Purpose
|
||
|
||
描述健康检查、受控系统配置和全局操作密码的当前行为。
|
||
|
||
## Requirements
|
||
|
||
### Requirement: 健康检查响应语义
|
||
|
||
系统 SHALL 让公开 `/health` 固定返回统一成功响应及 `healthy`,让公开 `/ready` 固定返回统一成功响应及 `ready`;当前可达入口不检查 PostgreSQL 或 Redis。
|
||
|
||
#### Scenario: 依赖状态不参与健康响应
|
||
|
||
- **GIVEN** 应用能够处理 HTTP 请求
|
||
- **WHEN** 调用 `/health` 或 `/ready`
|
||
- **THEN** 系统分别返回 `healthy` 或 `ready`,响应不包含 PostgreSQL 或 Redis 的探测结果
|
||
|
||
### Requirement: 受控系统配置更新
|
||
|
||
系统 SHALL 只允许超级管理员更新已注册且非只读的配置 Key;系统先在事务外完成权限、注册、只读和值校验,再在同一事务内持久化配置并写成功审计;可审计失败通过独立失败接缝记录,敏感值查询时以已配置占位符返回。
|
||
|
||
#### Scenario: 更新只读或未注册配置
|
||
|
||
- **GIVEN** 配置 Key 未注册、只读或值不符合注册规则
|
||
- **WHEN** 超级管理员请求更新
|
||
- **THEN** 系统拒绝更新并保留原数据库事实;可审计失败按当前接缝记录
|
||
|
||
## 可达操作索引
|
||
|
||
本节只用于入口导航,不是行为 Requirement;业务义务以上述 Requirements 为准。
|
||
|
||
### 系统配置
|
||
|
||
`GET /api/admin/system-configs`(查询受控系统配置);`PUT /api/admin/system-configs/{key}`(更新受控系统配置)。
|
||
|
||
### 超级管理员
|
||
|
||
`POST /api/admin/super-admin/operation-password`(设置/修改全局操作密码);`GET /api/admin/super-admin/operation-password/status`(查询操作密码是否已设置)。
|
||
|
||
### 系统
|
||
|
||
`GET /health`(健康检查);`GET /ready`(就绪检查)。
|