Files
Edu/infra/security/secrets.example.env
SpecialX 47e950c664 feat(ai): temporal worker for lesson plan workflow
- deploy temporal server (postgresql + auto-setup + ui) in docker-compose
- new temporal/ module: workflow + activities + worker manager
- convert lesson plan 4-step orchestration to temporal workflow
- activities wrap existing analyze/recommend/generate/prepare_review steps
- worker injects failover_chain/content_client/data_ana_client via module globals
- start() uses temporal client.start_workflow, falls back to asyncio in dev
- register temporal ports 7233/8085 in port-allocation

Implements M6.5 of v2.1 migration plan (ADR-030).
2026-07-15 02:34:34 +08:00

63 lines
2.5 KiB
Bash
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Edu 平台密钥示例环境变量文件
# ============================================================
# 警告:本文件仅作示例,禁止包含真实密钥。
# 生产环境请通过 K8s Secret / External Secrets / Vault 注入。
# 复制为 .env 后用真实值替换所有 <placeholder>。
# ---------- MySQL ----------
# 用途MySQL root 用户密码,用于初始化与备份/恢复
# 最小长度32 字符
# 复杂度:含大小写字母 + 数字 + 特殊符号
MYSQL_ROOT_PASSWORD=<replace-with-32-char-strong-password>
# ---------- JWT ----------
# 用途JWT Access Token 签名密钥HS256
# 最小长度64 字符(建议使用 openssl rand -base64 48 生成)
# 注意:旋转后所有已签发的 Access Token 立即失效
JWT_SECRET=<replace-with-64-char-jwt-signing-secret>
# 用途JWT Refresh Token 签名密钥HS256
# 最小长度64 字符
# 注意:与 JWT_SECRET 必须不同;旋转后所有用户需重新登录
JWT_REFRESH_SECRET=<replace-with-64-char-refresh-signing-secret>
# ---------- Kafka ----------
# 用途Kafka SASL/PLAIN 认证密码
# 最小长度24 字符
KAFKA_SASL_PASSWORD=<replace-with-24-char-kafka-password>
# ---------- Elasticsearch ----------
# 用途Elasticsearch 内置 elastic 用户密码
# 最小长度24 字符
ES_PASSWORD=<replace-with-24-char-es-password>
# ---------- Neo4j ----------
# 用途Neo4j 数据库管理员密码
# 最小长度24 字符
NEO4J_PASSWORD=<replace-with-24-char-neo4j-password>
# ---------- Redis ----------
# 用途Redis ACL 默认用户密码
# 最小长度24 字符
# 注意:生产环境建议启用 ACL按用户分配最小权限
REDIS_PASSWORD=<replace-with-24-char-redis-password>
# ---------- 应用层加密 ----------
# 用途应用层字段级加密密钥AES-256-GCM
# 最小长度32 字节base64 编码后约 44 字符)
# 生成openssl rand -base64 32
# 注意:旋转前需先解密所有已加密字段,旋转后重新加密
ENCRYPTION_KEY=<replace-with-base64-32-byte-aes-key>
# ---------- Apollo Router 信任凭证 ----------
# 用途Router → 子图的共享密钥,子图 RouterAuthGuard 校验此 Header
# 最小长度32 字符
# 生成openssl rand -hex 32
# 注意Router 和所有子图必须使用相同的密钥
ROUTER_AUTH_SECRET=<replace-with-32-char-router-auth-secret>
# ---------- Temporal ----------
# 用途Temporal PostgreSQL 存储密码
# 最小长度24 字符
TEMPORAL_POSTGRES_PASSWORD=<replace-with-24-char-temporal-password>