pragyamishra18052005-ai/insider-threat-behavioral-intelligence-system
GitHub: pragyamishra18052005-ai/insider-threat-behavioral-intelligence-system
基于 PostgreSQL 触发器和视图的内部威胁检测系统,可实时标记非工作时间的高敏感数据访问并按风险等级分类员工。
Stars: 0 | Forks: 0
# 内部威胁行为情报系统
基于 PostgreSQL 的内部威胁检测系统,具备基于触发器的实时告警和风险看板视图
## 快速开始
本仓库包含可用于重建数据库的纯 SQL 文件:
- 使用 [schema.sql](./schema.sql) 创建所有表、自动标记触发器和风险看板视图。
- 使用 [data.sql](./data.sql) 为表填充包含 15 名员工的样本数据集。
- 查看 [queries.sql](./queries.sql) 获取分析查询、事务演示和实时触发器验证。**重要提示:此文件包含事务块(BEGIN/COMMIT/ROLLBACK)和实时 INSERT 操作。请谨慎使用。**
# 📗 目录
- [📖 关于本项目](#about-project)
- [🛠 构建工具](#built-with)
- [技术栈](#tech-stack)
- [核心功能](#key-features)
- [🚀 架构图](#schema-diagram)
- [💻 快速开始](#getting-started)
- [配置](#setup)
- [前置条件](#prerequisites)
- [安装](#install)
- [用法](#usage)
- [🧪 检测逻辑](#detection-logic)
- [👥 作者](#author)
- [🔭 未来功能](#future-features)
- [🤝 贡献](#contributing)
- [⭐️ 显示您的支持](#support)
- [❓ 常见问题](#faq)
- [📝 许可证](#license)
# 📖 [内部威胁行为智能系统]
## 🛠 构建工具
### 技术栈
### 核心功能
- **[规范化的 4 表架构:employees、login_logs、access_logs、flagged_alerts]**
- **[实时触发器自动标记非工作时间、高敏感度的下载/删除事件]**
- **[employee_risk_dashboard 视图将员工分为低 / 中 / 高风险]**
- **[连接、聚合和窗口函数:RANK、LAG、NTILE]**
- **[CTE、链式 CTE 和事务控制:COMMIT、ROLLBACK、SAVEPOINT]**
- **[通过全新的实时插入操作进行了端到端验证 — 不仅仅是原始种子数据]**
/insider-threat-behavioral-intelligence-system.git
```
### 安装
创建数据库并加载架构和样本数据:
```
createdb insider_threat_db
psql -d insider_threat_db -f schema.sql
psql -d insider_threat_db -f data.sql
```
### 用法
运行分析查询:
```
psql -d insider_threat_db -f queries.sql
```
数据库
后端(实时连接的看板)
- Node.js / Express
(回到顶部)
## 🚀 架构图 (回到顶部)
## 💻 快速开始 要在本地启动并运行项目副本,请按照以下步骤操作。 ### 前置条件 要运行此项目,您需要: ``` Install PostgreSQL ``` ### 配置 将此仓库克隆到您指定的文件夹中: ``` cd my-folder git clone https://github.com/(回到顶部)
## 🧪 检测逻辑 `trg_flag_suspicious_access` 触发器会在每次向 `access_logs` 插入数据后触发。只要满足以下条件,它就会在 `flagged_alerts` 中生成一条高严重性告警: - 资源的 `sensitivity_level` 为 `High`,**并且** - `action` 是 `download` 或 `delete`,**并且** - 访问发生在上午 8 点之前或晚上 8 点之后。 无需任何手动审查步骤 — 只要记录了高风险访问,就会自动生成告警。(回到顶部)
## 👥 作者 👤 **Pragya Mishra Prashasti (Maggie)** - B.Tech CSE(数据分析与商业智能),Dronacharya College of Engineering - 作为 Infosys Springboard Virtual Internship 7.0 的一部分开发(回到顶部)
## 🔭 未来功能 - [ ] **[直接从 employee_risk_dashboard 读取数据的实时 HTML 风险看板]** - [ ] **[可配置的工作时间窗口和敏感度阈值]** - [ ] **[针对新增高严重性 flagged_alerts 行的电子邮件/Slack 告警]**(回到顶部)
## ❓ 常见问题 - **为什么使用触发器而不是定时的批处理任务?** - 触发器在插入时立即触发,因此可疑访问会被实时标记,而不是等到下一次定时扫描。 - **为什么使用视图而不是物化表来划分风险等级?** - `employee_risk_dashboard` 是一个普通视图,因此它始终反映 `access_logs` 和 `flagged_alerts` 的当前状态,无需刷新任务。(回到顶部)
## 📝 许可证 本项目采用 [MIT](./LICENSE) 许可。(回到顶部)
标签:MITM代理, PostgreSQL, SQL触发器, 内部威胁检测, 多线程, 数据库, 测试用例, 风险监控