部署加固
部署加固
艾维斯可运行在不同部署形态中。无论服务运行在单主机、多主机还是托管基础设施上,下面的加固清单都适用于生产环境。
网络暴露
基线加固矩阵
密钥
- 使用部署密钥存储或环境专用密钥管理,避免把密钥提交到源码。
- 按文档化周期轮换模型、连接器、服务和对象存储凭据。
- 在 runbook 和示例中使用占位符;不要把真实 authorization token、API key、private key 或用户邮箱放入公开文档。
- 按环境分离凭据,避免 staging 访问 production 数据。
凭据轮换事件
出现以下情况时,应轮换受影响凭据:
- 连接器负责人变更。
- 模型 Provider key 被复制到测试环境。
- Runtime 或 bridge 服务在访问策略变更后重新部署。
- 管理员离开运维团队。
- 日志、截图、工单或聊天消息意外包含密钥。
存储与备份
Postgres、OpenSearch 和对象存储包含最重要的持久状态。生产部署应在大规模用户上线前定义备份频率、保留周期、恢复测试、静态加密和灾备责任人。
日志与监控
记录 request ID、服务健康、索引任务、连接器同步失败、runtime 错误和授权拒绝。除非部署策略明确要求,否则避免记录原始密钥、完整凭据 payload 或无限制用户内容。
至少监控:
- API 错误率、延迟和授权拒绝。
- 连接器同步状态、跳过文档和凭据失败。
- 索引队列深度和模型服务延迟。
- Agent runtime 失败、工具拒绝和长时间运行任务。
- OpenSearch 磁盘使用、Redis 可用性、对象存储错误和 Postgres 连接数。
出站控制
连接器 worker 和 runtime 服务可能需要出站访问获准的 SaaS API、模型提供商或内部服务。请将出站访问限制到已启用连接器、集成和模型提供商所需的域名和网络。
事故响应准备
生产上线前请准备运维 runbook:
生产清单
- 公开流量只通过受 TLS 保护的路由进入。
- 内部服务端口不暴露到公网。
- 管理员账号和身份提供方设置已审查。
- 已在测试环境中恢复过备份。
- 密钥轮换和事故响应责任人已确定。
- 日志可搜索且不暴露敏感值。
- 连接器范围和 Agent 工具范围已由数据负责人审查。
- 模型、连接器、Agent 和 runtime 配置变更都有回滚路径。