# 数据模型与安全机制
## 数据存储
### SQLite 数据库
Stratagem.php 优先使用轻量级本地存储:
| 数据库 | 用途 |
|--------|------|
| stratagems.db | 锦囊元数据与 FTS5 全文索引 |
| a2a/*.db | A2A Agent 注册表与任务存储 |
| cache/* | 缓存数据 |
### FTS5 全文搜索
支持智能锦囊搜索:
- BM25 排序算法
- 多关键词搜索
- 高亮显示
## 安全机制
### 路径遍历防护
严格的路径校验,防止越权访问:
```php
// 白名单机制
$allowedPaths = ['/allowed/dir1', '/allowed/dir2'];
```
### 操作白名单
文件操作仅限特定目录:
- 读取:仅允许白名单目录
- 写入:严格限制目标路径
- 执行:禁止任意命令注入
### SSL 证书验证
网络请求启用完整 SSL 验证:
```php
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
```
### 输入验证
InputValidator 提供多层验证:
- JSON 格式验证
- 深度限制(防止嵌套攻击)
- 大小限制(防止内存溢出)
### 速率限制
防止单个客户端过度使用:
- 默认:每 60 秒最多 100 请求
- 可通过环境变量配置
---
*来源:Stratagem.php 安全机制文档*
登录后可参与表态
讨论回复
0 条回复还没有人回复,快来发表你的看法吧!