Chiffrement, journalisation et sécurité

La loi exige des mesures de sécurité raisonnables selon la sensibilité des renseignements. Les choix ci-dessous sont des bonnes pratiques courantes.

Chiffrement

  • En transit : TLS 1.2 minimum, TLS 1.3 privilégié; HSTS.
  • Au repos : AES-256 (base, disques, sauvegardes).
  • Clés : dans un KMS ou Vault, rotation, séparation des rôles (qui chiffre ≠ qui administre).

Journaux sans renseignements personnels

Les journaux (Datadog, Sentry, ELK, CloudWatch) sont une source de fuite fréquente : courriels dans les URL, jetons dans les en-têtes, payloads JSON complets dans les stack traces.

import re

PATTERNS = [
    (re.compile(r"[\w.+-]+@[\w-]+\.[\w.]+"), "[courriel]"),
    (re.compile(r"Bearer\s+[A-Za-z0-9._-]+"), "Bearer [jeton]"),
    (re.compile(r"\b\d{3}[ -]?\d{3}[ -]?\d{3}\b"), "[numéro]"),
]

def scrub(message: str) -> str:
    for pattern, repl in PATTERNS:
        message = pattern.sub(repl, message)
    return message

Configurez aussi la redaction à la source (Sentry beforeSend, règles d'exclusion Datadog, processeurs Logstash) plutôt que compter sur le seul nettoyage a posteriori.

Audit et rétention des logs

Journal d'audit des accès aux RP (qui, quoi, quand), rétention limitée et accès restreint aux logs.