forked from wangziqi/gongxue-base
feat: harden content asset access
This commit is contained in:
@@ -91,14 +91,16 @@
|
||||
| --- | --- | --- |
|
||||
| 内容资源台账 | 可联调 | `content_assets` |
|
||||
| 租户后台资源维护 | 可联调 | `/api/tenant-content/assets` |
|
||||
| 学生端资源列表/下载签名 | 可联调 | `/api/catalog/assets`、`/api/catalog/assets/download` |
|
||||
| 学生端资源列表/下载签名 | 可联调 | `/api/catalog/assets`、`/api/catalog/assets/download`;学生端锁定资源使用短 TTL,访问事件写入 `content_asset_access_events` |
|
||||
| 阿里云 OSS 签名 | 可联调 | `aliyun_oss` provider |
|
||||
| 腾讯 COS 签名 | 可联调 | `tencent_cos` provider |
|
||||
| Supabase Storage 签名 | 可联调 | `supabase_storage` provider |
|
||||
| 上传后对象校验 | 可联调 | `/api/tenant-content/assets/confirm-upload`;托管对象必须 verified 后才能发布/下载 |
|
||||
| PDF/图片预览签名 | 可联调 | `/api/catalog/assets/preview`、`/api/tenant-content/assets/sign-preview`;使用 inline 短期签名 |
|
||||
| PDF/图片预览签名 | 可联调 | `/api/catalog/assets/preview`、`/api/tenant-content/assets/sign-preview`;使用 inline 短期签名,学生预览默认短 TTL |
|
||||
| 托管资源 worker 复检 | 可联调 | `apps/worker --job assets` 定期复检 pending/verified 对象元数据;异常资源会标记 failed 并从 active 退回 draft,写入审计和 `security_flags` |
|
||||
| 深度防盗链/水印/杀毒 | 待补齐 | 商用上线前继续补 CDN 防盗链、动态水印、安全扫描和对象生命周期策略 |
|
||||
| 资源访问审计 | 可联调 | `content_asset_access_events` + `GET /api/tenant-content/assets/access-events`;记录上传签名/确认、学生下载/预览、后台下载/预览的 granted/denied、TTL、签名模式、IP 和 UA |
|
||||
| CDN 访问边界 | 可联调 | `members/svip/private` 外部 CDN URL 默认拒绝,必须显式 `metadata.providerManagedAccess=true` 或 `cdnAccessMode=signed_by_provider`;视频绑定资源也复用该规则 |
|
||||
| 深度防盗链/水印/杀毒 | 待补齐 | 商用上线前继续补动态水印、安全扫描、CDN 刷新和对象生命周期策略 |
|
||||
|
||||
## 订单、会员、营销
|
||||
|
||||
|
||||
Reference in New Issue
Block a user