Безопасность, строгая валидация и ограничение запросов (Rate Limiting)
Защитите ваш магазин от DDoS-атак, перебора паролей и вредоносных ботов с помощью продвинутых алгоритмов в Redis.
1. Архитектура ограничения запросов на базе Redis
Входящие запросы по IP анализируются с нулевой задержкой в оперативной памяти Redis по алгоритму скользящего окна (Sliding Window).
- Критические маршруты API: Для защиты от брутфорса запросы аутентификации и оформления заказа ограничены до 5 в минуту.
- Общая навигация: Просторные лимиты, позволяющие пользователям комфортно просматривать каталог товаров.
2. Политики безопасности и периметровая защита Caddy
Сервер Caddy служит первой линией обороны с автоматическим шифрованием TLS 1.3 и управляемыми SSL-сертификатами.
Защита платежных маршрутов
Банковский уровень надежности
Изоляция платежных эндпоинтов и криптографическая проверка подписей входящих вебхуков.
Санитизация и валидация входящих данных
Строгие схемы на Zod
Валидация форм с помощью схем Zod для защиты от SQL-инъекций и XSS-атак.
Реализация Rate Limiting в обработчиках API
typescript// ── OTP request: phone (POST /auth/customer/phone-auth) ───────────────{ method: "POST", matcher: "/auth/customer/phone-auth", middlewares: [ createRateLimitMiddleware({ maxAttempts: 3, windowMs: 60 * 60 * 1000, // 1 hour countOn: "success", // only count actual OTP sends message: "Too many OTP requests. Please try again later.", }), ],},// ── OTP register: phone ───────────────────────────────────────────────{ method: "POST", matcher: "/auth/customer/phone-register", middlewares: [ createRateLimitMiddleware({ maxAttempts: 5, windowMs: 30 * 60 * 1000, // 30 minutes countOn: "failure", // only penalize wrong codes message: "Too many failed attempts. Please try again later.", }), ],},Преимущества хранения счетчиков в памяти Redis
Счетчики запросов хранятся в оперативной памяти Redis внутри Docker, гарантируя проверку за микросекунды даже при высоких нагрузках.