these doctorat une architecture de securité
these doctorat une architecture de securité
these doctorat une architecture de securité
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Chapitre 1. Introduction<br />
grilles <strong>de</strong> calcul. En effet, la sécurité au sein <strong>de</strong> la grille <strong>de</strong> calcul est généralement assurée par<br />
les administrateurs <strong>de</strong> cette <strong>de</strong>rnière. Il peut aussi arriver que <strong>de</strong>ux grilles <strong>de</strong> calcul puissent<br />
être configurées pour fonctionner ensemble <strong>de</strong> manière sécurisée. Cette configuration suppose la<br />
mise en place d’<strong>une</strong> organisation virtuelle. Du point <strong>de</strong> vue <strong>de</strong> la sécurité, elle permet <strong>de</strong> réunir<br />
un ensemble d’utilisateurs et <strong>de</strong> ressources au sein d’<strong>une</strong> même communauté et d’assurer un<br />
certain niveau <strong>de</strong> confiance à tous ses membres. Si l’organisation virtuelle facilite la création<br />
<strong>de</strong> communautés, sa configuration ne dépend pas d’un utilisateur et peut ne pas répondre à ses<br />
besoins immédiats. Dans la plupart <strong>de</strong>s configurations que nous avons rencontrées lors <strong>de</strong> l’utilisation<br />
<strong>de</strong> plusieurs grilles <strong>de</strong> calcul, elles sont interconnectées par <strong>de</strong>s réseaux publics comme<br />
Internet. La sécurité <strong>de</strong>s communications entre ces grilles n’est pas assurée.<br />
tel-00239252, version 1 - 5 Feb 2008<br />
Il nous semble important <strong>de</strong> gar<strong>de</strong>r un modèle <strong>de</strong> sécurité qui permette, comme dans la plupart<br />
<strong>de</strong>s solutions clés en main, aux administrateurs <strong>de</strong> configurer les paramètres <strong>de</strong> sécurité <strong>de</strong><br />
leur grille mais aussi <strong>de</strong> laisser l’utilisateur exprimer ses propres besoins en termes <strong>de</strong> sécurité<br />
concernant le déploiement <strong>de</strong> son application.<br />
Cependant, l’objectif <strong>de</strong> cette thèse est d’incorporer dans ce modèle <strong>de</strong> sécurité un moyen<br />
permettant à tous les acteurs d’exprimer leurs besoins en terme <strong>de</strong> sécurité. Parallèlement, ce<br />
modèle doit être capable <strong>de</strong> fournir <strong>une</strong> infrastructure <strong>de</strong> sécurité au sein <strong>de</strong> laquelle <strong>de</strong>s applications<br />
sans notion explicite <strong>de</strong> sécurité pourront être déployées <strong>de</strong> manière sécurisée grâce à<br />
l’utilisation <strong>de</strong> mécanismes <strong>de</strong> sécurité transparents.<br />
Les travaux présentés dans cette thèse ont été effectué dans le cadre <strong>de</strong> l’intergiciel (middleware)<br />
ProActive. Il représente <strong>une</strong> couche logicielle qui s’intercale entre le co<strong>de</strong> applicatif (software)<br />
et la partie matérielle (hardware). Son but est <strong>de</strong> fournir <strong>de</strong>s services facilitant le développement,<br />
la composition et l’exécution d’applications dans un environnement réparti.<br />
La bibliothèque cible la programmation et le calcul distribués, son but est <strong>de</strong> fournir les mécanismes,<br />
concepts, services permettant la distribution <strong>de</strong>s divers composants d’<strong>une</strong> application<br />
et cela même si l’application n’avait pas été écrite à l’origine pour fonctionner <strong>de</strong> manière distribuée.<br />
Une application déployée avec la bibliothèque va pouvoir utiliser tout aussi bien <strong>de</strong>s<br />
grilles <strong>de</strong> calcul que <strong>de</strong>s ordinateurs <strong>de</strong> bureau pour mener à bien son exécution. L’acquisition <strong>de</strong><br />
toutes ces ressources peut se faire par le biais <strong>de</strong> plusieurs métho<strong>de</strong>s <strong>de</strong> réservations (OAR, LSF,<br />
GRAM, etc) ou par connexion directe (RSH, SSH) avec la machine hôte. Les connexions entre les<br />
différentes ressources peuvent utiliser plusieurs types <strong>de</strong> protocoles réseaux tels que RMI, HTTP<br />
ou encore la combinaison <strong>de</strong>s protocoles RMI et SSH qui permet l’encapsulation <strong>de</strong>s flux RMI au<br />
travers <strong>de</strong> connexions SSH.<br />
La gestion <strong>de</strong>s ressources est transparente au co<strong>de</strong> applicatif qui s’exécute au <strong>de</strong>ssus <strong>de</strong> la<br />
bibliothèque. Le co<strong>de</strong> utilise ces ressources comme si ces <strong>de</strong>rnières étaient locales et disponibles<br />
sur <strong>une</strong> seule machine. Cette transparence vis-à-vis <strong>de</strong> la distribution <strong>de</strong>s composants <strong>de</strong> l’application<br />
pose bien évi<strong>de</strong>mment <strong>de</strong>s problèmes <strong>de</strong> sécurité variables, et fonction du déploiement,<br />
voire <strong>de</strong> la dynamique <strong>de</strong> l’application.<br />
De plus, il faut noter que la bibliothèque ProActive est prévue pour être déployée au-<strong>de</strong>ssus<br />
<strong>de</strong> n’importe quelle machine virtuelle java qui propose les fonctionnalités nécessaires à son exécution.<br />
La bibliothèque ne requiert pas l’utilisation d’<strong>une</strong> machine virtuelle modifiée. Cette approche<br />
permet à la bibliothèque d’utiliser n’importe quelle machine virtuelle et contribue ainsi à<br />
son utilisation sur tout type d’ordinateur comportant <strong>une</strong> machine virtuelle java. Ce critère nous<br />
oblige à considérer les hôtes sur lequel la machine virtuelle va s’exécuter comme <strong>de</strong> confiance.<br />
La sécurité est <strong>une</strong> fonctionnalité clé dans le mon<strong>de</strong> <strong>de</strong>s systèmes distribués. Ces systèmes,<br />
du fait <strong>de</strong> leur distribution, sont beaucoup plus fragiles et sensibles aux problèmes <strong>de</strong> sécurité.<br />
Il est important <strong>de</strong> concevoir <strong>une</strong> <strong>architecture</strong> capable à la fois <strong>de</strong> supporter les contraintes <strong>de</strong>s<br />
systèmes distribués et qui sera en mesure <strong>de</strong> répondre à l’attente <strong>de</strong>s divers acteurs qu’ils soient<br />
développeurs, utilisateurs ou administrateurs. Afin <strong>de</strong> répondre à tous ces besoins et attentes,<br />
notre mécanisme <strong>de</strong> sécurité doit atteindre les objectifs suivants :<br />
2