fix(h2): BOX update 入库地址校验与 HMAC 兼容期
Summary
- 删除已废弃
POST /box/v1/_box_server_regist,只保留_box_server_update。 - 入库地址 Guard:拒绝 loopback / 云元数据 / 畸形 IP,允许工厂 RFC1918。
- HMAC 兼容期:无签名仍可写库;三字段齐全则校验;
require-hmac=true且 secret 空则拒绝启动。 - 无
deviceCode记录时只向默认租户插一条,不再全租户盲插。 -
configVersion/ Jenkins 下拉对齐配仓v__10。
Test plan
- 未改代理的工厂仍能 update 合法 RFC1918 地址
-
loopback /
169.254.169.254/100.100.100.200被拒绝 - 正确 HMAC 成功,nonce 重放失败
- 错签名 / 过期 timestamp 拒绝
-
require-hmac=false无签名仍成功(兼容期)
配仓另仓:holdingk-box-config-repo template/v__10 + tenant-test/dev。
方案:钉钉 H-2