- New ARCHITECTURE.md (3-layer model + data flow + lifecycle matrix) - New PERMISSIONS.md (grant calculation rules + enforcement) - New ADMIN_GUIDE.md (華文极简:Customer/CustomerProduct 授权 + Product/Resource 管理) - Rewrite N8N_WORKFLOWS.md from WF1-6 (obsolete) to actual W1/W2/W3 - Update DATABASE_SCHEMA.md: fix status enum (drop 'disabled'), add 5-status semantics - Update README.md doc index
73 lines
2.5 KiB
Markdown
73 lines
2.5 KiB
Markdown
# AList Serve Resource — 客户文件权限与到期管理系统
|
||
|
||
在 Docker 上运行的客户数字文件交付系统:
|
||
|
||
- **AList** = 文件浏览/预览/下载入口(stock image,不 fork、不嵌 custom code)
|
||
- **NocoDB** = 业务授权 Source of Truth(客户/产品/授权/到期)
|
||
- **n8n** = 同步器(NocoDB ↔ AList 官方 Admin API)
|
||
|
||
## 架构
|
||
|
||
```
|
||
Internet
|
||
│
|
||
▼
|
||
DSM nginx (access.hoelee.com)
|
||
│
|
||
▼
|
||
AList (stock, 只读挂载 NAS)
|
||
▲
|
||
│ 内网 Admin API(http://alist-serve-resource:5244)
|
||
│
|
||
n8n ──► NocoDB(授权 SOT)
|
||
```
|
||
|
||
- 客户只经 AList 入口访问,默认严格 read-only(权限 bitmask `0` + Check path limit)。
|
||
- 每个客户 = 1 个 AList User + 1 个专属 Role + 多个 path scopes,每个 scope 独立到期(规格 §8)。
|
||
- 到期/禁用由 NocoDB + n8n 定时同步撤销,AList 不存业务授权数据。
|
||
|
||
## 目录结构
|
||
|
||
```
|
||
alist-serve-resource/
|
||
├── docker-compose.yml # 仅 AList(stock)
|
||
├── .env.example # 所有 secrets 模板(复制为 .env)
|
||
├── .gitignore
|
||
├── docs/
|
||
│ ├── API_INTEGRATION.md # ★ AList API 源码级验证
|
||
│ ├── ARCHITECTURE.md # 三层职责与数据流
|
||
│ ├── PERMISSIONS.md # 权限计算规则
|
||
│ ├── ADMIN_GUIDE.md # ★ 管理员操作指南(华文,极简)
|
||
│ ├── INSTALL.md
|
||
│ ├── CONFIGURATION.md
|
||
│ ├── DATABASE_SCHEMA.md
|
||
│ ├── N8N_WORKFLOWS.md
|
||
│ ├── SECURITY.md
|
||
│ ├── BACKUP_RESTORE.md
|
||
│ ├── UPGRADE.md
|
||
│ └── TROUBLESHOOTING.md
|
||
├── n8n/workflows/ # n8n workflow JSON 导出
|
||
└── scripts/ # backup/restore/healthcheck
|
||
```
|
||
|
||
## 快速开始
|
||
|
||
见 [docs/INSTALL.md](docs/INSTALL.md)。
|
||
|
||
## 关键结论
|
||
|
||
规格文档 §11 担心的「Role scope 是否能用 API 管理」——**答案是能**(`v3.63.0` 源码级验证,
|
||
完整 Role CRUD)。无需 fork、无需 integration service。详见
|
||
[docs/API_INTEGRATION.md](docs/API_INTEGRATION.md)。
|
||
|
||
## 与旧 alist 的区别
|
||
|
||
| | 旧 alist | 新 alist-serve-resource |
|
||
|---|---|---|
|
||
| 镜像 | `xhofe/alist:v3.54.0` | `xhofe/alist:v3.63.0` |
|
||
| custom.js/css 注入 | 有(custom made) | **无**(纯 stock) |
|
||
| 入口链 | nginx-limit → traefik-update → alist | DSM nginx → alist(直连) |
|
||
| 权限/到期 | 内嵌业务逻辑 | NocoDB + n8n + 官方 API |
|
||
| 端口 | 5244/5245/5246 | 5247 |
|
||
| 数据目录 | `/volume1/docker/alist` | `/volume1/docker/alist-serve-resource` |
|