13.05.2014 Views

these doctorat une architecture de securité

these doctorat une architecture de securité

these doctorat une architecture de securité

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Chapitre 6. Implantation dans ProActive : <strong>une</strong> approche transparente<br />

La troisième étape consiste à créer le gestionnaire <strong>de</strong> sécurité à partir <strong>de</strong>s objets créés précé<strong>de</strong>mment<br />

et <strong>de</strong> l’insérer au sein <strong>de</strong> l’ensemble <strong>de</strong> méta-objets qui seront passés à l’objet actif lors<br />

<strong>de</strong> sa création.<br />

// creation du gestionnaire <strong>de</strong> securite<br />

ProActiveSecurityManager psm =<br />

new ProActiveSecurityManager(keyStore,policyServer);<br />

// creation <strong>de</strong>s meta objets du futur objet actif<br />

MetaObjectFactory factory = ProActiveMetaObjectFactory.newInstance();<br />

// ajout du gestionnaire <strong>de</strong> securite aux meta objets<br />

factory.setProActiveSecurityManager(psm);<br />

La <strong>de</strong>rnière étape permet la création <strong>de</strong> l’objet actif sur le nœud par défaut en lui passant<br />

l’ensemble <strong>de</strong>s méta objets nécessaires à sa création.<br />

// pas <strong>de</strong> parametres, appel du constructeur par <strong>de</strong>faut <strong>de</strong> l’objet<br />

Object[] params = { } ;<br />

// creation <strong>de</strong> l’objet sur le noeud par <strong>de</strong>fault<br />

No<strong>de</strong> no<strong>de</strong> = No<strong>de</strong>Factory.getDefaultNo<strong>de</strong>();<br />

tel-00239252, version 1 - 5 Feb 2008<br />

// creation <strong>de</strong> l’objet actif<br />

A a = (A) ProActive.newActive("A", params, no<strong>de</strong> , null, factory);<br />

Cette approche permet la création d’un objet actif sécurisé à partir d’un environnement où le<br />

mécanisme <strong>de</strong> sécurité n’a pas été initialisé. Il est intéressant <strong>de</strong> noter que ce nouvel objet actif<br />

étant <strong>une</strong> entité sécurisé, le mécanisme <strong>de</strong> propagation dynamique du contexte <strong>de</strong> sécurité vu en<br />

5.7 peut entrer en jeu. Dans l’hypothèse où <strong>une</strong> métho<strong>de</strong> <strong>de</strong> l’objet actif A lance la création d’un<br />

nouvel objet actif b <strong>de</strong> type B sans notion explicite <strong>de</strong> sécurité :<br />

public class A {<br />

...<br />

public Object createActiveObject() {<br />

...<br />

B b = (B) ProActive.newActive("B", new Object[] {}, null);<br />

...<br />

}<br />

...<br />

}<br />

alors étant donné que l’objet A contient un gestionnaire <strong>de</strong> sécurité et dans le cas présent, un certificat<br />

d’application, le mécanisme <strong>de</strong> propagation dynamique intercepte le processus <strong>de</strong> création<br />

<strong>de</strong> l’objet actif B, génère un certificat d’entité à partir du certificat d’application et lui affecte les<br />

politiques <strong>de</strong> sécurité <strong>de</strong> l’objet A.<br />

6.1.4 Les domaines <strong>de</strong> sécurité<br />

Un domaine est, par définition, un serveur <strong>de</strong> politiques <strong>de</strong> sécurité qui permet <strong>de</strong> regrouper<br />

sous un même contexte <strong>de</strong> sécurité <strong>de</strong>s entités sécurisées. En tant que serveur, il doit être accessible<br />

à distance par les entités qu’il supervise. Cependant, son accès doit être restreint aux seules<br />

entités qui en ont le droit. En effet, son interrogation par <strong>de</strong>s tiers non autorisés pourrait leur<br />

permettre <strong>de</strong> déceler <strong>de</strong>s failles dans la politique <strong>de</strong> sécurité du domaine.<br />

En résumé un domaine doit être :<br />

– accessible à distance ;<br />

– sécurisé.<br />

Il s’agit tout simplement <strong>de</strong> la définition d’un objet actif sécurisé. Les étapes pour la création d’un<br />

domaine sont les suivantes :<br />

La première étape consiste à créer le gestionnaire <strong>de</strong> sécurité qui va servir à protéger l’objet<br />

actif représentant le domaine <strong>de</strong> sécurité.<br />

102

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!