badrnkarim/sdg-secure-db-gateway-showcase

GitHub: badrnkarim/sdg-secure-db-gateway-showcase

Stars: 0 | Forks: 0

# 安全数据库网关 (SDG) ![CodeQL](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/00c911a9b5020630.svg) ![License](https://img.shields.io/github/license/badrnkarim/sdg-secure-db-gateway-showcase) ![Last Commit](https://img.shields.io/github/last-commit/badrnkarim/sdg-secure-db-gateway-showcase) **SDG** 是位于用户和数据库之间的安全优先访问层。它强制执行 **MFA (OTP)**、**RBAC**、**仅限模板 SQL 执行**、**SQL 安全控制**、**SSRF 安全目标验证**以及**可审计性**(日志 + 完整性快照)。 本仓库是一个**美国等级的展示项目**,包含完整的文档、架构报告和精选的 UI 证据,以展示安全态势和最佳实践。 ## 为什么这很重要 直接的数据库访问会导致凭据泛滥和可审计性薄弱。SDG 将控制权集中到一个严格的执行点: - 强力认证 (**MFA**) - 明确授权 (**RBAC 授权**) - 安全执行 (**仅限批准的模板**) - 阻止滥用 (**SQL 安全 + SSRF/允许列表**) - 提供证据 (**日志 + 完整性验证**) ## 关键安全控制(基于证据) | 控制措施 | 阻止内容 | 证据 | |---|---|---| | RBAC 授权 | 未授权访问 | `docs/assets/permissions.png` | | 仅限模板 SQL | 原始 SQL / 注入路径 | `docs/assets/templates.png` | | SQL 安全强制执行 | 破坏性 SQL (`DROP` 等) | `docs/assets/sql_blocked_drop.png` | | 目标允许列表验证 | SSRF / 内部横向移动 | `docs/assets/target_endpoint_blocked.png` | | 完整性快照 | 静默 DB 更改 | `docs/assets/integrity_match.png` / `docs/assets/integrity_mismatch.png` | 更多详情请参阅 `docs/CONTROL_MATRIX.md`。 ## 架构(高层) ``` flowchart LR %% Modern Styling classDef user fill:#2563eb,stroke:#1d4ed8,stroke-width:2px,color:#fff,rx:8px,ry:8px; classDef ui fill:#0ea5e9,stroke:#0284c7,stroke-width:2px,color:#fff,rx:8px,ry:8px; classDef api fill:#8b5cf6,stroke:#7c3aed,stroke-width:2px,color:#fff,rx:8px,ry:8px; classDef db fill:#10b981,stroke:#059669,stroke-width:2px,color:#fff,rx:8px,ry:8px; classDef security fill:#f43f5e,stroke:#e11d48,stroke-width:2px,color:#fff,rx:8px,ry:8px; classDef group fill:#f8fafc,stroke:#cbd5e1,stroke-width:2px,stroke-dasharray: 5 5,rx:10px,ry:10px,color:#334155; %% Nodes U[["👤 User / Admin"]]:::user subgraph Frontend ["Front-End Layer"] UI["🖥️ Web UI (Dashboard / Admin)"]:::ui end subgraph Core ["Gateway Enforcement Layer"] API["🛡️ API Gateway (AuthN & AuthZ)"]:::api INTEG["🔍 Integrity Engine (Hash & Verify)"]:::security end subgraph Storage ["Data Layer"] META[/"⚙️ Meta DB (Roles, Logs, Config)"/]:::db TDB[/"🗄️ Target DBs (MySQL / Postgres)"/]:::db end %% Flow U -- "HTTPS / MFA" --> Frontend UI -- "REST / Actions" --> API API -- "Audit & Enforce" --> META API -- "Execute Template" --> TDB INTEG -. "Scheduled Snapshots" .-> TDB API -. "Trigger Verification" .-> INTEG %% Grouping styling class Frontend,Core,Storage group; ``` ## UI 证据(截图) **管理面板** Admin Panel
显示完整证据集
**RBAC 权限管理** Permissions **批准的模板(无原始 SQL)** Templates **受控执行(成功)** Query success **完整性验证(匹配 / 不匹配)** Integrity match Integrity mismatch **强制执行证明** Target blocked SQL blocked
*截图映射索引:* `docs/SCREENSHOTS.md` ## 文档 - **完整报告 (PDF)**:`docs/SDG_Project_Report.pdf` - **演示演示**:`docs/DEMO_WALKTHROUGH.md` - **威胁模型**:`docs/THREAT_MODEL.md` ## 所有权 - **所有者 / 维护者**:Badr Karim - **GitHub**:[@badrnkarim](https://github.com/badrnkarim) ## 许可证 MIT 许可证 — 详情请参阅 [LICENSE](LICENSE)。
标签:CISA项目, DevSecOps, DLP, JSONLines, MFA, OTP, RBAC, SQL模板, SQL注入防护, SSRF防护, Streamlit, 上游代理, 中间件, 基于角色的访问控制, 多因素认证, 安全合规, 安全架构, 安全网关, 完整性校验, 审计日志, 数据库防火墙, 数据防泄露, 测试用例, 网络代理, 访问控制, 零信任