安全第一,预防为主
安全威胁模型
常见威胁
- API Key 泄露
- 数据泄露
- 未授权访问
- DDoS 攻击
- 注入攻击
身份认证
1. Bearer Token
auth:
type: bearer
token: ${API_TOKEN} # 32+ 字符随机字符串
生成 Token:
openssl rand -hex 32
2. API Key
auth:
type: api_key
header: X-API-Key
keys:
- name: user1
key: ${USER1_API_KEY}
- name: user2
key: ${USER2_API_KEY}
3. OAuth 2.0(企业)
auth:
type: oauth2
provider: google
client_id: ${GOOGLE_CLIENT_ID}
client_secret: ${GOOGLE_CLIENT_SECRET}
访问控制
1. IP 白名单
security:
ip_whitelist:
- 127.0.0.1
- 192.168.1.0/24
- 10.0.0.0/8
2. 速率限制
security:
rate_limit:
enabled: true
requests_per_minute: 60
burst: 10
3. 权限控制
permissions:
roles:
admin:
- model:all
- channel:all
- config:all
user:
- model:deepseek-chat
- channel:telegram
readonly:
- model:deepseek-chat
数据安全
1. 数据脱敏
privacy:
redact_patterns:
- \b\d{16,19}\b # 银行卡
- \b1[3-9]\d{9}\b # 手机号
- \b[\w.-]+@[\w.-]+\.\w+\b # 邮箱
- \b\d{17}[\dXx]\b # 身份证
2. 日志脱敏
logging:
redact:
- api_key
- password
- token
- secret
3. 数据加密
encryption:
enabled: true
algorithm: AES-256-GCM
key: ${ENCRYPTION_KEY}
网络安全
1. HTTPS
security:
https:
enabled: true
cert: /path/to/cert.pem
key: /path/to/key.pem
min_version: TLS1.2
2. CORS
security:
cors:
enabled: true
origins:
- https://yourdomain.com
methods:
- GET
- POST
3. CSP
security:
headers:
content_security_policy: "default-src 'self'"
API 安全
1. 输入验证
api:
validation:
enabled: true
max_message_length: 10000
max_file_size: 10MB
2. 输出过滤
api:
sanitization:
enabled: true
remove_sensitive: true
3. 超时控制
api:
timeout:
request: 30s
response: 60s
监控与审计
1. 审计日志
logging:
audit:
enabled: true
events:
- login
- api_call
- config_change
- permission_change
2. 异常检测
monitoring:
anomaly_detection:
enabled: true
alert_on:
- unusual_traffic
- failed_auth_attempts
- rate_limit_exceeded
3. 安全告警
alerts:
- name: security-breach
condition: multiple_failed_auth
action: send-telegram
漏洞防护
1. SQL 注入
# 使用参数化查询(自动防护)
database:
prepared_statements: true
2. XSS
# 输出自动转义(自动防护)
api:
xss_protection: true
3. CSRF
security:
csrf:
enabled: true
token_header: X-CSRF-Token
备份与恢复
1. 加密备份
backup:
enabled: true
encryption: true
destination: s3://secure-bucket/
2. 离线备份
# 导出加密备份
openclaw backup export --encrypt
# 恢复
openclaw backup restore --decrypt
安全检查清单
部署前
- API Key 使用环境变量
- Token 长度足够(32+ 字符)
- HTTPS 已启用
- 速率限制已配置
- 日志脱敏已启用
运行中
- 定期检查审计日志
- 监控异常行为
- 更新依赖版本
- 定期更换密钥
事件响应
- 安全事件响应流程
- 密钥轮换流程
- 数据泄露应对流程
安全最佳实践
1. 最小权限原则
# ✅ 只给必需的权限
permissions:
user:
- model:deepseek-chat # 只能用这一个模型
2. 防御深度
# 多层防护
security:
ip_whitelist: true # 第一层
auth: true # 第二层
rate_limit: true # 第三层
3. 定期审计
heartbeat:
tasks:
- name: security-audit
schedule: "0 0 * * 0" # 每周日
action: openclaw security audit
常见安全问题
Q: API Key 泄露了怎么办?
- 立即撤销旧 Key
- 生成新 Key
- 检查异常使用
- 更新所有配置
Q: 如何防止 DDoS?
- 启用速率限制
- 使用 CDN
- 配置防火墙
- 联系云服务商
Q: 数据泄露了怎么办?
- 立即切断访问
- 评估影响范围
- 通知相关方
- 加固安全措施
合规性
GDPR
- ✅ 数据最小化
- ✅ 用户同意
- ✅ 数据可携
- ✅ 被遗忘权
中国网络安全法
- ✅ 数据本地化
- ✅ 个人信息保护
- ✅ 安全评估
SOC 2
- ✅ 访问控制
- ✅ 加密传输
- ✅ 审计日志
安全资源
- OWASP Top 10:owasp.org
- 安全配置指南:docs.openclaw.ai/security
- 漏洞报告:security@openclaw.ai
💬 你有什么安全建议?评论区分享!
🎯 需要安全加固服务?微信:yang1002378395