Files
cmbuyer/admin

采购服务

启动前必须显式设置下列环境变量;服务不提供默认管理员账号、密码或会话密钥。

变量 要求
CMBUYER_ADMIN_USERNAME 非空管理员账号。
CMBUYER_ADMIN_PASSWORD_BCRYPT 非空 bcrypt 密码哈希,不接受明文密码。
CMBUYER_SESSION_SECRET 至少 32 字节的会话签名密钥。
CMBUYER_COOKIE_SECURE 可选;存在时只能精确为 true 或 false。HTTPS 部署应设为 true。
CMBUYER_DATABASE_SOURCE 已迁移 SQLite 的显式 data source。
CMBUYER_AUTHORIZATION_TTL 一次性授权的正 Go duration,例如 10m。
CMBUYER_MAX_TASK_QUANTITY 每条任务允许的正整数数量上限。
CMBUYER_MAX_TOTAL_PRICE 每条任务允许的规范正数总价上限,例如 999.99。

示例仅展示变量名,不提供可运行凭据:

$env:CMBUYER_ADMIN_USERNAME = '<管理员账号>'
$env:CMBUYER_ADMIN_PASSWORD_BCRYPT = '<bcrypt 密码哈希>'
$env:CMBUYER_SESSION_SECRET = '<至少 32 字节的随机密钥>'
$env:CMBUYER_COOKIE_SECURE = 'true'
$env:CMBUYER_DATABASE_SOURCE = '<SQLite data source>'
$env:CMBUYER_AUTHORIZATION_TTL = '10m'
$env:CMBUYER_MAX_TASK_QUANTITY = '99'
$env:CMBUYER_MAX_TOTAL_PRICE = '999.99'
go run ./cmd/migrate -database $env:CMBUYER_DATABASE_SOURCE up
go run ./cmd/server

采购服务会话仅保存在当前进程内;进程重启后既有登录会话会安全失效。 管理员的“开始采购(只创建待付款订单)”只签发一次性授权并创建待付款订单的资格;服务不会自动付款,也不包含任何支付操作。