Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.snakysec.com/llms.txt

Use this file to discover all available pages before exploring further.

Runbook — Offboarding d’un client

Criticité: Haute — irréversible après purge RGPD Prérequis: Validation contractuelle que le client a bien demandé la suppression

Checklist pré-offboarding

  • Confirmation écrite du client (email ou ticket)
  • Rapport final téléchargé et remis au client
  • Export RGPD réalisé et transmis si demandé (via GET /api/v1/clients/:id/export)
  • Factures et données comptables archivées hors plateforme (5 ans légal FR)
  • Date effective de fin de contrat confirmée

Étape 1 — Export RGPD (si demandé par le client)

# Télécharger l'export complet (JSON, secrets redactés)
curl -o gdpr-export-<slug>.json \
  "https://platform.snakysec.com/api/v1/clients/<id>/export" \
  -H "Authorization: Bearer <admin-token>"

# Transmettre de manière sécurisée au client (chiffré)

Étape 2 — Télécharger les derniers rapports

# Rapport d'audit PDF
curl -o "rapport-final-<slug>.pdf" \
  "https://platform.snakysec.com/api/v1/audits/<last-audit-id>/report" \
  -H "Authorization: Bearer <token>"

# Plan de remédiation
curl -o "plan-remediation-<slug>.pdf" \
  "https://platform.snakysec.com/api/v1/clients/<id>/documents/remediation-plan" \
  -H "Authorization: Bearer <token>"

Étape 3 — Désactiver l’accès (soft delete)

Avant la purge définitive, désactiver pour éviter toute activité :
curl -X DELETE "https://platform.snakysec.com/api/v1/clients/<id>" \
  -H "Authorization: Bearer <admin-token>"
# → isActive: false, client masqué de l'interface

Étape 4 — Purge RGPD définitive

⚠️ IRRÉVERSIBLE — toutes les données sont supprimées en cascade
# Requiert le header de confirmation explicite
curl -X DELETE "https://platform.snakysec.com/api/v1/clients/<id>/gdpr" \
  -H "Authorization: Bearer <admin-token>" \
  -H "X-Purge-Confirm: purge"

# Réponse attendue :
# { "success": true, "message": "Client '...' and all associated data permanently deleted",
#   "purged": { "auditRuns": X, "gapFindings": X, "alerts": X, "secrets": X } }

Étape 5 — Nettoyage infrastructure

# 1. Supprimer les secrets Vault
docker exec mssp-vault vault kv delete mssp/clients/<slug>

# 2. Supprimer les fichiers d'audit stockés
rm -rf /data/reports/<slug>/
# (ou via le volume Docker)

# 3. Supprimer le fichier de config GitLab
git rm clients/<slug>/client.config.json
git commit -m "chore: remove client config for offboarded tenant <slug>"
git push

# 4. Révoquer l'app registration dans le tenant client (Azure Portal)
#    App registrations → SnakySec-MSSP → Delete

Étape 6 — Confirmation finale

  • Purge RGPD confirmée (log dans PlatformAuditLog action client.gdpr_purge — survit à la suppression)
  • Secrets Vault supprimés
  • Fichiers locaux supprimés
  • App registration Azure révoquée
  • Email de confirmation envoyé au client avec référence du ticket
  • Dossier contractuel archivé (hors plateforme)