GauravSahu2/high-assurance-api

GitHub: GauravSahu2/high-assurance-api

高保障 API DevSecOps 平台,通过 32 层防御与自动化测试解决金融与医疗场景下的合规与审计难题。

Stars: 1 | Forks: 0

# 🛡️ 高保障 API — 32 层质量架构 [![CI/CD](https://img.shields.io/badge/CI%2FCD-Master%20Pipeline%20Active-success?style=for-the-badge&logo=githubactions&logoColor=white)](.github/workflows/master-pipeline.yml) [![Tests](https://img.shields.io/badge/Tests-32%20Tiers%20Passing-brightgreen?style=for-the-badge&logo=pytest&logoColor=white)](#) [![Compliance](https://img.shields.io/badge/Compliance-Sentinel%20Active-blue?style=for-the-badge&logo=nextdotjs&logoColor=white)](PIPELINE.md) 一个具备属性测试与合规等级的金融 API 平台,包含 **298 个自动化测试**、**100% 代码覆盖率** 以及完美的 **100/100 架构评分**。专为严格监管环境(金融科技、医疗保健、银行业)设计,生成加密签名、带时间戳的 FDA 级审计包,并通过 **Premium Next.js 14 仪表板** 可视化。 ## 哨兵仪表板 该项目采用 **Project Aegis Sentinel** 仪表板,基于 **Next.js 14**、**Framer Motion** 与 **TailwindCSS** 构建。它提供对 32 层绞杀战的实时遥测、资源扩展轨迹(O(N) 证明)以及硬化指令。 | 功能 | 哨兵实现 | |------|----------| | **实时同步** | 从高保障 API 后端动态获取 | | **扩展证明** | 展示计算/内存线性扩展的交互面积图 | | **审计访问** | 直接集成以生成执行级技术报告 | | **硬化指令** | 主动系统建议(Enclaves、Block Express、Mesh) | ## 架构 ``` graph TB subgraph Client Layer A[Client Request] --> B[Load Balancer / ProxyFix] end subgraph User Interface Z[Sentinel Dashboard] --> B end subgraph Application Layer B --> C[Flask App Factory] C --> D[Security Headers Middleware] D --> E[Correlation ID + Structured Logging] E --> F{Route Blueprints} F --> G[auth_routes.py
Login · Logout · JWT] F --> H[transfer_routes.py
Transfers · Idempotency · Outbox] F --> I[health_routes.py
Health · Metrics · OpenAPI] F --> J[upload_routes.py
CSV Validation · Schema] F --> K[admin_routes.py
BOLA-Protected Lookups] F --> DA[dashboard_routes.py
Audit Stats · Complexity Matrix] end subgraph Data Layer G --> L[(PostgreSQL
Accounts · Idempotency · Outbox)] H --> L K --> L G --> M[(Redis
Rate Limiting · JWT Revocation)] H --> M end subgraph Async Processing L --> N[Outbox Worker
Event Publishing] N --> O[SQS / Kafka / Email] end subgraph Observability & Ops E --> P[OpenTelemetry
Distributed Tracing] E --> Q[Prometheus + SLOs
Metrics & Error Budgets] E --> R[Loki + Grafana
SLO Dashboards] E --> S[Kubernetes
Liveness/Readiness Probes] end style C fill:#1a1a2e,stroke:#e94560,color:#fff style L fill:#0f3460,stroke:#e94560,color:#fff style M fill:#0f3460,stroke:#e94560,color:#fff style N fill:#16213e,stroke:#e94560,color:#fff style Z fill:#0d1527,stroke:#3b82f6,color:#fff ``` ## 32 层测试策略 三个阶段保证正确性、安全性与运行弹性: ### 阶段 1 — 核心逻辑与安全(第 1–12 层) | 层 | 类别 | 验证内容 | |----|------|----------| | 1 | **功能 / 边界值分析** | 所有输入的边界值分析 | | 2 | **安全** | 定时攻击、SSRF、XSS、BOLA、注入 | | 3 | **弹性** | 幂等键、重放保护 | | 4 | **合规** | SOC 2、PCI DSS、FDA 21 CFR 审计追踪 | | 5 | **契约** | OpenAPI 模式符合性(Schemathesis) | | 6 | **数据库** | ACID 回滚、状态隔离 | | 7 | **CSV 安全** | Pandera 模式 + 注入净化 | | 8 | **授权** | BOLA containment、MCP 边界 | | 9 | **密钥管理** | AWS Secrets Manager(moto) | | 10 | **Vault 集成** | HashiCorp Vault 密钥轮换模拟 | | 11 | **BOLA 扩展** | 跨租户数据库隔离 | | 12 | **JWT 吊销** | 通过 Redis 黑名单传播吊销 | ### 阶段 2 — 集成与性能(第 13–24 层) | 层 | 类别 | 验证内容 | |----|------|----------| | 13 | **出箱模式** | 事务性事件发布 | | 14 | **集成** | CORS、契约、网络接缝 | | 15 | **可观测性** | 关联 ID、结构化日志 | | 16 | **速率限制** | IP + 用户级暴力破解锁定 | | 17 | **基础架构漂移** | 通过 moto 模拟的 AWS 配置 | | 18 | **性能** | 基准回归门控 | | 19 | **并发** | 双重支出预防 | | 20 | **仪表板 API** | 遥测端点响应数据 | | 21 | **复杂度证明** | O(N) 线性计算验证 | | 22 | **追踪传播** | OTEL 上下文传播检查 | | 23 | **SLO 预算** | 错误预算耗尽告警 | | 24 | **报告交付** | 动态 MD 报告生成 | ### 阶段 3 — 运行保障(第 25–32 层) | 层 | 类别 | 验证内容 | |----|------|----------| | 25 | **数据库防护** | 破坏性操作保护 | | 26 | **双人规则** | CODEOWNERS 强制执行 | | 27 | **DAST** | OWASP ZAP(扫描 117 条规则) | | 28 | **回滚** | 蓝绿金丝雀模拟 | | 29 | **灾难恢复** | 备份完整性、RTO/RPO | | 30 | **策略即代码** | OPA/Rego 策略强制执行 | | 31 | **基础架构** | Checkov 100% 评分(13 条告警已解决) | | 32 | **供应链** | Mutmut 覆盖率 + Trivy CVE 扫描 | ## 项目结构 ``` high-assurance-api/ ├── src/ # Application source (100% coverage) │ ├── main.py # App factory + Blueprint registration │ ├── auth.py # JWT generation, password hashing, user store │ ├── config.py # Centralized configuration constants │ ├── database.py # SQLAlchemy engine + session factory │ ├── models.py # Account, IdempotencyKey, OutboxEvent (Numeric balance) │ ├── security.py # HTTP security headers (OWASP) │ ├── telemetry.py # OpenTelemetry distributed tracing │ ├── csv_validator.py # Pandera CSV validation + injection defense │ ├── egress_client.py # SSRF-safe HTTP client │ ├── report_generator.py # Dynamic executive technical reporting │ ├── worker.py # Transactional Outbox processor │ ├── logger.py # Structured JSON logging (structlog) │ └── routes/ # Flask Blueprints ├── apps/ │ └── compliance-dashboard/ # Next.js 14 Sentinel Dashboard ├── tests/ # 298 tests across 32 tiers ├── policies/ # OPA Rego policy files ├── .github/ # CI/CD (Master Pipeline) ├── docs/ # Operational docs, SRE runbooks ├── openapi.yaml # OpenAPI 3.0 specification ├── PIPELINE.md # 🌏 Visual CI/CD Architecture & Gauntlet Logic ├── docker-compose.yml # Full stack (API + DB + Redis + Grafana) ├── k8s/ # Kubernetes Deployment & Probes ├── Dockerfile # Production container (non-root, slim) ├── EXPLANATION.md # For recruiters, CTOs, VCs └── hsa # CLI tool for running validation tiers ``` ## 快速启动 ``` # 克隆并设置 git clone https://github.com/GauravSahu2/high-assurance-api.git cd high-assurance-api python3 -m venv venv && source venv/bin/activate pip install -r requirements.txt # 运行 Inner Loop(逻辑 + 安全 + 性能)— 约 2 分钟 hsa -i # 运行完整的 20 级 Gauntlet — 约 3 分钟 hsa -a # 使用完整堆栈本地部署 docker compose up -d curl http://localhost:5000/health ``` ### `hsa` CLI ``` hsa -i # Inner Loop: 288 tests + coverage + fuzzing + benchmarks hsa -a # Full Gauntlet: Static scans + DAST + ZAP + performance hsa scan . # Polyglot SAST/SCA/Secrets on any folder ``` ## CI/CD 流水线 **9 个 GitHub Actions 工作流**在每次推送时运行: | 工作流 | 目的 | |--------|------| | `ci.yml` | 核心测试套件 + 覆盖率门控 | | `high-assurance-pipeline.yml` | 完整 20 层绞杀战 | | `devsecops.yml` | 安全扫描编排 | | `fda_pipeline.yml` | FDA 21 CFR 审计包生成 | | `fossa_scan.yml` | 许可证合规扫描 | | `iac_scanner.yml` | 基础设施即代码扫描 | | `leakix_scan.yml` | 密钥/泄露检测 | | `gitops.yml` | GitOps 部署触发 | | `visualization.yml` | 测试结果可视化 | ## 安全控制 | 控制 | 实现 | |------|------| | **认证** | JWT,Redis 黑名单吊销 JTI | | **定时抗性** | 对不存在用户使用 DUMMY_HASH(恒定时间 bcrypt) | | **SSRF 防护** | 出站客户端阻断所有私有/元数据 IP | | **速率限制** | IP + 用户级锁定(5 次尝试,1 小时 TTL) | | **BOLA 预防** | 所有数据端点上基于角色与所有权的检查 | | **CSV 注入** | 前缀剥离(=、+、-、@、\t、\r)+ Pandera 模式 | | **安全头** | CSP、HSTS、X-Frame-Options、X-XSS-Protection、Referrer-Policy | | **CORS** | 仅白名单(无通配符) | | **审计追踪** | 追加式 OutboxEvent 带时间戳(FDA 级) | ## 合规映射 | 标准 | 测试控制 | |------|----------| | **SOC 2 CC7.2–CC7.4** | 安全事件日志、审计追踪完整性 | | **PCI DSS 10.1–10.7** | 卡数据访问日志、失败登录追踪 | | **FDA 21 CFR §11.10** | 不可变时间戳、电子签名、审计追踪 | | **GDPR Art. 25** | 数据最小化、同意管理、删除权 | ## 最佳实践 - **Numeric(12,2)** 用于货币值 — 防止 IEEE 754 浮点误差 - **有序锁获取**(`sorted([sender, receiver])`)— 防止死锁 - **事务型出箱** — 无需分布式事务即可避免双写问题 - **结构化 JSON 日志** 包含关联 ID — 跨服务追踪 - **策略即代码**(OPA/Rego)— 程序化强制执行安全不变式 - **CODEOWNERS** — 关键路径的双人规则 ## 联系与许可 🔒 © 2026 Gaurav Sahu — 高保障质量工程 本仓库严格保留用于个人练习与作品集展示。 **专有作品:** 本项目非开源项目,所有权利保留。 **联系:** [linkedin.com/in/gauravsahu22](https://www.linkedin.com/in/gauravsahu22) | Gauravsahu2203@gmail.com
标签:100%代码覆盖率, 298个自动化测试, 32层架构, ACID回滚, API安全, BOLA, DevSecOps, FDA合规, Flask应用工厂, FramerMotion, GitHubActions, JSON输出, Next.js14, Python测试, TailwindCSS, 上游代理, 企业审计包, 前端仪表盘, 加密签名, 动态获取, 区块链审计, 医疗健康, 可信执行环境, 合规平台, 子域名突变, 安全头中间件, 实时遥测, 审计日志, 执行技术报告, 提示注入防护, 搜索引擎查询, 时间戳审计, 机密计算, 架构评分, 测试用例, 用户代理, 监管环境, 相关ID日志, 硬核指令, 线性扩展证明, 计算内存可视化, 请求拦截, 资源扩展轨迹, 路由蓝图, 逆向工具, 金融科技, 防御纵深, 防漂移, 零信任网络, 高保障API