-- 管理端账户（独立监听 + 内网白名单 + 2FA 的身份表）
-- 凭证最小化：密码 argon2id，TOTP 密钥 AES-GCM 加密后以二进制存储，明文绝不入库。
CREATE TABLE admins (
  id            BIGINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
  username      VARCHAR(64) NOT NULL UNIQUE,
  pw_hash       VARCHAR(255) NOT NULL,              -- argon2id（PHC 编码）
  totp_secret   VARBINARY(255) NOT NULL,            -- AES-GCM(密钥来自 ADMIN_SECRET_KEY)
  status        ENUM('active','disabled') NOT NULL DEFAULT 'active',
  created_at    DATETIME(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6),
  last_login_at DATETIME(6) NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
