rishabh4o4/cti-platform
GitHub: rishabh4o4/cti-platform
一个基于 FastAPI 的网络威胁情报平台后端骨架,提供完整的数据库、缓存、任务队列和认证等基础设施,但采集器和 AI 模型管道尚未实现。
Stars: 0 | Forks: 0
# AI 有害内容检测后端
适用于威胁情报架构的生产级 FastAPI 后端骨架。它包含 PostgreSQL 模型、Alembic 迁移、Redis、Celery 队列、Docker Compose、认证原语,以及用于内容、分析、告警、仪表盘数据和采集器控制的 API 路由。
采集器和 AI 模型 pipeline 有意暂未实现。它们的任务入口点会返回明确的占位符元数据,以便系统的其余部分能够安全地进行连接、测试和扩展。
## 快速开始
```
# 1. Bootstrap 环境变量
copy .env.example .env
# 编辑 .env 并设置三个 REQUIRED 密钥:
# JWT_SECRET_KEY — 使用以下命令生成:python -c "import secrets; print(secrets.token_hex(32))"
# ANALYST_PASSWORD — 强密码(启动时自动进行 bcrypt 哈希处理)
# MINIO_SECRET_KEY — 强壮的 MinIO secret
# 可选调优:
# GUNICORN_WORKERS — 默认为 2。计算公式:(2 × CPU_cores) + 1
# NEO4J_MAX_POOL_SIZE — 默认为 10。
# 2. 启动所有服务(Backend + Frontend + DBs)
docker compose -f docker-compose.prod.yml up --build
```
UI 将在 `http://localhost:80`(或 `http://localhost`,具体取决于您的设置)可用。
API 将在 `http://localhost:8000` 可用。
Neo4j 图数据库浏览器 UI 可在 `http://localhost:7474` 访问。
常用 endpoint:
- `GET /api/v1/health` — 存活探针 (无需认证)
- `GET /api/v1/health/deep` — 深度依赖检查 (需要 JWT)
- `GET /api/v1/graph/stats` — Neo4j 图节点和边统计信息
- `POST /api/v1/auth/token`
- `POST /api/v1/content/ingest`
- `GET /api/v1/content`
- `GET /api/v1/dashboard/summary`
## 本地开发
```
cd backend
python -m venv .venv
.venv\Scripts\activate
pip install -e ".[dev]"
alembic upgrade head
uvicorn app.main:app --reload
```
运行测试:
```
cd backend
pytest
```
## 架构说明
- FastAPI 是唯一对外暴露的应用服务。
- PostgreSQL 用于存储持久化证据和操作记录。
- Redis 被用作 Celery broker、result backend 以及仪表盘/配置缓存。
- Celery 队列按未来的工作负载进行拆分:`ingest`、`nlp`、`vision`、`scoring` 和 `alerts`。
- `content_items` 通过 `deleted_at` 进行软删除;API 路由不会对其进行硬删除。
- `analysis_results` 是只追加的,并由 `model_version` 进行版本控制。
- 采集器控制 endpoint 已存在,但采集器的实现被推迟。
- NLP 和 vision worker 仅作为占位符;不包含任何模型推理代码。
## 默认本地认证
仪表盘类路由使用 JWT bearer 认证。本地凭据来自 `.env`:
- `ANALYST_USERNAME`
- `ANALYST_PASSWORD` — 在 `.env` 中以明文形式存储,**在启动时会自动进行 bcrypt 哈希处理**
内部服务调用可以使用:
- `X-API-Key: `
在生产部署之前,请将这些原语替换为 IdP 或政府 SSO 集成。
## 首次迁移
在骨架中,`alembic/versions/` 目录是空的。请生成初始 schema:
```
cd backend
alembic revision --autogenerate -m "initial_schema"
alembic upgrade head
```
标签:AV绕过, Docker, FastAPI, Naabu, 人工智能, 内容安全, 后端开发, 威胁情报, 安全防御评估, 开发者工具, 搜索引擎查询, 测试用例, 版权保护, 用户模式Hook绕过, 逆向工具