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 />

6.1 Création <strong>de</strong>s entités sécurisées<br />

6.1.1 Le runtime sécurisé<br />

Comme toute entité sécurisée, un runtime possè<strong>de</strong> <strong>une</strong> i<strong>de</strong>ntité et <strong>une</strong> politique <strong>de</strong> sécurité.<br />

Ces paramètres peuvent être imposés au runtime soit lors <strong>de</strong> sa création (cas 1 et 2) comme<br />

paramètres du programme qui lance le runtime, soit lors <strong>de</strong> la création effective du runtime,<br />

dans le co<strong>de</strong> (cas 3).<br />

1. en utilisant les <strong>de</strong>scripteurs <strong>de</strong> déploiement. Il est possible lors <strong>de</strong> la définition du processus<br />

qui lancera un runtime <strong>de</strong> spécifier le <strong>de</strong>scripteur <strong>de</strong> sécurité que le runtime <strong>de</strong>vra utiliser.<br />

<br />

<br />

<br />

<br />

<br />

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

2. en utilisant les scripts <strong>de</strong> démarrage fournis avec la bibliothèque. Par exemple, sous Linux<br />

la comman<strong>de</strong> serait la suivante :<br />

# ./startRuntime.sh runtime_policy.xml<br />

3. en utilisant <strong>de</strong> manière fonctionnelle l’interface <strong>de</strong> programmation prévue à cet effet.<br />

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

// le <strong>de</strong>scripteur <strong>de</strong> securite "runtime_policy.xml" contient les parametres<br />

// du runtime securise<br />

ProActiveSecurityManager psm = new ProActiveSecurityManager("runtime_policy.<br />

xml");<br />

// creation du runtime et affectation du gestionnaire <strong>de</strong> securite<br />

((ProActiveRuntimeImpl)ProActiveRuntimeImpl.getDefaultRuntime()).<br />

setSecurityManager(psm);<br />

le fichier "runtime_policy.xml" contient le <strong>de</strong>scripteur <strong>de</strong> sécurité du runtime, Cette comman<strong>de</strong><br />

démarre un runtime et l’enregistre sur <strong>une</strong> URL donnée qui peut être définie statiquement<br />

ou créer dynamiquement le processus. Par la suite, le runtime être référencé dans<br />

un <strong>de</strong>scripteur <strong>de</strong> déploiement via son URL.<br />

Cependant, contrairement à un nœud dont la création est due à un appel <strong>de</strong> métho<strong>de</strong> sur un runtime,<br />

la création d’un runtime implique la création d’un nouveau processus qui peut être local ou<br />

distant via l’utilisation d’<strong>une</strong> comman<strong>de</strong> externe à la bibliothèque et à la plate-forme Java. Nous<br />

sommes confrontés au problème <strong>de</strong> transfert <strong>de</strong>s paramètres <strong>de</strong> sécurité (i<strong>de</strong>ntité, politiques <strong>de</strong><br />

sécurité) entre les processus. La solution actuelle suppose que les fichiers requis aient été préalablement<br />

copiés dans <strong>de</strong>s endroits accessibles par chaque runtime. Ces fichiers ne sont nécessaire<br />

que lors du démarrage du runtime. Un fois, le runtime démarré ces fichiers peuvent être supprimés.<br />

6.1.2 Le nœud sécurisé<br />

La sémantique <strong>de</strong> création d’un nœud distant a dû être revue et modifiée pour coller aux<br />

contraintes <strong>de</strong> sécurité. Initialement, lorsqu’un objet <strong>de</strong>mandait la création d’un nombre x <strong>de</strong><br />

nœuds à un runtime, le runtime créait les nœuds et renvoyait les URLs <strong>de</strong>s nœuds à l’objet ayant<br />

initié la <strong>de</strong>man<strong>de</strong>. On se retrouvait avec <strong>de</strong>s nœuds sur lesquels il était impossible <strong>de</strong> spécifier<br />

<strong>une</strong> politique <strong>de</strong> sécurité propre. La politique <strong>de</strong> sécurité <strong>de</strong> ces nœuds ne pouvaient dépendre<br />

que du runtime qui les accueillait.<br />

Après modification, la sémantique sécurisée permet d’introduire le fait que, lors <strong>de</strong> l’appel <strong>de</strong><br />

métho<strong>de</strong> <strong>de</strong>mandant la création du nœud distant, un paramètre supplémentaire, le gestionnaire<br />

<strong>de</strong> sécurité associé à ce nœud, puisse être passé.<br />

100

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

Saved successfully!

Ooh no, something went wrong!