80 lines
2.9 KiB
Bash
80 lines
2.9 KiB
Bash
#!/bin/bash
|
|
# Turnstile 验证快速测试脚本
|
|
|
|
echo "=========================================="
|
|
echo " Turnstile 人机验证 - 快速测试"
|
|
echo "=========================================="
|
|
echo ""
|
|
|
|
# 检查服务是否运行
|
|
echo "1. 检查服务状态..."
|
|
if curl -s http://localhost:18888/api/settings/public > /dev/null 2>&1; then
|
|
echo "✅ 服务正在运行"
|
|
else
|
|
echo "❌ 服务未运行,请先启动服务"
|
|
echo " 启动命令: ./team-api.exe 或 gf run"
|
|
exit 1
|
|
fi
|
|
|
|
echo ""
|
|
echo "2. 检查公共设置..."
|
|
SETTINGS=$(curl -s http://localhost:18888/api/settings/public)
|
|
echo "$SETTINGS" | jq '.data.settings | {turnstile_enabled, turnstile_site_key, register_email_verification}'
|
|
|
|
echo ""
|
|
echo "3. 当前验证配置:"
|
|
TURNSTILE_ENABLED=$(echo "$SETTINGS" | jq -r '.data.settings.turnstile_enabled')
|
|
TURNSTILE_SITE_KEY=$(echo "$SETTINGS" | jq -r '.data.settings.turnstile_site_key')
|
|
EMAIL_VERIFICATION=$(echo "$SETTINGS" | jq -r '.data.settings.register_email_verification')
|
|
|
|
if [ "$EMAIL_VERIFICATION" = "true" ]; then
|
|
echo " 📧 邮箱验证:启用(优先级最高)"
|
|
elif [ "$TURNSTILE_ENABLED" = "true" ] && [ -n "$TURNSTILE_SITE_KEY" ] && [ "$TURNSTILE_SITE_KEY" != "null" ]; then
|
|
echo " 🔒 Turnstile 验证:启用"
|
|
echo " Site Key: $TURNSTILE_SITE_KEY"
|
|
else
|
|
echo " 🎯 滑块验证码:启用(降级模式)"
|
|
fi
|
|
|
|
echo ""
|
|
echo "=========================================="
|
|
echo " 测试建议"
|
|
echo "=========================================="
|
|
echo ""
|
|
echo "前端测试:"
|
|
echo " 1. 访问注册页面: http://localhost:3000/tenant/auth/register"
|
|
echo " 2. 访问登录页面: http://localhost:3000/tenant/auth/login"
|
|
echo ""
|
|
|
|
if [ "$TURNSTILE_ENABLED" != "true" ] || [ -z "$TURNSTILE_SITE_KEY" ] || [ "$TURNSTILE_SITE_KEY" = "null" ]; then
|
|
echo "⚠️ Turnstile 未配置"
|
|
echo ""
|
|
echo "配置步骤:"
|
|
echo " 1. 获取 Cloudflare Turnstile 密钥"
|
|
echo " https://dash.cloudflare.com/turnstile"
|
|
echo ""
|
|
echo " 2. 通过管理后台配置:"
|
|
echo " http://localhost:3000/admin → 系统设置 → 安全配置"
|
|
echo ""
|
|
echo " 3. 或通过数据库配置:"
|
|
echo " UPDATE sys_options SET value = 'true' WHERE key = 'turnstile_enabled';"
|
|
echo " UPDATE sys_options SET value = 'YOUR_SITE_KEY' WHERE key = 'turnstile_site_key';"
|
|
echo " UPDATE sys_options SET value = 'YOUR_SECRET_KEY' WHERE key = 'turnstile_secret_key';"
|
|
echo ""
|
|
else
|
|
echo "✅ Turnstile 已配置"
|
|
echo ""
|
|
echo "测试流程:"
|
|
echo " 1. 打开注册页面"
|
|
echo " 2. 填写表单"
|
|
echo " 3. 完成 Turnstile 验证(点击复选框)"
|
|
echo " 4. 点击注册"
|
|
echo " 5. 检查是否成功"
|
|
echo ""
|
|
fi
|
|
|
|
echo "详细文档:"
|
|
echo " - 实施指南: docs/security/turnstile-implementation-guide.md"
|
|
echo " - 测试清单: docs/security/turnstile-test-checklist.md"
|
|
echo ""
|