Cas d'usage

Un trail inviolable que ton auditeur peut vérifier

SOC 2 et ISO 27001 demandent tous les deux un registre immuable des actions sensibles. Recalled émet des events hash-chaînés et signés pour que ton auditeur vérifie l'intégrité sans faire confiance à ta base.

Le problème

SOC 2 Type II et ISO 27001 demandent des logs d'accès, des logs de changement et la preuve qu'ils ne peuvent pas être réécrits en douce. Une table de base classique ne passe pas le test 'immuable'. Greffer un log en write-only est du boulot que tu ne veux pas refaire, et expliquer ton modèle d'intégrité maison à un auditeur externe est toute une histoire.

La façon Recalled

Chaque event Recalled est signé en HMAC-SHA256 avec une clé serveur et chaîné au précédent. Les auditeurs appellent GET /v1/events/verify pour vérifier toute la chaîne d'un coup, ou exportent une tranche CSV/JSON avec les colonnes hash et signature. La clé de signature ne touche jamais la base, donc même une compromission totale de la DB ne permet pas de forger une réécriture valide. La rétention reste sous ton contrôle selon ton plan.

Émettre une action sensible
// Every sensitive action goes through Recalled.
// Auditors query the signed trail, not your DB.
await recalled.events.create({
  action: "data.export.requested",
  actor: { id: admin.id, email: admin.email },
  organization: tenant.id,
  targets: [{ type: "dataset", id: datasetId }],
});

Pourquoi les équipes conformité utilisent Recalled

  • Signature HMAC + chaîne

    Chaque event porte une signature HMAC-SHA256 clé par un secret qui vit hors base, plus un lien de hash vers la ligne précédente. Appelle GET /v1/events/verify à tout moment pour tout auditer d'un coup.

  • Stockage hors base

    Le trail ne vit pas dans ton Postgres. Compromettre ta base principale ne permet pas à un attaquant de réécrire l'audit.

  • Exports friendly pour auditeurs

    Exports CSV ou JSON, filtrés par plage de dates ou préfixe d'action, avec les colonnes de hash chain incluses.

  • Effacement compatible RGPD

    Même avec la hash chain, l'effacement RGPD anonymise les colonnes acteur sans invalider les events voisins.

Cas d'usage liés

Ton prochain audit log est à 2 minutes

Arrête de bricoler ta propre table de logs. Branche Recalled, émets ton premier event, passe à la suite.