Abhi-mishra998/aegis

GitHub: Abhi-mishra998/aegis

Aegis 是面向自主 AI agent 的运行时安全与治理控制平面,在每次工具调用前执行策略决策并生成加密可验证的审计追踪。

Stars: 3 | Forks: 2

# Aegis 面向自主 agent 的 runtime 安全控制平面。它位于每次 agent 工具调用之前,应用 policy pipeline,并生成加密可验证的审计追踪。 * License: Apache 2.0 * Runtime: Python 3.11, FastAPI, PostgreSQL, Redis, OPA * 部署目标: AWS (ap-south-1 参考部署) / 任意 Linux + Docker 主机 * 状态: 生产环境 (单租户 prod-ha + 多租户就绪) ## 最新动态 (2026-06-24) 单一域名整合 —— 废弃了 `ha.aegisagent.in` 别名,全面启用标准域名 `aegisagent.in`。现在,每次创建 demo 工作区时都会自动为整个侧边栏填充数据:5 个指定的 agent(db-copilot、support-bot、devops-agent、finance-bot、sales-research-agent),跨越 14 天的 60 个审计事件,2 个安全事件,2 个影子策略,10 个身份图谱节点,8 个边 —— 这样一来,首次体验的用户在点击“生成 demo 工作区”后几秒钟内就能看到一个内容丰富的 UI。框架 SDK 已被重新锁定到当前发布的版本(`aegis-anthropic` 1.1.2、`aegis-openai` 1.1.2、`aegis-langchain` 1.1.3、`aegis-bedrock` 1.1.3、`aegis-aevf` 1.1.0),以便新安装的环境能自动采用单域名默认配置。对 WAF Bot Control 进行了重新调整,以实现有利于监控的响应 —— 合法的审计探针不再会被 bot-block 规则静默返回 403 错误,操作更改为计数并打标。 ## 网关在每次请求中执行的操作 ``` client upstream tool | ^ | POST /execute ───────────────────────────────────────────────────── | | | +-> 0. Kill switch tenant-wide blockade | 1. Auth JWT/API-key + jti revocation | 2. Rate limit per-token / per-agent / per-tenant | 3. Inference prompt-injection + tool-shape risk score | 4. Canonical normalise tool args to action shape | 5. Policy OPA (slow) / local action semantics (fast) | 6. Behavior per-minute window + cumulative risk pipeline | 7. Decision allow | monitor | escalate | deny | quarantine | 8. Enforce pass-through or return 403 + structured findings | 9. Filter redact secrets from response body | 10. Audit chained ed25519-signed receipt to Redis stream | ``` ## 快速开始 (本地 Docker 栈,约 3 分钟) ``` # 本地开发 — 这些 URL 仅能在开发者自己的机器上解析。 # 生产流量始终使用 https://aegisagent.in。 git clone https://github.com/Abhi-mishra998/aegis.git cd aegis cp .env.example infra/.env # fill in JWT_SECRET_KEY, INTERNAL_SECRET cd infra docker compose -f docker-compose.yml up -d docker compose ps # 20+ services, expect all "healthy" # UI 位于 http://localhost:8080 # 管理员登录:admin@acp.local / admin1234 # (由 scripts/utils/seed_admin.py 初始化;在暴露 stack 之前进行轮换) ``` ## SDK 快速开始 ``` pip install 'aegis-anthropic==1.1.2' 'aegis-openai==1.1.2' \ 'aegis-langchain==1.1.3' 'aegis-bedrock==1.1.3' ``` 封装你现有的 SDK 客户端 —— 每次工具调用在到达提供商之前都会通过 Aegis 路由。SDK 默认使用 `https://aegisagent.in`,因此在标准部署中 `aegis_url=` 是可选的: ``` from aegis_anthropic import AegisAnthropic client = AegisAnthropic( aegis_key="acp_…", aegis_url="https://aegisagent.in", # default; override for self-host tenant_id="…", agent_id="…", api_key="sk-ant-…", # your Anthropic key ) resp = client.messages.create(model="claude-sonnet-4-5", tools=[…], messages=[…]) ``` `aegis-openai`、`aegis-langchain` 和 `aegis-bedrock` 的结构相同。详见 [`docs/integrations/sdk-wrappers.md`](docs/integrations/sdk-wrappers.md)。 ## 验证证据包 (离线,无需 Aegis 账户) 审计链格式作为开放规范 **AEVF (Aegis Evidence Verification Format) `aevf/0.1.0`** 发布。审计员可以下载 Aegis 导出的任何证据包,并在不联系我们的基础设施的情况下进行验证: ``` pip install 'aegis-aevf==1.1.0' aegis-verify --bundle bundle.json ``` 验证器运行六项独立检查 (V1–V6)。规范、审计员清单和确定性参考包详见: [`docs/AEVF/`](docs/AEVF/)。 ## 文档 根目录下的标准参考: | 文件 | 范围 | |---|---| | [`agies-bussiness.md`](agies-bussiness.md) | Aegis 是什么、不是什么、实时证据、差距 —— 背景简报 v1.3.0 | | [`ARCHITECTURE.md`](ARCHITECTURE.md) | 服务映射、请求 pipeline、数据模型 | | [`API.md`](API.md) | HTTP 接口 —— auth、/execute、/storylines、/iag、/remediation、/threat-intel | | [`SECURITY.md`](SECURITY.md) | 威胁模型、加密、密钥处理、漏洞报告 | | [`docs/operations/deployment.md`](docs/operations/deployment.md) | AWS 参考部署 + 本地 Docker | | [`CONTRIBUTING.md`](CONTRIBUTING.md) | 开发设置、分支模型、测试门禁 | | [`CHANGELOG.md`](CHANGELOG.md) | 版本变更记录 | 更多深入参考请见 [`docs/`](docs/) (GitBook 布局;目录请见 [`docs/SUMMARY.md`](docs/SUMMARY.md))。 ### 采购与审计文档 面向 CISO、首席安全架构师及客户隐私顾问: | 文件 | 范围 | |---|---| | [`docs/security/threat-model.md`](docs/security/threat-model.md) | 正式的基于资产的 STRIDE 模型,包含 file:line 缓解措施引用的前 10 大威胁排名 | | [`docs/security/dpa-template.md`](docs/security/dpa-template.md) | 数据处理协议模板 (工程起草,待法律审查) | | [`docs/security/baa-template.md`](docs/security/baa-template.md) | HIPAA 业务伙伴协议模板 (工程起草,待法律审查) | | [`docs/operations/incident-response.md`](docs/operations/incident-response.md) | Sev-0..3 级别分类,72 小时客户通知 SLO,14 天事后总结 SLA | | [`docs/operations/retention-policy.md`](docs/operations/retention-policy.md) | 10 年审计 / 90 天操作日志 / 24 个月 PII / 30 天离职处理时间窗口 | | [`docs/operations/disaster-recovery.md`](docs/operations/disaster-recovery.md) | 面向客户的 RTO 4 小时 / RPO 15 分钟态势 + 演练日志 | ## 仓库布局 ``` services/ 12 FastAPI microservices (gateway is the entry point) sdk/ shared internal Python helpers integrations/ aegis-anthropic / aegis-openai / aegis-langchain / aegis-bedrock SDKs tools/ aegis_verify (publishes as aegis-aevf on PyPI) ui/ React + Vite admin console (served by nginx) voice-agent/ LiveKit-based voice guide (separate deployment) infra/ docker-compose + terraform (modules + environments/{dev,prod-ha}) tests/ pytest suites — security/, policy/, eval/, integration/ docs/ GitBook reference documentation ``` ## 生产环境参考部署 已发布的参考实现位于 [`infra/terraform/environments/prod-ha/`](infra/terraform/environments/prod-ha/): * 区域: `ap-south-1` (孟买) * 多可用区 ALB 后的 ASG 中有 2× `m6g.medium` EC2 * RDS PostgreSQL `db.t3.small` 多可用区 * ElastiCache Redis (2 个节点,已启用自动故障转移) * NAT 网关,S3 + DynamoDB VPC 网关 endpoint * CloudTrail 多区域追踪,S3 默认加密 * AWS Secrets Manager 用于 runtime 凭证 * AWS KMS 客户密钥用于收据签名信封加密 本地构建/部署使用 `docker compose`,prod-ha 推送使用 Terraform + SSM。详见 [`docs/operations/deployment.md`](docs/operations/deployment.md)。 ## License Apache 2.0。详见 [LICENSE](LICENSE)。 安全披露:[SECURITY.md](SECURITY.md)。
标签:AI安全, Chat Copilot, LLMOps, Streamlit, 审计日志, 授权网关, 控制平面, 搜索引擎查询, 测试用例, 漏洞利用检测, 访问控制, 请求拦截, 逆向工具