En informatique, la polyinstantiation est la création et gestion de plusieurs instances identiques quant à leur type et valeur tout en préservant leur indépendance. Il peut arriver, notamment dans le cas de base de données, que deux instances aient le même nom (identifiant, clé primaire).

Sécurité des systèmes

modifier

En sécurité des systèmes d'exploitation, la polyinstantiation est le fait de créer une vue spécifique à un utilisateur ou à un processus d'une ressource partagée. Ainsi, le processus A ne peut pas affecter le processus B en écrivant du code malveillant sur une ressource partagée, telle que le répertoire UNIX /tmp[1],[2].

La polyinstanciation des ressources partagées a des objectifs similaires à ceux de l'isolation des processus, une méthode d'utilisation de la mémoire virtuelle, dans laquelle les processus se voient attribuer leur propre espace d'adressage virtuel isolé pour empêcher le processus A d'écrire dans l'espace mémoire du processus B.

Bases de données

modifier

En bases de données, la polyinstantiation est une terminologie SQL (langage de requête structuré) liée aux bases de données. Elle permet à une relation de contenir plusieurs lignes ayant la même clé primaire ; les multiples instances sont différenciées en fonction de leur niveau de sécurité[3]. Cela se produit en raison d’une politique de contrôle d'accès obligatoire. Selon le niveau de sécurité établi, un enregistrement contient des informations sensibles et l'autre non, c'est-à-dire qu'un utilisateur verra des versions différentes de l'enregistrement en fonction de son niveau d'habilitations préalablement défini par la politique de l'entreprise [4]

Dans le tableau ci-dessous, la clé primaire est Nom et λ (x) est le niveau de sécurité :

Nom λ(Nom) Âge λ(Âge) λ
Alice Secret 18 Très secret Très secret
Bob Secret 22 Secret Secret
Bob Secret 33 Très secret Très secret
Trudy Très secret 15 Très secret Très secret

Bien qu’utile d’un point de vue sécurité, la polyinstantiation soulève plusieurs problèmes :

  • Problème moral, puisqu’il s’agit de dissimuler ou tromper
  • Cohérence des vues fournie
  • Explosion du nombre de lignes

Cryptographie

modifier

En cryptographie, la polyinstantiation est l'existence d'une clé cryptographique dans plusieurs emplacements physiques sécurisés.

Références

modifier
  1. Romans, « Improve security with polyinstantiation: Using a Pluggable Authentication Module to protect private data », IBM DeveloperWorks,
  2. Coker, « Polyinstantiation of directories in an SE Linux system », Sage 2006,
  3. Jajodia, Sandhu et Blaustein, « Solutions to the Polyinstantiation Problem »,
  4. Charles P. Pfleeger et Shari Lawrence Pfleeger, Security in Computing, Prentice Hall Professional, (ISBN 9780130355485, lire en ligne  )