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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Section 5.2. Un modèle <strong>de</strong> sécurité générique et hiérarchique<br />

En tant qu’entité sécurisée, un nœud est capable d’imposer sa politique <strong>de</strong> sécurité aux entités<br />

sécurisées qu’il contient à savoir les objets actifs. Ainsi que nous l’avons vu lors <strong>de</strong> la présentation<br />

générale <strong>de</strong> la bibliothèque (chapitre 4), un nœud dépend du déploiement d’<strong>une</strong> application<br />

donnée, aussi la politique <strong>de</strong> sécurité d’un nœud va dépendre <strong>de</strong> la politique <strong>de</strong> sécurité <strong>de</strong> l’application<br />

à laquelle il appartient. Cette fonctionnalité est exposée dans la section 5.6 <strong>de</strong> ce chapitre.<br />

Les runtimes sécurisés<br />

Un runtime représente un environnement d’exécution pour les applications. Il accueille les<br />

processus utilisateurs (i.e. objets actifs) et leur fournit les ressources locales nécessaires à leur<br />

fonctionnement. Dans sa version sécurisée, un runtime peut être associé à <strong>une</strong> politique <strong>de</strong> sécurité<br />

afin <strong>de</strong> contrôler, d’<strong>une</strong> part, les services qu’il offre aux applications locales ou distantes,<br />

et d’autre part, le comportement <strong>de</strong>s objets actifs s’exécutant à l’intérieur du runtime. Parmi les<br />

services distants offerts, nous pouvons lister les principaux tels que la création d’un nœud ou<br />

d’un objet actif, la réception d’un objet actif migrant vers le runtime ou la création d’un nouveau<br />

runtime. Le runtime étant un <strong>de</strong>s points d’entrée sur la machine, il est important <strong>de</strong> sécuriser<br />

tous ces services.<br />

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

Dans le cadre d’applications collaboratives, un runtime lancé par un utilisateur peut accueillir<br />

un ou plusieurs objets actifs appartenant à un autre utilisateur (<strong>une</strong> autre i<strong>de</strong>ntité). Par extension,<br />

cela peut aussi servir <strong>de</strong> base pour offrir, <strong>de</strong> manière sécurisée, un environnement d’accueil<br />

pour <strong>de</strong>s agents mobiles.<br />

Nous avons présenté les évolutions <strong>de</strong>s concepts déjà existants vers <strong>une</strong> version sécurisée.<br />

Actuellement, l’entité qui se trouve la plus haute dans la hiérarchie est le runtime. Au niveau<br />

<strong>de</strong> la machine qui l’héberge, un runtime est vu comme <strong>une</strong> application locale s’exécutant sur <strong>une</strong><br />

seule machine. La politique <strong>de</strong> sécurité initiale d’un runtime est définie lors du démarrage du<br />

runtime. Sur <strong>une</strong> machine donnée, plusieurs runtimes lancés par <strong>de</strong>s utilisateurs différents et<br />

avec <strong>de</strong>s politiques <strong>de</strong> sécurité différentes peuvent s’exécuter en parallèle. De plus, il faut noter<br />

que la bibliothèque est prévue pour être utilisée sur la plupart <strong>de</strong>s configurations matérielles<br />

existantes. Or parmi ces configurations, certaines possè<strong>de</strong>nt <strong>de</strong>s caractéristiques comm<strong>une</strong>s et<br />

spécifiques, comme toutes celles qui peuvent rentrer dans la définition d’<strong>une</strong> grille <strong>de</strong> calcul, à<br />

savoir un ensemble <strong>de</strong> machines qui, du point <strong>de</strong> vue <strong>de</strong> la sécurité doivent être soumises aux<br />

mêmes politiques <strong>de</strong> sécurité. En effet, le démarrage d’un runtime peut être effectué par toute<br />

personne qui possè<strong>de</strong> un accès à <strong>une</strong> machine donnée. Cependant, l’administrateur d’un parc <strong>de</strong><br />

machines peut vouloir imposer <strong>une</strong> politique <strong>de</strong> sécurité comm<strong>une</strong> à tous ces ordinateurs tout<br />

en ne souhaitant pas laisser le soin aux utilisateurs <strong>de</strong> positionner eux-mêmes cette politique <strong>de</strong><br />

sécurité propre au parc <strong>de</strong> machines lors du démarrage <strong>de</strong> leurs runtimes. Par souci <strong>de</strong> simplicité<br />

mais aussi <strong>de</strong> sécurité, il est important <strong>de</strong> séparer les divers niveaux <strong>de</strong> politiques <strong>de</strong> sécurité et<br />

<strong>de</strong> faire en sorte que chaque acteur ne s’occupe que <strong>de</strong> définir la politique <strong>de</strong> sécurité propre à<br />

son niveau. La solution que nous proposons est l’utilisation <strong>de</strong> Domaines <strong>de</strong> sécurité.<br />

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

L’organisation en domaines <strong>de</strong> sécurité est <strong>une</strong> manière standard <strong>de</strong> structurer (virtuellement)<br />

les organisations qui participent à <strong>une</strong> grille <strong>de</strong> calcul. Les domaines sont les entités logiques<br />

permettant d’exprimer <strong>de</strong>s politiques <strong>de</strong> sécurité <strong>de</strong> manière hiérarchique.<br />

La définition que nous utiliserons dans notre approche est la suivante :<br />

Définition 11 Domaines <strong>de</strong> sécurité<br />

Un domaine est <strong>une</strong> entité logique regroupant un ensemble d’entités. Ces entités contenues peuvent<br />

être elles-mêmes <strong>de</strong>s domaines (on parle alors <strong>de</strong> sous-domaines) ou <strong>de</strong>s runtimes. Par extension,<br />

un domaine sécurisé est <strong>une</strong> entité sécurisée. Il est ainsi possible d’associer <strong>une</strong> politique <strong>de</strong> sécurité<br />

à un domaine.<br />

Un domaine sert <strong>de</strong> serveur <strong>de</strong> base <strong>de</strong> données <strong>de</strong> politiques <strong>de</strong> sécurité. Cependant, il est<br />

possible <strong>de</strong> définir dans la politique <strong>de</strong> sécurité d’un domaine <strong>de</strong>s règles s’appliquant aux entités<br />

71

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

Saved successfully!

Ooh no, something went wrong!