security(ci): nas-verify 登录口令去明文化——改走 Gitea secret NAS_API_PASSWORD [nas]
CI/CD / test (push) Successful in 47s
CI/CD / nas-deploy (push) Successful in 1s
CI/CD / nas-verify (push) Successful in 7s

- 架构审计 P0-1 用户拍板轮换链第一步: workflow 明文口令(每次 CI 日志暴露面)
  改 ${{ secrets.NAS_API_PASSWORD }}(secret 已建=HTTP 201)
- 同窗轮换: config/backtest.yaml(gitignore 种子,不入本 commit)已换新 bcrypt
  hash+jwt_secret, 随本次 push 的 nas-deploy rsync 传播 NAS——nas-verify 用
  新 secret 登录新 hash, 顺序=secret 先建后 push, 零断窗
- three-env §12 补 CI 凭据纪律(secret 引用+轮换流程+种子传播路径)
- VPS 侧: config 种子随下次推vps 传播; run_api.ps1 PROMOTION_PASSPHRASE 同串
  轮换随后续步骤执行; git 历史旧明文按用户拍板不洗(私有内网仓)

Co-Authored-By: Claude Code <notify@anthropic.com>
This commit is contained in:
2026-10-01 09:55:08 +08:00
parent 9d1aea1741
commit 23bbb11a55
2 changed files with 2 additions and 1 deletions
+1 -1
View File
@@ -175,7 +175,7 @@ jobs:
run: | run: |
BASE=http://192.168.2.154:8000 BASE=http://192.168.2.154:8000
token=$(curl -s -X POST $BASE/api/v1/auth/login -H "Content-Type: application/json" \ token=$(curl -s -X POST $BASE/api/v1/auth/login -H "Content-Type: application/json" \
-d '{"username":"admin","password":"Ccf7561523*"}' \ -d '{"username":"admin","password":"${{ secrets.NAS_API_PASSWORD }}"}' \
| python3 -c "import json,sys;print(json.load(sys.stdin).get('token',''))") | python3 -c "import json,sys;print(json.load(sys.stdin).get('token',''))")
[ -n "$token" ] || { echo "❌ login 失败"; exit 1; } [ -n "$token" ] || { echo "❌ login 失败"; exit 1; }
echo "✅ login OK" echo "✅ login OK"
+1
View File
@@ -256,6 +256,7 @@ CI `enforce-label` 强制:本次 push 的 commit 必须带 `[vps]`(VPS 运
查 VPS 未部署:`git log vps-deployed..HEAD --grep='\[vps\]'`(版本真相=移动 tag `vps-deployed`)。 查 VPS 未部署:`git log vps-deployed..HEAD --grep='\[vps\]'`(版本真相=移动 tag `vps-deployed`)。
> **CI pytest 门禁范围(2026-10-01 扩至 8 目录)**:`tests/data_platform+portfolio+factor+api`(原四)+ `tests/trader+backtest+data+orchestrator`(10-01 架构审计 P0-5 补入——撮合/涨跌停/软限/持仓账本/shadow 等钱相关测试进强制门禁,本地实测 339 绿 7.6s)。门禁口径唯一维护处=`ci-cd.yml` 注释。 > **CI pytest 门禁范围(2026-10-01 扩至 8 目录)**:`tests/data_platform+portfolio+factor+api`(原四)+ `tests/trader+backtest+data+orchestrator`(10-01 架构审计 P0-5 补入——撮合/涨跌停/软限/持仓账本/shadow 等钱相关测试进强制门禁,本地实测 339 绿 7.6s)。门禁口径唯一维护处=`ci-cd.yml` 注释。
> **CI 凭据纪律(2026-10-01 起)**:nas-verify 登录口令走 Gitea secret `NAS_API_PASSWORD`(${{ secrets.* }} 引用),**明文口令禁入 workflow/文档/git**;auth 种子=`config/backtest.yaml`(gitignore 本地文件,bcrypt hash+jwt_secret,经 promote 传播 NAS/VPS;轮换流程=先更新 secret 再 push 种子,反序会断 nas-verify)。
**判定钥匙**:维度是「VPS 运行时是否触发」,**不是**「文件改了没」。 **判定钥匙**:维度是「VPS 运行时是否触发」,**不是**「文件改了没」。