Aller au contenu

Vérifier l’isolation des espaces clients dans un SaaS

Un plan concret pour vérifier accès aux données, exports et tâches de fond entre espaces clients séparés.

Nora Henning2 min de lecture
Bac divisé avec piles de cartes roses et vertes dans des compartiments séparés.

Définissez d’abord l’espace client

Un tenant est un espace client séparé dans votre application. Il ne correspond pas nécessairement à une personne ni toujours à une entreprise entière. Définissez quelles données vont ensemble, qui peut être membre et quelles tâches chaque rôle peut effectuer. Un compte utilisateur peut avoir plusieurs appartenances ; se connecter ne sélectionne pas à lui seul un périmètre de données autorisé.

Microsoft distingue le tenant logique du déploiement technique. Base dédiée et tables partagées entraînent des exigences différentes d’exploitation et de protection des accès. Aucune option ne remplace la vérification de tous les chemins d’accès prévus.

Un plan avec deux espaces clients fictifs

Prévoyez ces cas avec des données synthétiques dans un environnement de test séparé. Ce sont des résultats attendus, pas un test de sécurité réalisé. Les espaces s’appellent TA et TB. L’intervention SV-12 appartient à TA, l’intervention SV-41 à TB. Chaque compte de test ne possède les droits d’intervention prévus que dans son propre espace.

Accès vérifié

Action

Résultat attendu

Compte habilité dans TA

Lire SV-12

Seules ses données d’intervention autorisées pour ce rôle apparaissent.

Même compte dans TA

Lire ou modifier directement SV-41, ou récupérer sa pièce jointe

Aucune donnée de TB n’est transmise ni modifiée.

Compte dans TA

Rechercher et exporter

Résultats et fichier ne contiennent aucune donnée de TB.

Compte de TB, puis compte de TA

Utiliser le même chemin d’accès au cache côté serveur

TA ne reçoit aucun résultat précédemment stocké pour TB.

Compte dans TA

Mettre un export en file, retirer l’accès avant traitement

La tâche de fond vérifie à nouveau et est refusée selon cette règle de test.

Vérifiez données et modifications réelles sur le serveur. Un bouton masqué ne prouve pas l’isolation. Utilisez aussi un identifiant connu d’un objet d’un autre espace : un identifiant difficile à deviner ne doit pas être la seule barrière.

Maintenez la limite sur tout le parcours

OWASP demande un contexte tenant vérifié par le serveur et une autorisation adaptée. Les identifiants d’espace envoyés par le client sont un choix, pas une permission. Vérifiez appartenance actuelle, action autorisée et rattachement de l’objet cible. Sans le contexte requis, l’application ne doit pas se rabattre sur une requête sans restriction.

Incluez pièces jointes, clés de cache dépendant de l’espace, exports et traitements différés. Les tâches de fond nécessitent une transmission fiable du contexte et de l’autorisation, puis des contrôles adaptés au traitement. Définissez le sort des droits retirés entre-temps.

Un contenu public et global n’a pas besoin d’un rattachement artificiel à un tenant. Les tâches de plateforme entre espaces exigent en revanche une identité expressément habilitée et des accès traçables. Consignez séparément résultat attendu, constat réel et correction pour chaque cas. Répétez les contrôles concernés si les chemins d’accès ou rôles changent.

Sources

Écrit par

  • Nora HenningRédactrice sécurité informatiqueNora Henning s’occupe chez ASES des contenus éditoriaux consacrés à la sécurité informatique. Elle écrit sur la sécurité des applications et explique le lien entre les droits d’accès et la protection des données de l’entreprise.

Suivre ASES

À lire aussi

Tous les articles

Développement logiciel avec ASES

Logiciels sur mesure, applications web et mobiles