zackerkoi/TrustLayer
GitHub: zackerkoi/TrustLayer
企业级 AI 安全平台,提供针对提示注入与新兴威胁的网关清洗与审计能力。
Stars: 0 | Forks: 0
# TrustLayer
这是一个独立的最小工程,用来实现 `TrustLayer` 第一阶段的网关和审计基础设施。
当前实现覆盖三类能力:
- `ingress sanitize`:来源分级、隐藏内容剥离、超长文本裁剪、风险打标
- `egress check`:secret / PII 扫描、新域名检测、外发决策
- `audit timeline`:按 `session_id` 回放关键事件
- `mcp gateway`:统一代理 MCP / skill 风格输入,并复用 ingress sanitize
当前迁移策略是:
- `POST /v1/mcp/invoke` 作为统一新入口
- `POST /v1/ingress/sanitize` 在带 `tool_name` 时,会补挂到统一 ingress tool identity
- `POST /v1/egress/check` 在存在匹配 egress tool 时,会自动转到 unified invoke
- 其他未映射的 egress 类型仍保留旧路径,避免一次性打断兼容性
## 快速开始
一键部署本地服务:
```
cd TrustLayer
bash scripts/deploy-local.sh
```
脚本会自动优先选择可用的 `python3.10+`。
带策略文件启动:
```
cd TrustLayer
POLICY_FILE=config/policy.example.json bash scripts/deploy-local.sh
```
运行测试:
```
cd TrustLayer
PYTHONPATH=src python3 -m unittest discover -s tests -v
```
如果你想手动启动服务,也可以直接运行:
```
cd TrustLayer
PYTHONPATH=src python3 -m trustlayer.main --port 8080
```
回放某个 session 的审计时间线:
```
cd TrustLayer
PYTHONPATH=src python3 -m trustlayer.replay --db-path audit.sqlite3 --session-id sess_demo
```
运行最小评估框架:
```
cd TrustLayer
PYTHONPATH=src python3 -m trustlayer.evaluation
```
可用接口:
- `POST /v1/ingress/sanitize`
- `POST /v1/egress/check`
- `GET /v1/mcp/tools`
- `POST /v1/mcp/tools/fetch`
- `POST /v1/mcp/invoke`
- `GET /v1/sessions//timeline`
- `GET /v1/approvals/queue?tenant_id=`
- `GET /approvals/queue?tenant_id=`
- `GET /healthz`
默认 MCP 入口工具:
- `remote_web_fetch`:通过真实远程 HTTP 抓取网页,并在返回给 Agent 前自动做 sanitize
- `remote_rag_fetch`:通过真实远程 HTTP 拉取 JSON 文档,并抽成 `rag_chunk`
最小 fetch 示例:
```
curl -s http://127.0.0.1:8080/v1/mcp/tools/fetch \
-H 'Content-Type: application/json' \
-d '{
"tenant_id": "demo",
"session_id": "sess_remote_fetch",
"tool_name": "remote_web_fetch",
"arguments": {
"url": "https://raw.githubusercontent.com/zackerkoi/TrustLayer/main/fixtures/remote_hidden_supplier.html"
}
}'
```
最小 RAG fetch 示例:
```
curl -s http://127.0.0.1:8080/v1/mcp/tools/fetch \
-H 'Content-Type: application/json' \
-d '{
"tenant_id": "demo",
"session_id": "sess_remote_rag",
"tool_name": "remote_rag_fetch",
"arguments": {
"url": "https://raw.githubusercontent.com/zackerkoi/TrustLayer/main/fixtures/remote_rag_chunk.json"
}
}'
```
最小 unified invoke 示例:
```
curl -s http://127.0.0.1:8080/v1/mcp/invoke \
-H 'Content-Type: application/json' \
-d '{
"tenant_id": "demo",
"session_id": "sess_invoke_egress",
"tool_name": "webhook_post",
"direction": "egress",
"arguments": {
"destination": "https://hooks.example.net/collect",
"payload": "Contact alice@example.com for the next update."
}
}'
```
## 当前场景覆盖
- 网页隐藏内容剥离
- MCP 返回值默认不可信
- Secret 外发阻断
- 新域名 + PII 外发提级
- 审计时间线回放
标签:AI安全, AI系统保护, Chat Copilot, MCP代理, PII扫描, Python, SEO词:TrustLayer, 企业安全, 企业级安全平台, 会话管理, 兼容性迁移, 内容剥离, 域名检测, 审计, 审计回放, 对抗攻击, 提示注入防御, 提示注入防护, 提示词模板, 敏感信息检测, 无后门, 本地部署, 源代码安全, 策略配置, 统一入口, 网关, 网络资产管理, 请求拦截, 输入清洗, 逆向工具, 风险打标