Réalisation d'un langage dédié à l'expression de politiques de sécurité en systèmes d'information

De Ensiwiki
Aller à : navigation, rechercher

Effectif : 3 à 4 étudiants

Encadrant : Akram Idani (Akram.Idani@imag.fr)

L’interconnexion des Systèmes d’Information (SI) et leur ouverture au monde du web les rendent de plus en plus vulnérables. De ce fait, la mise en place de politiques de contrôle d'accès efficaces à des ressources sensibles concerne la plupart des organisations d'aujourd'hui. Les enjeux de la sécurité de leurs SI sont d'une extrême importance : pertes financières, altération de l'image de marque de la société, mise hors d’usage de systèmes de production ou encore fuite d’informations confidentielles... Des moyens considérables sont ainsi investis par les grandes entreprises d’aujourd’hui pour garantir la sécurité, et en particulier, la confidentialité, l’intégrité et la disponibilité des informations.

Dans ce contexte, la mise en place de politiques de contrôle d'accès à des ressources sensibles se doit d'être conforme aux standards d'aujourd'hui. Ce projet de spécialité sera axé autour du standard XACML (Access Control Markup Language) ; d'une part, parce que plusieurs implémentations standards de XACML existent (e.g. Sun's XACML, Enterprise XACML, etc), et d'autre part, parce que ce standard permettra de garantir l'interopérabilité des Systèmes d'Information avec des serveurs d'application intégrant ces implémentations et bien connus dans un contexte industriel (JBoss, IBM Tivoli Security Policy Manager, Axiomatics Policy Server, Cisco Enterprise Policy Manager, etc).

L'objectif visé est de réaliser un langage (DSML - Domain Specific Modeling Language) textuel et outillé, qui soit dédié aux représentations XACML des politiques de contrôle d'accès, et des requêtes/réponses. Aujourd'hui la représentation XACML de ces artefacts correspond à un format XML difficile à manier aussi bien sur le plan syntaxique que sémantique. On souhaite donc proposer un langage :

  • plus facile à comprendre,
  • exempts des constructions XML,
  • représentant les concepts du contrôle d'accès (utilisateur, rôle, permission, action, ressource, etc)
  • et qui soit traduisible en XACML.

Le projet se déroulera en trois étapes :

  1. Compréhension de XACML en se référant à la documentation standard (http://docs.oasis-open.org/xacml/3.0/xacml-3.0-core-spec-os-en.html)
  2. Proposition et spécification précise du langage dédié
  3. Implémentation d'un front-end pour ce langage

La traduction du langage dédié en XACML n'est pas visée par le présent projet, mais peut être étudiée en fonction de la progression des étudiants.

Prérequis : Théorie des langages, ACVL. La connaissance de ANTLR serait un plus.