Skip to content

erhai925/DataRisk

Repository files navigation

数据安全风险评估管理平台

基于《GB/T 45577-2025 数据安全风险评估方法》国家标准的数据安全风险评估管理平台。

📖 文档导航:

项目概述

本平台旨在实现数据安全风险评估全流程数字化管理,自动化识别与评估数据安全管理、数据处理活动安全、数据安全技术及个人信息保护风险,提供可量化的风险分析与评价能力,支持风险处置建议与跟踪闭环,满足监管合规要求。

技术架构

架构设计

  • 架构模式: 微服务架构
  • 后端框架: Python FastAPI
  • 前端框架: React + TypeScript
  • 数据库: PostgreSQL (主库) + Redis (缓存)
  • 消息队列: RabbitMQ
  • 容器化: Docker + Docker Compose

服务划分

  1. API Gateway: API网关服务
  2. Assessment Preparation: 评估准备管理服务
  3. Risk Assessment: 风险评估服务
  4. Tech Detection: 技术检测服务
  5. Risk Analysis: 风险分析服务
  6. Risk Disposal: 风险处置服务
  7. Report Management: 报告管理服务
  8. Data Management: 数据管理服务
  9. Integration: 系统集成服务
  10. Security: 安全服务

核心功能模块

1. 评估准备管理

  • 评估目标管理
  • 评估范围配置
  • 评估团队管理
  • 评估方案管理

2. 风险识别与评估

  • 数据安全管理评估
  • 数据处理活动安全评估
  • 数据安全技术评估
  • 个人信息保护评估

3. 技术检测能力

  • 自动化资产发现
  • 合规性扫描
  • 敏感数据检测
  • 安全控制验证

4. 风险分析与评价

  • 风险量化模型
  • 风险关联分析
  • 合规差距分析
  • 历史风险趋势

5. 风险处置管理

  • 处置建议库
  • 整改任务管理
  • 残余风险评估
  • 次生风险预警

6. 报告管理

  • 标准报告模板
  • 可视化风险展示
  • 一键生成报告
  • 历史报告管理

快速开始

5分钟快速启动: 查看 快速开始指南
完整操作手册: 查看 操作手册
系统配置说明: 查看 系统配置模块
数据库初始化: 查看 数据库初始化指南
初始化测试数据: 查看 完整测试数据指南

环境要求

本地模式(推荐,无需 Docker):

  • Python 3.10+ 和 pip
  • Node.js 18+ 和 npm
  • PostgreSQL 14+ (本地安装)
  • Redis 6+ (本地安装)
  • RabbitMQ 3.9+ (可选,本地安装)

如果未安装 Python: 查看 Python 安装指南

Docker 模式(可选):

  • Docker & Docker Compose

安装 Docker

重要: 首先需要安装 Docker,然后才能使用 Docker Compose。

方式1: Docker Desktop (推荐,适用于 macOS/Windows)

  1. 下载 Docker Desktop:

  2. 安装并启动 Docker Desktop

  3. 等待 Docker 启动完成(系统托盘图标显示运行中)

  4. 验证安装:

    docker --version
    docker ps

方式2: 命令行安装 (Linux)

# Ubuntu/Debian
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

# CentOS/RHEL
sudo yum install -y docker
sudo systemctl start docker
sudo systemctl enable docker

方式3: 使用 Homebrew (macOS)

brew install --cask docker
# 然后启动 Docker Desktop 应用

检查 Docker 安装:

cd /Users/yue/CursorTest/DataRisk
./scripts/check-docker.sh
#
make check-docker

安装 Docker Compose

Docker Desktop 已内置 Docker Compose。如果遇到 docker-compose: command not found 错误,请按以下方式安装:

方式1: 使用 Docker Desktop (推荐)

方式2: 独立安装 docker-compose

# Linux
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

# macOS (使用 Homebrew)
brew install docker-compose

# 验证安装
docker-compose --version
#
docker compose version

注意:

  • 新版本 Docker Desktop 使用 docker compose(没有连字符)
  • 旧版本或独立安装使用 docker-compose(有连字符)
  • 本项目文档中两种格式都可以使用,请根据您的环境选择

检查 Docker Compose 安装:

cd /Users/yue/CursorTest/DataRisk
./scripts/check-docker-compose.sh

安装步骤(本地模式)

  1. 安装本地服务

