From b79bd34adca3de2feddd6c54abd4f914d64da856 Mon Sep 17 00:00:00 2001 From: ggyy <34892002@qq.com> Date: Thu, 21 May 2026 17:31:36 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20ui=E4=BC=98=E5=8C=96=E3=80=81=E4=BA=8C?= =?UTF-8?q?=E7=BA=A7=E8=8F=9C=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/admin/+Layout.vue | 72 ++++++++---------- pages/admin/menu.ts | 104 ++++++++++++++++++++++++++ pages/admin/security/+Page.vue | 129 ++++++++++++++++++++++++--------- pages/admin/security/+data.ts | 11 +++ 4 files changed, 240 insertions(+), 76 deletions(-) create mode 100644 pages/admin/menu.ts create mode 100644 pages/admin/security/+data.ts diff --git a/pages/admin/+Layout.vue b/pages/admin/+Layout.vue index 6b4f632..00eb0af 100644 --- a/pages/admin/+Layout.vue +++ b/pages/admin/+Layout.vue @@ -32,9 +32,10 @@
@@ -95,18 +96,30 @@
- 生产环境必须配置 `AUTH_SECRET` 或 `NEXTAUTH_SECRET`。本地开发可以通过 `.env` 注入,Cloudflare 生产环境建议使用 `wrangler secret put`。
+
+ 在管理员登录页接入 Cloudflare Turnstile 小组件,用于拦截自动化爆破登录。
- 当前管理员登录已启用基础请求限流。你也应在 Cloudflare 后台为 `/api/auth/callback/credentials` 配置 Rate Limiting / WAF 规则。
-
- 请在首次初始化完成后,立即前往"个人资料"修改默认管理员密码,并定期轮换高权限账号口令。
-
+ 前往
+ Cloudflare Dashboard → Turnstile
+ 创建站点,获取以下两个密钥:
+
+ 使用 wrangler 命令将密钥配置到 Cloudflare Workers:
+
+ 配置完成后,刷新此页面查看状态变化。后台登录页会自动显示 Turnstile 小组件,并在服务端强制校验。
+
- 支付日志会保留业务信息用于排查,但会对 `md5`、`key`、`secret`、`signature` 等敏感字段做脱敏处理。启用支付前,请先在"站点设置"配置网站地址。
- Cloudflare Turnstile 登录验证
+ 登录限流
- 密码安全
- 配置步骤
+
+
+ 创建 Turnstile 站点
+
+ TURNSTILE_SITE_KEY = 前端小组件站点 Key
+ TURNSTILE_SECRET_KEY = 服务端校验 Secret Key配置环境变量
+
+ wrangler secret put TURNSTILE_SITE_KEY
+ wrangler secret put TURNSTILE_SECRET_KEY.env 文件中直接配置这两个变量。
+ 完成
+ 支付安全
- 状态说明
+
+
+
+
+
+
+ 配置状态
+ 行为
+
+
+ 两个变量都未配置
+ Turnstile 默认关闭,不影响现有登录流程
+
+
+ 两个变量都已配置
+ 登录页自动显示 Turnstile 小组件,服务端强制校验
+
+
+
+ 只配置了一个变量
+ 系统自动视为未启用,避免半配置状态
+