Zum Hauptinhalt springen

Konfigurierte Limiter

PrefixLimitKeyed onSurface
rl:auth (Better Auth wrapper)5 / 60 sIP/api/auth/sign-in/*

Coarse per-IP gate on sign-in endpoints

rl:abuse:email5 / 1 hsha256(email)magic-link send + email-OTP send

Email-bombing fix: caps sends per target inbox regardless of source IP

rl:captcha:challenge30 / 60 sIP/api/captcha/challenge

Prevents stockpiling of pre-solved ALTCHA challenges

ratelimit:ai:chat20 / 60 sIP/api/ai/{chatbot,deskbot}

Per-user rate limit on chat completions (in addition to per-user daily token cap)

rl:feedback:submit3 / 1 hIP/feedback (form action)

Public feedback submission — paired with honeypot for unauthenticated posts

rl:username:check20 / 60 sIP/api/showcases/check-username

Username availability probe — prevents enumeration scraping

Redis-unavailable behavior differs by environment: fail closed in production, fall through in dev.

Geht dieses Pattern noch besser? Sag uns, wie.

Feedback geben