必需服务: PostgreSQL、Redis
可选服务: RabbitMQ(如果安装困难可以暂时跳过,见下方说明)

macOS 用户:

如果已安装 Homebrew:

brew install postgresql@14 redis rabbitmq
brew services start postgresql@14 redis rabbitmq

如果未安装 Homebrew,请先安装:

# 如果遇到网络问题,使用国内镜像安装 Homebrew
export HOMEBREW_BREW_GIT_REMOTE="https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git"
export HOMEBREW_CORE_GIT_REMOTE="https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git"
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# 然后安装服务
brew install postgresql@14 redis rabbitmq
brew services start postgresql@14 redis rabbitmq

网络问题? 查看 Homebrew 国内安装指南

下载失败? 如果遇到下载错误,运行:

./scripts/configure-homebrew-mirror.sh

这将配置 Homebrew 使用国内镜像,解决所有下载问题。

快速修复: 查看 快速修复指南

如果遇到依赖下载失败(如 wxwidgets):

  • 可以只安装必需服务: brew install postgresql@14 redis
  • RabbitMQ 可以暂时跳过,项目仍可运行(见 不安装 RabbitMQ 指南
  • 或使用源码编译: brew install --build-from-source postgresql@14

或使用官方安装包:

Linux 用户 (Ubuntu/Debian):

sudo apt-get update
sudo apt-get install postgresql-14 redis-server rabbitmq-server
sudo systemctl start postgresql redis-server rabbitmq-server
sudo systemctl enable postgresql redis-server rabbitmq-server

Linux 用户 (CentOS/RHEL):

sudo yum install postgresql14-server redis rabbitmq-server
sudo systemctl start postgresql-14 redis rabbitmq-server
sudo systemctl enable postgresql-14 redis rabbitmq-server
  1. 运行自动设置脚本
./scripts/setup-local.sh
  1. 安装依赖并启动
# 安装 Python 依赖
cd shared
# 如果 pip 不可用,使用 pip3 或 python3 -m pip
pip3 install -r requirements.txt
# 或: python3 -m pip install -r requirements.txt

# 安装前端依赖
cd ../frontend && npm install

# 启动开发环境
cd .. && make dev-local

如果遇到 pip: command not found:

如果 PostgreSQL 未运行或启动失败:

方法1: 初始化并启动(如果数据目录不存在):

make init-postgresql
#
./scripts/init-postgresql.sh

方法2: 修复 Bootstrap 失败:

# 清理并重启
brew services stop postgresql@14 && \
launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.postgresql@14.plist 2>/dev/null || true && \
rm -f ~/Library/LaunchAgents/homebrew.mxcl.postgresql@14.plist && \
brew services start postgresql@14

方法3: 手动启动:

# Apple Silicon Mac:
pg_ctl -D /opt/homebrew/var/postgresql@14 start

# Intel Mac:
pg_ctl -D /usr/local/var/postgresql@14 start

详细说明: 查看 快速修复指南PostgreSQL 故障排查指南

或使用 Makefile 一键操作:

make install      # 安装所有依赖
make setup-local  # 初始化本地环境
make start-postgresql  # 启动 PostgreSQL(如果需要)
make dev-local    # 启动开发环境(会自动启动必需服务)

详细说明: 请查看 本地环境设置指南

项目结构

DataRisk/
├── backend/              # 后端微服务
│   ├── api-gateway/     # API网关
│   ├── assessment-prep/  # 评估准备管理
│   ├── risk-assessment/ # 风险评估
│   ├── tech-detection/  # 技术检测
│   ├── risk-analysis/   # 风险分析
│   ├── risk-disposal/   # 风险处置
│   ├── report/          # 报告管理
│   ├── data-management/ # 数据管理
│   ├── integration/     # 系统集成
│   └── security/        # 安全服务
├── frontend/            # 前端应用
├── shared/              # 共享代码库
├── docker/              # Docker配置
├── docs/                # 文档
└── scripts/             # 脚本工具

开发规范

  • 代码风格: 遵循PEP 8 (Python) 和 ESLint (JavaScript)
  • API设计: RESTful API规范
  • 数据库: 使用ORM (SQLAlchemy)
  • 测试: 单元测试覆盖率 > 80%

许可证

Copyright © 2025

联系方式

项目维护团队

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors