# 1376524890/data-security-toolbox architecture

> Architecture diagram of the GitHub repository 1376524890/data-security-toolbox, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-30). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/1376524890/data-security-toolbox
- Repository: https://github.com/1376524890/data-security-toolbox

## Overview

这是一个数据安全检测工具箱：目标机探针采集并上报，Web 用户也可上传样本发起五类分析；后端提供任务、分析和结果接口，前端呈现仪表盘、报告与分析结果。README 还描述 PostgreSQL、Redis 和 Celery worker。后端及探针源文件未提供，相关内部调用只能按 README 所述能力概括；前端到 API 客户端的调用由已展示源码支持。

Main entry points: [`web/src/App.vue`](https://github.com/1376524890/data-security-toolbox/blob/master/web/src/App.vue) (应用界面与路由), [`server`](https://github.com/1376524890/data-security-toolbox/tree/master/server) (FastAPI 后端), [`web/src/api/index.js`](https://github.com/1376524890/data-security-toolbox/blob/master/web/src/api/index.js) (API 客户端), [`web/src/views/Dashboard.vue`](https://github.com/1376524890/data-security-toolbox/blob/master/web/src/views/Dashboard.vue) (仪表盘)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_web["Web 控制台"]
  node_shell["应用界面与路由<br/>[App.vue]"]
  node_api["API 客户端<br/>[index.js]"]
  node_dashboard["仪表盘<br/>[Dashboard.vue]"]
  node_probe_ui["探针管理<br/>[Probes.vue]"]
  node_tasks_ui["任务管理<br/>[Tasks.vue]"]
  node_reports_ui["报告中心<br/>[Reports.vue]"]
  node_asset_ui["资产识别<br/>[AssetResults.vue]"]
  node_metadata_ui["元数据分析"]
  node_algo_ui["算法评估<br/>[AlgoResults.vue]"]
  node_protocol_ui["协议分析"]
  node_traffic_ui["流量分析<br/>[TrafficResults.vue]"]
  node_regex_ui["正则生成<br/>[RegexGen.vue]"]
end

subgraph group_collection["探针采集"]
  node_probe["采集探针"]
end

subgraph group_analysis["检测与报告"]
  node_backend["FastAPI 后端"]
  node_asset_engine["资产识别引擎"]
  node_metadata_engine["元数据引擎"]
  node_algo_engine["算法评估引擎"]
  node_protocol_engine["协议分析引擎"]
  node_traffic_engine["流量分析引擎"]
  node_regex_engine["正则生成工具"]
end

subgraph group_runtime["运行服务"]
  node_postgres[("PostgreSQL")]
  node_redis[("Redis")]
  node_worker["Celery worker"]
end

node_user(("安全分析人员"))

node_user -->|"uses"| node_shell
node_shell -->|"routes to"| node_dashboard
node_shell -->|"routes to"| node_probe_ui
node_shell -->|"routes to"| node_tasks_ui
node_shell -->|"routes to"| node_reports_ui
node_shell -->|"routes to"| node_asset_ui
node_shell -->|"routes to"| node_metadata_ui
node_shell -->|"routes to"| node_algo_ui
node_shell -->|"routes to"| node_protocol_ui
node_shell -->|"routes to"| node_traffic_ui
node_shell -->|"routes to"| node_regex_ui
node_dashboard -->|"calls"| node_api
node_probe_ui -->|"calls"| node_api
node_tasks_ui -->|"calls"| node_api
node_reports_ui -->|"calls"| node_api
node_asset_ui -->|"calls"| node_api
node_metadata_ui -->|"calls"| node_api
node_algo_ui -->|"calls"| node_api
node_protocol_ui -->|"calls"| node_api
node_traffic_ui -->|"calls"| node_api
node_regex_ui -->|"calls"| node_api
node_api -->|"HTTP requests"| node_backend
node_probe -->|"registers, uploads"| node_backend
node_backend -.->|"dispatches"| node_asset_engine
node_backend -.->|"dispatches"| node_metadata_engine
node_backend -.->|"dispatches"| node_algo_engine
node_backend -.->|"dispatches"| node_protocol_engine
node_backend -.->|"dispatches"| node_traffic_engine
node_backend -.->|"dispatches"| node_regex_engine
node_backend -.->|"stores data"| node_postgres
node_backend -.->|"uses cache"| node_redis
node_worker -.->|"uses queue"| node_redis

click node_shell "https://github.com/1376524890/data-security-toolbox/blob/master/web/src/App.vue"
click node_api "https://github.com/1376524890/data-security-toolbox/blob/master/web/src/api/index.js"
click node_dashboard "https://github.com/1376524890/data-security-toolbox/blob/master/web/src/views/Dashboard.vue"
click node_probe_ui "https://github.com/1376524890/data-security-toolbox/blob/master/web/src/views/Probes.vue"
click node_tasks_ui "https://github.com/1376524890/data-security-toolbox/blob/master/web/src/views/Tasks.vue"
click node_reports_ui "https://github.com/1376524890/data-security-toolbox/blob/master/web/src/views/Reports.vue"
click node_asset_ui "https://github.com/1376524890/data-security-toolbox/blob/master/web/src/views/AssetResults.vue"
click node_metadata_ui "https://github.com/1376524890/data-security-toolbox/blob/master/web/src/views/MetadataResults.vue"
click node_algo_ui "https://github.com/1376524890/data-security-toolbox/blob/master/web/src/views/AlgoResults.vue"
click node_protocol_ui "https://github.com/1376524890/data-security-toolbox/blob/master/web/src/views/ProtocolResults.vue"
click node_traffic_ui "https://github.com/1376524890/data-security-toolbox/blob/master/web/src/views/TrafficResults.vue"
click node_regex_ui "https://github.com/1376524890/data-security-toolbox/blob/master/web/src/views/RegexGen.vue"
click node_probe "https://github.com/1376524890/data-security-toolbox/tree/master/probe"
click node_backend "https://github.com/1376524890/data-security-toolbox/tree/master/server"
click node_asset_engine "https://github.com/1376524890/data-security-toolbox/tree/master/server"
click node_metadata_engine "https://github.com/1376524890/data-security-toolbox/tree/master/server"
click node_algo_engine "https://github.com/1376524890/data-security-toolbox/tree/master/server"
click node_protocol_engine "https://github.com/1376524890/data-security-toolbox/tree/master/server"
click node_traffic_engine "https://github.com/1376524890/data-security-toolbox/tree/master/server"
click node_regex_engine "https://github.com/1376524890/data-security-toolbox/tree/master/server"
click node_worker "https://github.com/1376524890/data-security-toolbox/tree/master/server"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_shell,node_api,node_dashboard,node_probe_ui,node_tasks_ui,node_reports_ui,node_asset_ui,node_metadata_ui,node_algo_ui,node_protocol_ui,node_traffic_ui,node_regex_ui toneBlue
class node_probe toneAmber
class node_backend,node_asset_engine,node_metadata_engine,node_algo_engine,node_protocol_engine,node_traffic_engine,node_regex_engine toneMint
class node_postgres,node_redis,node_worker toneRose
class node_user toneIndigo
```

## Components

### Web 控制台

- [应用界面与路由](https://github.com/1376524890/data-security-toolbox/blob/master/web/src/App.vue): `web/src/App.vue`
- [API 客户端](https://github.com/1376524890/data-security-toolbox/blob/master/web/src/api/index.js): `web/src/api/index.js`
- [仪表盘](https://github.com/1376524890/data-security-toolbox/blob/master/web/src/views/Dashboard.vue): `web/src/views/Dashboard.vue`
- [探针管理](https://github.com/1376524890/data-security-toolbox/blob/master/web/src/views/Probes.vue): `web/src/views/Probes.vue`
- [任务管理](https://github.com/1376524890/data-security-toolbox/blob/master/web/src/views/Tasks.vue): `web/src/views/Tasks.vue`
- [报告中心](https://github.com/1376524890/data-security-toolbox/blob/master/web/src/views/Reports.vue): `web/src/views/Reports.vue`
- [资产识别](https://github.com/1376524890/data-security-toolbox/blob/master/web/src/views/AssetResults.vue): `web/src/views/AssetResults.vue`
- [元数据分析](https://github.com/1376524890/data-security-toolbox/blob/master/web/src/views/MetadataResults.vue): `web/src/views/MetadataResults.vue`
- [算法评估](https://github.com/1376524890/data-security-toolbox/blob/master/web/src/views/AlgoResults.vue): `web/src/views/AlgoResults.vue`
- [协议分析](https://github.com/1376524890/data-security-toolbox/blob/master/web/src/views/ProtocolResults.vue): `web/src/views/ProtocolResults.vue`
- [流量分析](https://github.com/1376524890/data-security-toolbox/blob/master/web/src/views/TrafficResults.vue): `web/src/views/TrafficResults.vue`
- [正则生成](https://github.com/1376524890/data-security-toolbox/blob/master/web/src/views/RegexGen.vue): `web/src/views/RegexGen.vue`

### 探针采集

- [采集探针](https://github.com/1376524890/data-security-toolbox/tree/master/probe): `probe`

### 检测与报告

- [FastAPI 后端](https://github.com/1376524890/data-security-toolbox/tree/master/server): `server`
- [资产识别引擎](https://github.com/1376524890/data-security-toolbox/tree/master/server): `server`
- [元数据引擎](https://github.com/1376524890/data-security-toolbox/tree/master/server): `server`
- [算法评估引擎](https://github.com/1376524890/data-security-toolbox/tree/master/server): `server`
- [协议分析引擎](https://github.com/1376524890/data-security-toolbox/tree/master/server): `server`
- [流量分析引擎](https://github.com/1376524890/data-security-toolbox/tree/master/server): `server`
- [正则生成工具](https://github.com/1376524890/data-security-toolbox/tree/master/server): `server`

### 运行服务

- **PostgreSQL**
- **Redis**
- [Celery worker](https://github.com/1376524890/data-security-toolbox/tree/master/server): `server`

### Other components

- **安全分析人员**

## Connections

- 安全分析人员 → 应用界面与路由: uses (evidence: `web/src/App.vue`)
- 应用界面与路由 → 仪表盘: routes to
- 应用界面与路由 → 探针管理: routes to
- 应用界面与路由 → 任务管理: routes to
- 应用界面与路由 → 报告中心: routes to
- 应用界面与路由 → 资产识别: routes to
- 应用界面与路由 → 元数据分析: routes to
- 应用界面与路由 → 算法评估: routes to
- 应用界面与路由 → 协议分析: routes to
- 应用界面与路由 → 流量分析: routes to
- 应用界面与路由 → 正则生成: routes to
- 仪表盘 → API 客户端: calls (evidence: `web/src/views/Dashboard.vue`)
- 探针管理 → API 客户端: calls (evidence: `web/src/views/Probes.vue`)
- 任务管理 → API 客户端: calls (evidence: `web/src/views/Tasks.vue`)
- 报告中心 → API 客户端: calls (evidence: `web/src/views/Reports.vue`)
- 资产识别 → API 客户端: calls (evidence: `web/src/views/AssetResults.vue`)
- 元数据分析 → API 客户端: calls (evidence: `web/src/views/MetadataResults.vue`)
- 算法评估 → API 客户端: calls (evidence: `web/src/views/AlgoResults.vue`)
- 协议分析 → API 客户端: calls (evidence: `web/src/views/ProtocolResults.vue`)
- 流量分析 → API 客户端: calls (evidence: `web/src/views/TrafficResults.vue`)
- 正则生成 → API 客户端: calls (evidence: `web/src/views/RegexGen.vue`)
- API 客户端 → FastAPI 后端: HTTP requests (evidence: `web/src/api/index.js`)
- 采集探针 → FastAPI 后端: registers, uploads (evidence: `README.md`)
- FastAPI 后端 → 资产识别引擎: dispatches (evidence: `README.md`)
- FastAPI 后端 → 元数据引擎: dispatches (evidence: `README.md`)
- FastAPI 后端 → 算法评估引擎: dispatches (evidence: `README.md`)
- FastAPI 后端 → 协议分析引擎: dispatches (evidence: `README.md`)
- FastAPI 后端 → 流量分析引擎: dispatches (evidence: `README.md`)
- FastAPI 后端 → 正则生成工具: dispatches (evidence: `README.md`)
- FastAPI 后端 → PostgreSQL: stores data (evidence: `README.md`)
- FastAPI 后端 → Redis: uses cache (evidence: `README.md`)
- Celery worker → Redis: uses queue (evidence: `README.md`)
