Problèmes et alertes
Shield
Blipit Shield repère la force brute, le bourrage d'identifiants, les scanners et les tentatives d'injection sur le serveur et, si vous le choisissez, les bloque dans votre app. Les SDK Node et Next.js et le module Odoo ne font que récupérer la liste décidée par Blipit et l'appliquer. Shield reste désactivé tant que vous ne l'activez pas pour un projet.
1Node.js
Ajoutez le middleware avant vos routes, avec la clé secrète. Derrière un proxy ou un répartiteur de charge, réglez trustProxy sur le nombre de proxys devant l'app. actor renvoie le compte auquel quelqu'un se connecte, pour que les comptes bloqués soient refusés aussi. Fastify : app.addHook("onRequest", shield.fastify).
import * as Blipit from "@blipit/node";
import express from "express";
const app = express();
app.use(express.json());
app.use(Blipit.shield({ trustProxy: 1, actor: (req) => req.body?.email }));2Next.js
Enveloppez votre middleware.ts. Il tourne sur le runtime Edge et lit BLIPIT_SECRET_KEY. Pour garder votre propre middleware, passez-le : withBlipitShield(yourMiddleware).
import { withBlipitShield } from "@blipit/nextjs/shield";
export const middleware = withBlipitShield();3Odoo
Rien à ajouter. Depuis la version 1.18.14 du module, Odoo applique la même liste sur chaque page et à chaque connexion dès que Shield est activé.
4Comportement
- Les IP et comptes bloqués reçoivent 403 avec un court message texte ; les limites de connexion répondent 429 avec Retry-After.
- La liste est actualisée toutes les 30 secondes en arrière-plan, une requête n'attend donc jamais Blipit. Si Blipit est injoignable, la dernière liste reste en vigueur.
- En mode test rien n'est bloqué ; Blipit compte ce qui l'aurait été.
- Une fois par minute, votre app envoie combien de fois chaque blocage a servi et, tant que Shield est activé, un petit échantillon de requêtes : chemin, méthode, statut, IP, user agent et chaîne de requête sans les secrets. Les en-têtes, cookies, mots de passe et corps de requête ne sont jamais envoyés.
Bloqué ? Écrivez à support@blipit.io. Les clés et l'identifiant de chaque projet sont sous Clés API dans app.blipit.io.