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.
Section 5.2. Un modèle <strong>de</strong> sécurité générique et hiérarchique<br />
Si on reprend le modèle <strong>de</strong> base <strong>de</strong> ProActive on s’aperçoit que les entités qui peuvent interagir<br />
sont multiples, nous pouvons, dans un premier temps, i<strong>de</strong>ntifier au moins les objets actifs<br />
et les runtimes. Cela signifie que nous allons <strong>de</strong>voir proposer un modèle <strong>de</strong> sécurité qui puisse<br />
prendre en compte à la fois la particularité <strong>de</strong>s objets actifs en tant, par exemple, qu’entités<br />
mobiles mais aussi celles <strong>de</strong>s runtimes en tant qu’entités capables <strong>de</strong> contenir d’autres entités<br />
comme les nœuds ou les objets actifs.<br />
Par ailleurs, il est possible d’extraire <strong>de</strong>s différents objets composant <strong>une</strong> <strong>architecture</strong> distribuée<br />
(runtimes, nœuds) et <strong>de</strong>s objets actifs un ensemble distinct <strong>de</strong> fonctionnalités qui vont<br />
servir <strong>de</strong> base comm<strong>une</strong> à la définition et la création d’<strong>une</strong> spécification concernant les besoins<br />
<strong>de</strong> sécurité d’<strong>une</strong> <strong>architecture</strong> distribuée. Cet ensemble <strong>de</strong> fonctionnalités est regroupé sous le<br />
terme d’entité sécurisée et nous définissons <strong>une</strong> entité sécurisée <strong>de</strong> la manière suivante :<br />
Définition 10 Entité Sécurisée<br />
Par définition, on nommera <strong>une</strong> entité sécurisée tout co<strong>de</strong> ou donnée auquel est associé un mécanisme<br />
<strong>de</strong> sécurité permettant l’interception <strong>de</strong> toutes les interactions avec l’environnement extérieur.<br />
À <strong>une</strong> entité sécurisée sont associées <strong>une</strong> i<strong>de</strong>ntité et <strong>une</strong> politique <strong>de</strong> sécurité. À partir <strong>de</strong><br />
sa politique <strong>de</strong> sécurité, un gestionnaire <strong>de</strong> sécurité pourra déduire <strong>une</strong> politique <strong>de</strong> sécurité pour<br />
<strong>une</strong> interaction donnée.<br />
tel-00239252, version 1 - 5 Feb 2008<br />
Cette définition permet d’atteindre en partie l’un <strong>de</strong>s objectifs <strong>de</strong> notre modèle : l’autonomie<br />
dont dispose l’entité sécurisée vis-à-vis <strong>de</strong> la prise <strong>de</strong> décision concernant les règles <strong>de</strong> sécurité.<br />
Du fait que nous nous trouvons dans <strong>une</strong> <strong>architecture</strong> répartie, aucun postulat ne peut être fait,<br />
par exemple, sur la connectivité du réseau sous-jacent ou sur tout autre défaillance pouvant survenir<br />
dans <strong>une</strong> <strong>architecture</strong> distribuée, le gestionnaire <strong>de</strong> sécurité doit pouvoir être autonome et<br />
pouvoir prendre les décisions concernant la sécurité <strong>de</strong> l’objet qu’elle sécurise <strong>de</strong> manière automatique<br />
sans avoir recours à un serveur <strong>de</strong> politique centralisé, ou en minimisant les communications<br />
vers <strong>de</strong>s objets se trouvant à distance. En dotant l’entité sécurisée d’<strong>une</strong> politique <strong>de</strong><br />
sécurité, le mécanisme <strong>de</strong> sécurité va pouvoir utiliser cette politique <strong>de</strong> sécurité pour prendre les<br />
décisions <strong>de</strong> sécurité nécessaires vis-à-vis <strong>de</strong> cette entité sécurisée.<br />
Par ailleurs, on ne fait auc<strong>une</strong> supposition sur l’objet contenu par l’entité sécurisée. Notre<br />
modèle <strong>de</strong> sécurité n’est pas intrusif : il ne requiert auc<strong>une</strong> modification <strong>de</strong> l’objet sécurisé ni statiquement<br />
en modifiant le co<strong>de</strong> source, ni dynamiquement par réflexivité. Cette approche permet<br />
l’utilisation et la sécurisation <strong>de</strong>s objets java dont le co<strong>de</strong> source n’est pas disponible mais aussi<br />
l’utilisation d’objets écris dans un autre langage (en C, C++, etc) et dont le chargement au sein <strong>de</strong><br />
la machine virtuelle a été effectué par la Java Native Interface (JNI). De cette façon, l’objet sécurisé<br />
continue son exécution <strong>de</strong> manière classique, sans avoir nullement notion d’être sécurisé.<br />
Nous allons maintenant décrire plus en détails ce mécanisme d’interception.<br />
La notion <strong>de</strong> hiérarchie qui va exister pendant l’exécution d’<strong>une</strong> application est importante<br />
du point <strong>de</strong> vue <strong>de</strong> la sécurité car elle induit qu’<strong>une</strong> entité sécurisée peut imposer <strong>une</strong> politique<br />
<strong>de</strong> sécurité précise aux entités qu’elle contient.<br />
5.2.1 Contrôle d’accès aux entités<br />
Afin <strong>de</strong> protéger un objet et étant donné qu’on ne peut pas modifier l’objet lui-même, il<br />
convient <strong>de</strong> sécuriser les échanges <strong>de</strong> flux entre cet objet et les objets extérieurs c’est-à-dire les<br />
appels <strong>de</strong> métho<strong>de</strong>s <strong>de</strong> et vers cet objet ainsi que les valeurs <strong>de</strong> retour résultantes <strong>de</strong> ces appels<br />
<strong>de</strong> métho<strong>de</strong>s. En d’autres termes, il faut intercepter tous les messages entrants et sortants.<br />
La figure 5.1 expose la solution retenue. On place un objet d’interception, le gestionnaire<br />
<strong>de</strong> sécurité, entre les interactions venant du mon<strong>de</strong> extérieur et l’objet protégé. Les messages<br />
entrant et sortant seront interceptés par le gestionnaire <strong>de</strong> sécurité. Au sein <strong>de</strong> l’entité les communications<br />
entre l’objet sécurisé et l’objet d’interposition s’effectuent en clair, tandis que les<br />
communications entre le gestionnaire <strong>de</strong> sécurité et les objets extérieurs à l’entité peuvent être<br />
67