CAPTCHA対応

This commit is contained in:
CyberRex
2026-05-25 11:46:42 +09:00
parent d4918762d2
commit ef476402fc
11 changed files with 482 additions and 4 deletions

View File

@@ -20,6 +20,8 @@
- 認証必須ミドルウェア
- 登録 API
- ログイン API
- 認証画面向け CAPTCHA 公開設定 API
- 登録 / ログイン API の CAPTCHA 検証
- ログアウト API
- 現在ユーザー取得 API
- サイト一覧 API
@@ -156,6 +158,7 @@
```text
GET /api/health
GET /api/auth/captcha
GET /api/auth/csrf
POST /api/auth/register
POST /api/auth/login
@@ -290,6 +293,8 @@ pnpm monitor:worker
- アカウント削除には現在のパスワードを要求。
- アカウント削除は `users` の削除を起点に関連データを CASCADE で削除。
- ログイン時、TOTP が有効なユーザーは OTP 検証を必須化。
- Cloudflare Turnstile / hCaptcha による登録・ログイン時の CAPTCHA 検証を環境変数で有効化可能。
- CAPTCHA 有効時、TOTP ログインの各 POST で新しい CAPTCHA トークンを必須化。
- 通知タイミングは 1 時間以上、17520 時間以内に制限。
- 同一サイト内の重複した通知タイミングを拒否。
- SQL はプレースホルダを使用。