Sécurité : Les applications, talon d`Achille des entreprises - IT
Transcription
Sécurité : Les applications, talon d`Achille des entreprises - IT
LA RÉFÉRENCE TECHNIQUE DES PROFESSIONNELS DE L'INFORMATIQUE Sécurité : Les applications, talon d’Achille des entreprises - PAGE 6 Les DRM : une introduction PAGE 49 Gestion des droits numériques en entreprise avec RMS - PAGE 28 Bimestriel - mars/avril 2007 - 16€ RIA (Rich Internet Application) : définitions et panorama des solutions - PAGE 18 n°66 Un observatoire pour mesurer l’urbanisation des systèmes d’information - PAGE 39 MICROSOFT SYSTEM CENTER. CONÇU POUR LES GRANDES CHOSES. QU’EST-CE QUE SYSTEM CENTER ? Microsoft System Center est un ensemble de solutions spécialement conçues pour vous aider à gérer vos systèmes et applications critiques d’entreprise. La famille de logiciels System Center inclut des outils d’administration et de supervision connus tels que Microsoft Systems Management Server (SMS) et Microsoft Operations Manager (MOM), ainsi que toute une gamme d’autres outils de gestion. MIEUX GÉRER POUR PLUS DE FIABILITÉ. Les logiciels Microsoft System Center vous aident à améliorer la fiabilité grâce à une gestion intelligente de l’infrastructure. Par exemple, les logiciels Microsoft System Center collectent et agrègent les connaissances sur votre infrastructure, vos stratégies et vos processus. Vous pouvez ainsi augmenter la disponibilité de vos applications et améliorer la qualité de service. MIEUX GÉRER POUR PLUS D’INTÉGRATION. Les logiciels Microsoft System Center fonctionnent avec votre environnement informatique existant et interagissent avec les outils d’administration et de supervision déjà en place. De plus, les capacités de System Center peuvent être étendues pour gérer une infrastructure et des applications comme SAP, Oracle, Apache, Linux et autres. COMMENT DELL GÈRE LES CHOSES EN GRAND ? Dell, le plus grand constructeur de systèmes informatiques du monde, utilise les logiciels System Center pour gérer son site Internet Dell.com. Selon Takis Petropoulos, Expert Systèmes : « Plus de la moitié des 57 milliards de dollars de ventes annuelles de Dell, proviennent du site de vente en ligne Dell.com. Dell s’appuie sur les logiciels System Center pour assurer 24h sur 24, 7 jours sur 7, le bon fonctionnement de son e-commerce global et de ses autres systèmes critiques. » Pour en savoir plus sur les organisations ayant adopté System Center, rendez-vous sur www.microsoft.com/france/systemcenter Edito édito LA RÉFÉRENCE TECHNIQUE DES PROFESSIONNELS DE L'INFORMATIQUE Une rumeur insistante prête à Google l’intention de produire un téléphone mobile similaire aux fameux Blackberry et doté de capacités internet plus avancées. Cette rumeur n’est pas sans rappeler celle qui, il y a quelques années, avait prêté à l’éditeur l’intention de construire luimême des PC. La rumeur pourrait s’avérer tout aussi infondée qu’elle ne l’était à l’époque. Ne comptez pas sur Google pour apporter le moindre commentaire. Quel intérêt aurait en effet un éditeur, qui n’a jamais produit le moindre matériel, à se lancer sur un marché déjà surchargé ? Outre une concurrence féroce, Google aurait sans doute beaucoup à y perdre. Les fabricants de téléphones qui pré-chargent les logiciels de Google auraient alors beau jeu de se tourner vers les offres de Microsoft ou de Yahoo. Par ailleurs, Google n’est ni un constructeur, ni un opérateur disposant d’une bande passante. Il devrait donc nouer des partenariats dans ces deux domaines, et ce à l’échelle mondiale pour l’accès au réseau. Il est en revanche certain que Google s’intéresse depuis longtemps aux téléphones mobiles, en ce qu’ils constituent un moyen d’accéder à l’internet et donc aux services de Google. La bataille avec ses deux concurrents dans ce domaine que sont Yahoo et Microsoft est d’ailleurs féroce comme on l’a constaté le mois dernier lors du salon 3GSM qui se tenait à Barcelone. A la clef, un faramineux marché publicitaire qui n’en est encore qu’à ses balbutiements et dont le modèle repose sur des réductions tarifaires accordées à ceux des abonnés qui accepteront de voir des publicités. Pour l’heure, le grand gagnant semble être Yahoo dont le moteur Go For Mobile est installé sur les Nokia, Motorola, RIM – Blackberry et Samsung. L’américain va en outre devenir la régie publicitaire exclusive de Vodafone en Grande-Bretagne. Google se doit donc de réagir, et vite s’il ne veut pas voir lui échapper une part significative d’un gâteau d’envergure mondiale. Quelle que soit la forme que prendra la réponse qui se prépare, elle sera sans doute surprenante. Jean-Pierre FORESTIER Rédacteur en Chef Editeur Press & Communication France Une filiale du groupe CAST 3, rue Marcel Allégot 92190 Meudon - FRANCE Tél. : 01 46 90 21 21 Fax. : 01 46 90 21 20 http ://www.it-expertise.com Email : [email protected] Rédacteur en chef Jean-Pierre Forestier Email : [email protected] Directeur de publication Aurélie Magniez Email : [email protected] Abonnements/Publicité Email : [email protected] Conception Graphique C. Grande Email : [email protected] Imprimeur Moutot Imprimeurs Parution IT-expert - (ISSN 1270-4881) est un journal édité 6 fois par an, par P & C France, sarl de presse au capital de 60 976,61 €. Avertissement Tous droits réservés. Toute reproduction intégrale ou partielle des pages publiées dans la présente publication sans l’autorisation écrite de l’éditeur est interdite, sauf dans les cas prévus par les articles 40 et 41 de la loi du 11 mars 1957. © 1996 P&C France. Toutes les marques citées sont des marques déposées. Les vues et opinions présentées dans cette publication sont exprimées par les auteurs à titre personnel et sont sous leur entière et unique responsabilité. Toute opinion, conseil, autre renseignement ou contenu exprimés n’engagent pas la responsabilité de Press & Communication. Abonnements 01 46 90 21 21 Prix pour 6 numéros (1 an) France ; U.E. : 89 € TTC Dom TOM, Autres Pays : 128 € TTC Un bulletin d’abonnement se trouve en page 37/38 de ce numéro. Vous pouvez vous abonner sur http://www.it-expertise.com/ Abonnements/Default.aspx ou nous écrire à [email protected] 4 IT-expert n°66 - mars/avril 2007 IT-expert n°66 - mars/avril 2007 Sommaire 6 Dossier Sécurité : Les applications, talon d’Achille des entreprises La sécurité des systèmes d’information a longtemps été vue comme l’apanage des équipes systèmes et réseau. Cette vision est aujourd’hui dépassée. Les logiciels d’infrastructure comportent de moins en moins de failles, tandis que les processus de sécurisation des systèmes sont aujourd’hui matures. Désormais le danger vient des applications ellesmêmes. La sécurité s’invite ainsi dans le cycle de développement des logiciels, nécessitant de nouvelles pratiques dans ce domaine comme l’expose cet article. 18 Technique RIA (Rich Internet Application) : définitions et panorama des solutions Les applications Internet Riches (RIA) découlent de l’utilisation des technologies associées au Web 2.0. Cet article introduit les deux principales technologies qui tentent aujourd’hui d’occuper ce terrain : Ajax d’une part et Flex d’autre part. 25 Actualités Internationales Actualités internationales et annonces produits chez les éditeurs… 28 Quoi de Neuf Docteur ? Gestion des droits numériques en entreprise avec RMS La gestion des droits numériques ne se limite plus aujourd’hui à la sécurisation de la distribution de contenu auprès du grand public. Les entreprises elles aussi cherchent à sécuriser leurs documents, ainsi qu’à en contrôler la diffusion et l’usage. Cet article détaille l’offre RMS de Microsoft en la matière 39 Comment ça Marche ? Un observatoire pour mesurer l’urbanisation des systèmes d’information Avec près d’un an d’existence, l’observatoire de l’urbanisation du club URBA dresse un premier panorama des pratiques d’urbanisation en entreprise en s’appuyant pour cela sur une cotation d’une quarantaine de systèmes d’information dont plusieurs appartiennent à des entreprises du CAC40. 44 Fenêtre sur cour Interview d’Hubert Tournier, Senior Manager chez Deloitte Consulting & Risk Services Le conseil en informatique est une activité moins connue de Deloitte que celle de commissariat aux comptes. Elle en constitue cependant un complément naturel appelé, au titre de la gouvernance, à traiter de la sécurité des systèmes d’information comme nous l’explique Hubert Tournier, Senior Manager de l’activité de conseil et des services de gestion de risques. 47 Livres Pro WF Windows Workflow et Workflow in the 2007 Microsoft Office System sont les ouvrages que nous vous recommandons ce mois-ci. 49 Rubrique à brac Les DRM : une introduction La gestion des droits numériques est un sujet qui nous touche à la fois dans notre vie privée et dans notre vie professionnelle. Cet article présente les principales technologies utilisées actuellement pour permettre le contrôle de la diffusion et de l’accès aux contenus électroniques. IT-expert n°66 - mars/avril 2007 5 Dossier & Interviews Sécurité : Les applications, talon d’Achille des entreprises 6 IT-expert n°66 - mars/avril 2007 Une situation contrastée En matière de sécurité informatique, l’année 2002 aura sans doute marqué un tournant essentiel, celui d’une première prise de conscience. En effet plusieurs événements ont marqué 2002 et contribué à vulgariser les concepts de la sécurité informatique. Ce fut à la fois l’année qui a suivi les attentats du 11 septembre ainsi que l’année des grandes épidémies virales touchant les postes clients comme les serveurs : Code Red, Nimda, BugBear, Slapper, Melissa… C’est aussi l’époque de l’éclatement de la bulle Internet où les entreprises ont alors imposé à leur Direction Informatique réductions de coûts et rationalisations. Pourtant le seul budget qui échappe à ces contraintes est alors celui de la sécurité informatique, budget au cœur des préoccupations du moment. Ces événements ont permis d’accélérer la diffusion des technologies et des pratiques de la sécurité informatique. Cinq ans plus tard, force est de constater que les entreprises ont réalisé des progrès importants dans le domaine de la sécurité informatique mais que ceux-ci restent très contrastés et souvent incomplets. Ainsi une étude du Club de la Sécurité des Systèmes d’Information Français (Clusif), intitulée « Politiques de sécurité informatique & sinistralité en 2005 », montre que 56 % des entreprises interrogées étaient dotées en 2005 d’une politique de sécurité informatique (PSI). Pire pour 58 % des entreprises étudiées, la responsabilité de la sécurité de l’information n’est pas formellement attribuée à un Responsable de la Sécurité du Système d’Information (proportion qui baisse à 28 % pour les entreprises de plus 1 000 personnes). Plus grave, cette étude sur la sinistralité montre que seuls 2 % des incidents vécus par les entreprises sont dus à des intrusions sur le réseau. La majeure partie, soit 56 %, provient d’erreurs de conception et de déploiement des logiciels. Une autre étude réalisée par le cabinet de conseil Gartner évalue que 75 % des attaques sont perpétrées via les applications. IT-expert n°66 - mars/avril 2007 7 Comment expliquer cette situation ? Ces dernières années les entreprises ont massivement investi dans des technologies et des organisations visant à protéger l’entreprise contre l’extérieur. Les grandes DSI se sont notamment équipées de systèmes de coupe-feu, de détection des intrusions, de réseaux privés virtuels et systèmes de cryptage des échanges, ou encore de systèmes de gestion des identités et des accès. Elles ont mis en place des processus associés en confiant la gestion de l’ensemble de ses outils à des équipes d’administrateurs réseaux et de spécialistes de la sécurité de ces mêmes réseaux. Cependant ces technologies n’aident à résoudre qu’une toute petite partie du problème de la sécurité informatique : celui de la protection des réseaux contre l’environnement extérieur, ce que les spécialistes nomment la défense périmétrique. Or pour être efficace une politique de sécurité informatique (PSI) se doit d’être holistique et donc prévenir les risques pour l’entreprise dans son ensemble. Et c’est peu dire que ces risques ont beaucoup évolué notamment avec le développement des applications Internet et avec la mobilité accrue de l’ensemble des collaborateurs de l’entreprise. En effet, la nouvelle frontière des entreprises est la disparition des frontières ! Les entreprises petites ou grandes ouvrent à leurs clients de nouvelles applications commerciales sur Internet. Elles bâtissent des équipes virtuelles. Elles intègrent dans leurs équipes partenaires et fournisseurs qu’ils soient « offshore », à l’autre bout du monde ou « nearshore », à 3 heures de TGV. Pour tous ces nouveaux collaborateurs, clients et partenaires de l’entreprise, les réseaux sont donc « ouverts » pour permettre la mise à disposition d’outils collaboratifs et des applications métiers via le web. La protection fournie par les systèmes de coupe-feu est alors levée puisque l’entreprise doit ouvrir un ou plusieurs ports (port 80, 443…) pour permettre l’entrée d’un trafic réseau légitime pour donner accès à ces applications. C’est cette ouverture qui explique que les applications soient devenues la cible numéro 1 des pirates professionnels ou amateurs. Nécessaire si l’entreprise veut bénéficier des énormes avantages de l’e-business, de la mondialisation et de la mobilité, cette ouverture constitue donc un très grave danger si elle ne s’accompagne pas d’une sécurité accrue des applications mises en ligne ou accessibles aux clients ou à des partenaires collaborateurs. A titre d’exemple, en 2006, une grande entreprise de transport française met en ligne une nouvelle application qui permet à ses clients de s’abonner par Internet à ses services. Quelques centaines de formulaires d’adhésion plus tard, un internaute se rend compte que son numéro de client est directement utilisé pour constituer l’adresse Internet, l’URL, de son formulaire client. En modifiant simplement ce numéro dans la barre d’adresse de son navigateur, il découvre qu’il a accès aux formulaires complets d’autres clients. Accès à de très nombreux formulaires, plus de 1400, contenant photo, nom, prénom, adresse postale, courriel et numéro de téléphone. Alertée à plusieurs reprises par l’internaute la société en question ignore la mise en garde, jusqu’à ce que l’internaute ne saisisse une association de consommateur qui révèle l’affaire. Le site est alors fermé pour mettre en sécurité le site, c’est-à-dire corriger les failles constatées. 8 IT-expert n°66 - mars/avril 2007 Ce qui est symptomatique de cet incident, c’est qu’il n’est plus nécessaire d’être un spécialiste en cryptologie ou un expert de la programmation réseau pour obtenir des informations très confidentielles et parfois pour provoquer des dégâts considérables. La montée en compétence des internautes, notamment parmi les plus jeunes et/ou les plus éduqués, conjuguée à l’énormité de certaines failles de sécurité constitue un grave danger dont peu de DSI sont vraiment conscients. En première ligne pour sonner l’alerte auprès des dirigeants, les cabinets d’audit comptable sont de plus en plus nombreux à s’inquiéter auprès des dirigeants des faiblesses du SI en terme de sécurité (voir notamment l’interview de Monsieur Tournier dans ce numéro). Par exemple, lorsqu’une entreprise réalise une part importante de son chiffre d’affaires sur Internet, les auditeurs chargés de certifier la sincérité des comptes ne peuvent pas ne pas s’inquiéter si les applications mises en ligne sont des passoires. Ils ont alors un devoir d’alerte et doivent signaler le problème dans leur rapport, engageant alors la responsabilité des dirigeants de l’entreprise auditée. Les cabinets de conseil informatique participent eux aussi à l’alerte des DSI. Le Gartner « prédit » dans une note que d’ici 2009, 80 % des entreprises auront subi un incident de sécurité sur une application ! Pourquoi les applications sont-elles devenues le talon d’Achille du SI ? Faisons appel aux experts : Gary McGraw, pionnier et expert américain de la sécurité des logiciels résume la situation de manière très pragmatique : « le mauvais logiciel, quel qu’il soit et quelque soit son origine est l’unique et le plus important problème de sécurité pour les entreprises aujourd’hui ». En effet pour William Malik, ancien directeur marketing de Sun en charge des produits sécurité : « un problème de sécurité, ce n’est rien d’autre que l’exploitation d’un défaut du logiciel. Si vous écrivez du code source de haute qualité, il n’y a alors pas tant de défauts à exploiter ». Aujourd’hui les entreprises déploient des logiciels qui sont loin d’être sans défauts et ce quelque soit leur origine, qu’ils soient développés en interne ou bien achetés sur étagère. Ces défauts sont autant de vulnérabilités potentiellement exploitables par des pirates. L’ampleur du phénomène est directement liée au fait que les logiciels déployés ont une taille technique et fonctionnelle donc une complexité de plus en plus grande. Par exemple, un logiciel moderne de facturation dans le domaine des télécommunications dépasse aujourd’hui allègrement les 15 millions de lignes de code source. Pour prendre une source ouverte, prenons l’exemple de Microsoft Windows : en 7 ans, de 1995 à 2002, la taille d’un système logiciel a été multipliée par 10 ! Comme le mentionne Gary McGraw, les estimations les plus couramment utilisées font état d’une densité de défauts présents dans un logiciel mis en production variant de 5 à 50 défauts pour chaque millier de lignes de code source (KLOC). Ce qui signifie que la taille et la complexité croissante des applications s’accompagne d’une augmentation des risques, d’une insécurité accrue puisqu’avec le nombre de défauts qui augmente c’est autant de vulnérabilités présentes, exploitables, autant de portes ouvertes aux pirates. C’est aussi ce que suggère l’évolution comparée de taille de Windows (Figure 1) et du nombre de vulnérabilités détectées et rapportées le CERT-US (Figure 2). 45 40 Millions of Lines 35 30 25 20 15 10 5 0 Win 3.1 (1990) Win NT (1995) Win 95 (1997) NT 4.0 (1998) Win 98 (1999) NT 5.0 (2000) Win 2k (2001) XP (2002) de sécurité et n’utilisent pas les protections et les techniques fondamentales de la programmation sécurisée. Un rapide coup d’œil sur les formations dispensées dans les écoles d’ingénieurs et les universités montre que cette discipline n’est pas du tout enseignée. Les seuls cours dispensés en rapport avec la sécurité sont des cours de cryptologie, une discipline mathématique qui ne couvre pas du tout le champ de connaissance de la programmation sécurisée. Ce dont les développeurs ont besoin pour mener à bien leur mission de développement applicatif, c’est de connaître les techniques utilisées par les pirates pour casser les applications et accéder aux informations confidentielles recherchées et de connaître les parades et les techniques qui permettent de se prémunir de ces attaques. De leur côté, les spécialistes de la sécurité informatique à l’œuvre dans les DSI sont des spécialistes de la gestion des réseaux et des spécialistes de la gestion des identités. Ce sont très souvent des administrateurs réseaux ou systèmes ayant développé une expertise dans le domaine de la sécurité. Cependant, ils manquent de connaissances concernant les techniques modernes de développement logiciel et les méthodes liées au cycle de développement. La situation, résumée par un expert, est donc aujourd’hui la suivante : « Les pirates connaissent mieux la sécurité que les développeurs d’applications et connaissent mieux les techniques de développement que les spécialistes de la sécurité. Ils sont au centre du jeu et profitent du manque de formation et d’information de leurs adversaires. Ils restent les grands gagnants ». Figure 1 - Complexité de Windows mesurée en lignes de code 4500 4000 3500 Les DSI ont donc aujourd’hui une mission essentielle de gestion de la compétence à réaliser au plus vite. De trop rares DSI, souvent dans les secteurs de la pharmacie et de la finance, et aiguillonnés par des besoins d’ordre réglementaires, ont mis la sécurité au cœur de leur processus de développement et rendu les équipes de développements responsables de la sécurité des applications qu’ils produisent. 3000 2500 2000 1500 1000 500 0 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 Figure 2 - Nombre de failles de sécurité reportées par le CERT L’autre difficulté qui concourt très fortement à faire des applications le talon d’Achille des SI, c’est l’ignorance des acteurs. Les dirigeants, d’une part pensent avoir investi à bon escient dans des technologies et des organisations qui pourtant couvrent uniquement la sécurité des réseaux et organisent une défense du périmètre. De l’autre, les équipes de développement n’ont pas été formées pour produire des applications sécurisées et surtout pensent, par erreur ou par ignorance que la sécurité des applications n’est pas de leur ressort. En général, les développeurs estiment que leur rôle est de produire les fonctionnalités attendues par leur client en temps et en heure. Aussi ils conçoivent et implémentent ces applications mais n’intègrent souvent jamais les contraintes Quelle démarche adopter ? Comment faire pour que la sécurité devienne une priorité de la DSI et des équipes de développement ? La démarche à suivre doit permettre de responsabiliser l’ensemble des acteurs de la DSI en charge des applications, du décideur au développeur. Comment démarrer ? La pratique américaine est souvent de lancer une initiative à l’échelle de l’entreprise et sponsorisée par un haut dirigeant qui s’assure de la mise en place et de résultats. Un bon exemple d’une telle initiative est celle lancée en 2002 par Bill Gates. Au moment où des failles de sécurité dans les produits de la société sont découvertes et exploités tous les jours, Bill Gates met Microsoft sur les rails d’une nouvelle stratégie intégrant la sécurité au cœur de ses produits logiciel. Comme il l’avait fait quelques années auparavant pour l’adoption d’Internet, c’est IT-expert n°66 - mars/avril 2007 9 par l’envoi d’un email à l’ensemble des employés de Microsoft qu’il lance son initiative de l’Informatique de Confiance (« Trustworthy Computing »). Cette initiative pose la disponibilité, la sécurité et la confidentialité comme étant les fondamentaux de cette « Informatique de Confiance ». Le mail décrit aussi brièvement la démarche et les moyens à mettre en œuvre pour produire de la confiance : • Priorité à la sécurité par rapport à la rapidité de mise sur le marché de nouvelles fonctionnalités, • Formation à la sécurité et aux techniques de développements sécurisés de tous les acteurs, • Intégration de la dimension la sécurité dans l’ensemble du processus de développement… Former à la sécurité et à la programmation sécurisée Comme évoqué précédemment, les ingénieurs sortis frais moulus de l’école ont des connaissances très limitées en matière de sécurité logicielle. Il s’agit donc de les former aux enjeux, aux objectifs de la sécurité, aux grands principes de conception sécurisée mais aussi de les former à la programmation sécurisée et aux techniques permettant de prévenir et de bloquer autant que possible les attaques des pirates. Former aux enjeux et aux objectifs, c’est éduquer aux principes de : • Gestion et de la vérification des identités, • Gestion des autorisations et contrôle de l’accès aux ressources, • Confidentialité et d’intégrité des données, • L’identification des responsabilités, • Disponibilité des services, • Non-répudiation des transactions. C’est aussi les former aux grands principes de défense, le principe du moindre privilège ou la défense en profondeur. Mais ceci est loin d’être suffisant, pour que les chefs de projet et les développeurs produisent des applications sécurisées, il est absolu- 10 IT-expert n°66 - mars/avril 2007 ment fondamental qu’ils connaissent les modes opératoires des pirates et autres hackers et qu’ils puissent savoir en quelque sorte « comment pense un hacker ». Ce proverbe pirate pourrait très bien être détourné : « donner à un homme un crack et il aura faim à nouveau demain. Apprenez-lui comment cracker et il n’aura plus jamais faim. » De la manière suivante : « donner à un développeur une recette de protection et il aura faim à nouveau demain. Apprenez-lui comment les pirates attaquent et il n’aura plus jamais faim. » Cet apprentissage peut paraître dangereux à certains. Il faut alors leur rappeler que c’est de cette ignorance que profitent les pirates. Cet apprentissage est indispensable pour réduire à la source les vulnérabilités. La littérature et la recherche en la matière sont abondantes. Les chercheurs et les praticiens de la sécurité logicielle ont observé que la très grande majorité des attaques sont dues à des vulnérabilités basées sur un nombre relativement restreint d’erreurs de programmation. Ils ont réalisé plusieurs classifications de ces erreurs de programmations et des vulnérabilités qu’elles ouvrent. Ainsi le CERT (Computer Emergency Readiness Team) de l’Université de Carnegie Mellon est une unité de recherche qui gère une initiative dite de programmation sécurisée qui travaille en collaboration avec des équipes de développement logiciel pour cataloguer et documenter ces erreurs de programmation, produire des standards de programmation sécurisée, des recommandations et des formations. Une autre initiative rencontre beaucoup de succès, celui d’une association fonctionnant sur le modèle Open Source, il s’agit de l’OWASP : The Open Web Application Security Project, le Projet Ouvert pour la Sécurité des Applications Web. Cette association met en ligne des ressources, créées sur un modèle collaboratif, particulièrement utiles à la formation des équipes de développement et à leur travail en matière de programmation sécurisée. Quelques exemples de ces ressources et documents utiles à la sensibilisation et à la formation (en anglais « Awareness Documents ») : • Le Top 10 des vulnérabilités les plus critiques des applications web, • Le guide de développement d’applications et de services web sécurisé (un document de 293 pages très complet), • L’application WebGoat qui est une application J2EE complète et qui fourni un terrain ouvert pour l’apprentissage pratique et l’expérimentation qui contient de multiples vulnérabilités, • L’outil WebScarab est une application utilisée pour réaliser des tests de pénétration et d’attaques des applications web. C’est pour cette raison que Howard et Leblanc dans leur livre « Ecrire du code sécurisé » (un des ouvrages fondateurs de programmation sécurisée), résument la situation à un proverbe : « all input is evil until proven otherwise » que l’on pourrait traduire par « toute donnée entrante est le mal, jusqu’à preuve du contraire » ! Le Top 10 des vulnérabilités les plus critiques des applications web fourni par l’OWASP est une liste des sources d’attaques les plus courantes, celles que tout développeur se doit de connaître et celles qui, lorsqu‘elles sont découvertes, nécessitent une correction immédiate. Pour illustrer le danger de ces attaques mais aussi leur facilité de mise en œuvre, prenons l’exemple très courant dans les applications web des vulnérabilités de type injection SQL. L’injection de SQL est une technique d’attaque qui exploite le fait qu’une donnée entrante est directement utilisée, sans contrôle et sans validation préalable, pour construire une requête SQL d’interrogation, de manipulation de données ou même est passée en paramètre à procédure stockée SQL. Exemple d’exploitation d’une saisie utilisateur non validée : l’injection SQL Un exemple typique est donné par une procédure de connexion à l’application dans laquelle l’utilisateur fourni un nom et un mot de passe. Figure 3 - Logo de l’OWASP C’est donc un point d’entrée utile à tout programme de sensibilisation ou pour toute formation sur le sujet. La dernière version de ce Top 10 se décline de la manière suivante : • A1 Saisie utilisateur non validée • A2 Contrôle d’accès défaillant • A3 Gestions des identités et des sessions défaillant • A4 Défauts permettant des attaques de type Cross Site Scripting (XSS) • A5 Débordement de tampons mémoire (Buffers Overflows) • A6 Défauts permettant l’injection de commandes systèmes • A7 Gestion des erreurs et des exceptions non sécurisés • A8 Stockage de données non sécurisé • A9 Déni de service • A10 Gestion de configuration non sécurisée Comme l’indique cette liste de l’OWASP, la toute première source de vulnérabilité des applications logicielles réside dans les saisies utilisateurs qui ne sont pas ou sont mal validées par l’application, notamment sur sa partie serveur. Les pirates utilisent ces saisies utilisateurs non validées comme autant de points d’entrée permettant d’injecter des caractères de commandes et des scripts d’attaque. Les vulnérabilités ouvertes par l’absence de validation ou par une validation déficiente sont très extrêmement nombreuses et ne varient qu’en fonction de la cible du pirate ou du point d’entrée utilisé par celui-ci : SQL injection, empoisonnement de cookies, débordement de tampons mémoire, trucage d’URL, Cross Site Scripting… Dans l’exemple suivant, ici simplifié à l’extrême, les données entrantes (variables MyUsername et MyPassword) sont utilisées directement pour construire dynamiquement une requête SQL qui permet de vérifier si l’utilisateur a leur droit d’accéder à l’application : MyUsername = Request.form("username"); MyPassword = Request.form("password"); var MyRso = Server.CreateObject("ADODB.Recordset"); var MySql = "SELECT * FROM users WHERE username = '" + MyUsername + "' AND password = '" + MyPassword + "'"; MyRso.open( MySql, MyConnection ); Lorsque l’utilisateur de l’application se voit proposer de saisir son nom et son mot de passe, le pirate en lieu et place d’un nom correct saisi plutôt Utilisateur : Jo’hn Password : La chaîne MySql construite dynamiquement est alors erronée : SELECT * FROM users WHERE username = 'Joh’n' AND password = '' Si l’application renvoie le message suivant en provenance de la base de donnée, le pirate sait alors qu’il est en présence d’une vulnérabilité de type Injection de SQL : Server : Msg 170, Level 15, State 1, Line 1 Line 1 : Incorrect syntax near 'hn'. IT-expert n°66 - mars/avril 2007 11 Par exemple, il va pouvoir exploiter la vulnérabilité de la manière suivante : Utilisateur : ' OR 1=1-Password : La chaîne MySql construite dynamiquement est alors la suivante et permet au pirate de se connecter comme avec le premier compte utilisateur stocké dans la table users : SELECT * FROM users WHERE username = '' OR 1=1 --AND password = '' Pire ! Si le pirate exploite la vulnérabilité de la manière suivante : Utilisateur : ' ; drop table users-Password : La table users risque d’être effacée de la base de données ! D’où l’importance de donner le minimum de droit à une connection base de données. Pour ceux qui se demanderaient comment le pirate connaît le nom de la table users, rien de plus simple : Utilisateur : ' ; having 1=1-Password : La base de données retourne alors le message d’erreur suivant qui donne au pirate le nom de la table et le nom de la première colonne de cette : Column 'users.id' is invalid in the select list because it is not contained in an aggregate function and there is no GROUP BY clause. 12 IT-expert n°66 - mars/avril 2007 Cette courte présentation montre à la fois l’importance essentielle qu’il y a à valider, à nettoyer les données entrantes de l’application pour au minimum s’assurer que ses données ne contiennent que les caractères autorisés mais aussi l’importance de masquer les messages d’erreurs grandes sources d’information pour les pirates. La sécurité intégrée au cycle de vie développement et de recette La formation des équipes de développement bien que nécessaire ne suffit pas pour qu’une organisation produise des applications fiables et sécurisées. Il est indispensable de faire en sorte que la sécurité fasse partie intégrante de l’ensemble du cycle de vie de l’application : depuis la rédaction des spécifications jusqu’aux tests avant mise en production. Ainsi en amont, les spécifications doivent intégrer et décrire très précisément l’expression du besoin et les attentes en terme de sécurité. Interrogé par nos soins très récemment, le dirigeant d’une société de services informatiques nous a expliqué que moins d’un projet de développement sur 10 intégrait des exigences relatives à la sécurité lors de l’appel d’offres. Il nous précise que les rares projets pour lesquels des exigences explicites en matière de sécurité ont été faites émanaient de sociétés d’origine étrangères. Pour ces projets, les exigences couvraient non seulement les spécifications mais aussi des exigences en matière de standards de développement ainsi que dans le domaine de la recette de l’application et de la formation de l’équipe de développement. Il nous indique aussi que cette absence de l’aspect sécurité dans l’expression du besoin est aussi le fait de secteurs comme celui de la finance ou du secteur public que l’on aurait imaginé plus soucieux quant à cet aspect. Interrogé aussi à ce sujet dans ce numéro Monsieur Tournier de Deloitte nous indique aussi que cet aspect est trop souvent ignoré des appels d’offres : « chez les grands intégrateurs, les aspects sécurité sont très rarement pris en compte, à moins d’avoir été expressément demandés. C’est pourquoi, que les développements soient effectués en interne ou par une SSII, il faut établir un cahier des charges qui formalise les exigences de sécurité attendues. » Toujours en amont dans le cycle de vie de l’application, les entreprises soucieuses de la sécurité des applications ont souvent créé leurs propres guides et standards de développements logiciels ou ont mis à jour leurs standards qualité pour y introduire des exigences précises en matière de programmation sécurisée. Les experts et praticiens de la sécurité logicielle font de la phase de conception une étape clé à laquelle il convient d’intégrer une analyse du risque de sécurité. Sur la base de ses outils et processus de développement internes, Microsoft évangélise cette analyse de risque sous l’appellation de Modélisation des Menaces, en anglais « Threat Modeling ». La modélisation des menaces selon Microsoft consiste d’une part à définir un modèle du système logiciel à produire en utilisant des diagrammes de flux de données et des cas d’utilisation puis de décrire des cas d’attaques en partant de listes de menaces types et des ressources visées comme points de départ. La modélisation des menaces consiste donc à identifier les ressources, (également appelées « cibles d’attaque »), identifier les menaces (attaques types), évaluer les risques, identifier les vulnérabilités puis établir un plan de réduction des risques. Cette étape est importante, comme le souligne Gary McGraw dans son livre « Building Security In », non seulement parce que 50 % des vulnérabilités sont issues d’erreur de conception mais aussi parce que l’évaluation et la quantification de l’impact sont une étape critique dans les approches basées sur les risques et que dès lors l’analyse de risque est une voie naturelle pour relier les problèmes technologiques aux besoins des clients et au fonctionnel. Dans le cycle de développement, la phase de codage est l’étape de tous les dangers. Nous avons vu plus avant que toute vulnérabilité n’est en fin de compte qu’un défaut, un bug du logiciel qui peut être exploité par un pirate. Donc fondamentalement la prise en compte de la sécurité au cours de développement d’une application relève de la mise en place d’un système d’assurance qualité sur la base du code source lui-même, à la racine du mal, une vérification de la qualité intrinsèque du code produit. Intégrer la sécurité dans la phase de développement, c’est avant tout s’assurer le plus tôt possible dans le cycle que des erreurs de programmation ou des violations des règles de conception ou architecture ne sont pas introduites. La méthode, toute manuelle et classique mais si peu mise en œuvre, a été celle de la revue de code par les pairs. Mais elle est extrêmement difficile et requiert une pratique régulière à 2 voire 3 pairs d’yeux et beaucoup de temps. Et comme peu de développeurs apprécient cette activité et que les projets prévoient rarement le temps nécessaire, les revues de code n’ont réellement jamais lieu, y compris dans les équipes Open Source où cette pratique est censée être obligatoire. Brian Kernighan, 100x Application En Production 15x 6.5x 1x Analyse statique du code Conception Développement Tests Fonctionnels & Utilisateurs Tests d'Intégration Tests Déploiement Sources USSC & IDC and IBM Systems Sciences Institute Evolution du coût de correction d'un bug au cours du cycle de vie IT-expert n°66 - mars/avril 2007 13 l’auteur de la célèbre bible de la programmation C, dit la chose suivante à ce propos : « déboguer est au moins 2 fois plus difficile que programmer. Si votre code source est aussi intelligent que vous puissiez le faire alors par définition vous n’êtes pas assez brillant pour le déboguer. » Pourtant ces inspections et vérifications en amont ont toutes leurs justifications économiques comme le montrent les nombreuses études sur la différence du coût de correction d’un défaut en fonction du moment où il est détecté dans le cycle de développement (rapport de 1 à 100 sur le coût de la correction sans prendre en compte les dommages éventuels). L’automatisation de la revue de code et plus généralement l’inspection de la qualité du code source est en très bonne voie : du côté des entreprises utilisatrices la demande est là, aiguillonnée notamment par le développement de l’appel à la sous-traitance et la nécessité de réduire les coûts tout en augmentant la qualité de la production. Du côté de l’offre, les éditeurs de logiciels sont de plus en plus nombreux à proposer des solutions en la matière et l’on voit se dessiner 2 approches différentes : D’une part des éditeurs qui à l’instar de CAST ou de Klocwork proposent à leurs clients de couvrir l’ensemble des besoins en 14 IT-expert n°66 - mars/avril 2007 matière de qualité logicielle en couvrant les aspects robustesse, performance, évolutivité en même temps que la sécurité. Cette approche part du principe qu’une DSI a besoin de s’équiper pour couvrir l’ensemble de ses besoins fonctionnels et ainsi que l’ensemble de ses applications quelles que soient leurs technologies. Dans le cadre de cette approche, CAST propose avec l’Application Intelligence Platform une solution couvrant un spectre très large de langages de programmation analysés (J2EE, .NET à COBOL et SAP) et surtout offre la possibilité de détecter des violations de règles de conception ou d’architecture en mettant à profit la capacité de ses analyseurs à détecter les dépendances entre couches technologiques (appel direct depuis une couche d’interface utilisateur à un programme COBOL ou à une procédure stockée en base de données par exemple). D’autre part, ces dernières années ont vu l’émergence outreAtlantique d’éditeurs de logiciels proposant des solutions d’analyse de code source se focalisant spécifiquement sur la question de la sécurité. C’est le cas d’éditeurs américains tels que Fortify Software, Secure Software ou Ounce Labs. Ces solutions ne couvrent qu’une partie des portefeuilles d’applications des DSI (technologies les plus récentes) mais s’appuient sur des bases de connaissances pointues en matière de vulnérabilités. Ces derniers produits génèrent encore beaucoup de faux positifs lors de la détection de vulnérabilités et ils ne permettent pas la détection des problèmes de sécurité liés à l'architecture (50% des problèmes de sécurité d'après McGraw). Dans le cycle de développement, les tests de l’application doivent aussi contribuer à améliorer la sécurité. A la suite de la rédaction des spécifications, l’équipe en charge des tests doit développer un plan de tests incluant des cas de violations de la sécurité, ce que certains experts appellent des « Abuse Cases » par analogie aux « Use Cases » ou cas d’utilisations bien connus. Attention toute fois à ne pas confondre tests de sécurité et tests classiques. Les tests de sécurité nécessitent de stresser l’application d’une manière très différente de ce qui est fait normalement et ces tests nécessitent de la part des testeurs des connaissances en matière de sécurité (attaques types et scénario d’attaques). Pour cette phase du cycle de vie de l’application, de nouveaux outils logiciels sont apparus récemment aux Etats-Unis qui aident les équipes de tests et/ou les spécialistes de la sécurité à tester la vulnérabilité des applications avant leur mise en production. Les éditeurs de ces solutions sont Watchfire, SPI Dynamics, Cenzic… Pour prévenir des attaques et/ou démontrer à des équipes de développement la vulnérabilité des applications qu’ils produisent, il peut aussi être intéressant et séduisant de faire appel à des tests de pénétration réalisés par des équipes extérieures. Attention cependant ! Il faut toujours veiller à ne pas faire reposer l’ensemble de la politique de sécurité des applications sur ces tests de pénétration. En effet, le résultat d’un test de pénétration peut correspondre à une faille ou une série de failles mais n’a pas pour objectif d’être exhaustif. Conclusion Pour relever le défi de la sécurité des applications, l’éducation de l’ensemble des acteurs et le développement d’expertise interne sont essentiels mais doivent nécessairement s’accompagner d’une amélioration des processus de développement et de recette pour y injecter cette expertise et faire de la sécurité une préoccupation de tous les instants. I Razak ELLAFI Product Manager Pour en savoir plus : Les entreprises françaises plus concernées par leur sécurité informatique http://www.zdnet.fr/actualites/informatique/0,39040745,39361912,00.htm La défense en profondeur appliquée aux systèmes d’information www.ssi.gouv.fr/fr/confiance/documents/methodes/meme ntodep-v1.1.pdf Bill Gates – Un Informatique digne de confiance http://www.microsoft.com/france/apropos/presse/bulletins/bulletin_20020718_fr.mspx Howard & Leblanc - Ecrire du code sécurisé www.amazon.fr/Ecrire-du-code-sécuriséHoward/dp/2100067508 Le Guide de Développement d’Applications et de Services Web Sécurisé (en anglais uniquement) http://www.owasp.org/index.php/OWASP_Guide_Project A Taxonomy of Coding Errors that Affect Security http://www.fortifysoftware.com/vulncat/ Secure Coding Guide : Introduction to Secure Coding Guide http://developer.apple.com/documentation/Security/Conc eptual/SecureCodingGuide/index.html « Software Security : Building Security In » par Gary McGraw – Addison-Wesley http://www.amazon.fr/Software-Security-Building-GaryMcGraw/dp/0321356705/ref=sr_1_8/403-14746850696440 ?ie=UTF8&s=english-books&qid=1174536846&s r=8-8 «Exploiting Software : How to Break Code » par Greg Hoglund, Gary McGraw http://www.amazon.fr/Exploiting-Software-How-BreakCode/dp/0201786958/ref=sr_1_1/403-14746850696440 ?ie=UTF8&s=english-books&qid=1174537006&s r=1-1 Microsoft distribue gratuitement un outil de Modélisation des Menaces http://msdn2.microsoft.com/enus/security/aa570413.aspx www.castsoftware.com IT-expert n°66 - mars/avril 2007 15 LA RÉFÉRENCE TECHNIQUE DES PROFESSIONNELS DE L'INFORMATIQUE Pour compléter votre bibliothèque de référence technique, commandez vite les anciens numéros* d’IT-expert à tarif préférentiel ! Novembre/décembre 2004 DOSSIER : L’urbanisation des systèmes d’information • L’urbanisation suffit-elle à rationaliser le parc applicatif d’entreprise ? • La gestion de contenu • Interview Bouygues Télécom • Continuité d’activité : le choix des armes IT-expert n°56 IT-expert n°57 IT-expert n°58 IT-expert n°59 Juillet/août 2005 Septembre/Octobre 2005 Novembre/décembre 2005 Janvier/février 2006 DOSSIER : La veille et ses outils • L’interopérabilité des systèmes d’informa- DOSSIER : Equiper les forces de terrain d’une solution mobile • La gestion des utilisateurs centralisée ou le DOSSIER : L’intégration de contenu, un problème bien réel • Les JavaServer Faces face à Struts • Sybase Adaptive Server Enterprise 15 • Interview de Nicolas Maquaire, DOSSIER : Vers un standard pour le pilotage des coûts informatiques - Un levier de performance économique : AB C/ABM • Contrôle des développements externalisés tions : fantasme ou perspective ? • SQL Server 2005 • Les clés du succès en gestion des métadonnées • Interview SCOR • Consolidation de messagerie, dimensionnement du réseau : Le juste équilibre * Dans la limite des stocks disponibles IT-expert n°52 provisioning • Les alternatives à la suite bureautique Microsoft • Les Tags RFID : révolution technologique ou cauchemar • Les solutions Linux Président de l’éditeur Français EntropySoft Zoom client SAINT-GOBAIN • Informatique et téléphonie : à quand la convergence ? & solutions de gouvernance • K9a : une nouvelle grille de lecture pour la conduite agile de projets de systèmes d’information • Interview de Jérôme Dupont, Directeur Conventions & Projets du GIP-MDS • La guerre des processeurs aura-t-elle lieu ? IT-expert n°61 IT-expert n°62 IT-expert n°63 IT-expert n°64 Mai/juin 2006 Juillet/août 2006 Septembre/Octobre 2006 Novembre/Décembre 2006 DOSSIER : Optimiser innovations et transformations en gérant le portefeuille de projets et d’applications • Subversion : le grand départ ? • L’accessibilité numérique • Wi-Fi DOSSIER : Panorama sur les techniques Agiles • PHP5, une alternative à .NET et J2EE ? • Eclipse : le Big Bang Callisto • Test Driven Development • Interview d’Elisabeth Le Boité, Responsable DOSSIER : La géolocalisation • Géolocalisation, les techniques alternatives DOSSIER : Capital Immateriel • Windows Vista : le nouveau système Qualité et Système d’Information du SIB Syndicat Interhospitalier de Bretagne • Qui arrêtera Google ? • • • • au GPS Le positionnement par GPS Géolocalisation, tout n’est pas permis… Interview de Me Gérard HAAS, Docteur en droit Recyclage des e-déchets d’exploitation de Microsoft • Les curseurs sous SQL Server • Interview de Mme Seigneur, Directeur Informatique du Conseil Général de Vendée • Wimax Offre Spéciale Je souhaite acheter les numéros suivants Tarifs TTC (TVA : 5,5 %) 1 exemplaire : 8€ 5 exemplaires : 35€ IT-expert n°53 Janvier/février 2005 DOSSIER : La gouvernance du système d’information • Le projet LDAP • Firefox votre prochain navigateur ? • JSF versus Webforms • Interview Intermarché • L’entreprise sous le feu de la guerre Année 2004 N° 52 Année 2005 N° 53 N° 56 N° 57 N° 58 de l’information 10 exemplaires : 60€ Autre quantité : Année 2006 N° 59 N° 60 N° 61 N° 62 N° 63 N° 64 Année 2007 N°65 Pour commander les anciens numéros d’IT-expert, il vous suffit de nous renvoyer ce document à l’adresse suivante : IT-Expert 3, rue Marcel Allégot - 92190 Meudon - France Tel : +33 (0)1 46 90 21 21 - Fax : +33 (0)1 46 90 21 20 Adresse d’expédition & de facturation IT-expert n°60 Mme Mars/avril 2006 Nom DOSSIER : La qualité des applications développées en technologies objet • L’industrialisation des développements au secours Prénom des échecs projets • Environnements de Développement Intégrés • Urbanisme des Systèmes d’Information versus Architecture d’Entreprise • Interview de Monsieur SAINT-ALME, Responsable NTIC chez AG2R • Contrôle d’accès au réseau Mlle M. Société Fonction Adresse CP Ville E-mail Tél Fax Janvier/Février 2007 DOSSIER : Web 2.0 entreprise, quelles réalités ? • ITIL et ISO20000 • Logiciel libre : Qu’exiger de son prestataire Date : Signature obligatoire : IT-expert n°65 Chèque joint à l’ordre de Press & Communication France Règlement à réception de facture informatique ? • Les wikis : définitions fonctionnelles et techniques • Interview de Monsieur Kabla, DSI de Dassault Systèmes Ventes France • Une approche structurée de la certification du réseau : l’audit automatique du réseau et la validation des changements des configurations www.it-expertise.com Technique RIA (Rich Internet Application) : définitions et panorama des solutions Sur le ring du Web 2.0 viennent s’affronter de nouvelles technologies d’interfaces révolutionnant l’expérience des utilisateurs et le paradigme des développeurs : d’un côté le poids léger AJAX, de l’autre le lourd léger FLEX. Nous verrons que ces deux technologies ne s’affrontent pas réellement, elles sont complémentaires et chacune a ses spécificités et donc ses domaines d’application. Une nouvelle (r)évolution technologique et ergonomique est en marche, cet article a pour objectif de vous accompagner dans la découverte des RIA en vous faisant part de nos retours d’expérience émanant de plus de 2 ans de pratiques. Présentation I Historique Au commencement de l’Internet, seul existait le langage HTML permettant de créer des documents en ligne, et introduisant le concept de l’« hyper navigation ». Ces pages HTML des premiers jours étaient statiques, et devaient être mises à jour manuellement. Par la suite, des technologies serveurs permettant de générer des pages HTML firent leur apparition. Elles contribuèrent grandement à l’expansion d’Internet en introduisant une participation active de l’utilisateur dans ce qui commençait à ressembler à une application. Les progrès techniques aidant, les applications en ligne se généralisèrent et devinrent de plus en plus complexes, jusqu’à aboutir à la situation actuelle, où quasiment tous les sites Web sont dynamiques et offrent les fonctions les plus variées. Aujourd’hui, ce système a atteint ses limites car les utilisateurs demandent de plus en plus de fonctions et d’ergonomie, et les anciennes technologies ne suffisent plus. 18 IT-expert n°66 - mars/avril 2007 Nous sommes entrés dans l’ère du « tout en ligne », et les nouvelles applications seront de plus en plus construites selon le paradigme RIA. I Qu’est ce qu’une RIA ? Les « Applications Internet Riches », ou « RIA » en abrégé, constituent une nouvelle famille d’applications informatiques, en ligne et possédante une interface utilisateur « riche ». Une RIA possède tout ou partie des caractéristiques suivantes : • Un serveur Web héberge et distribue l’application à ses utilisateurs • Aucune installation n’est requise, il suffit de disposer d’un navigateur Internet moderne (avec éventuellement un plug-in spécifique déjà installé) • L’interface utilisateur est « riche » et dynamique, et l’ergonomie est équivalente à celle des applications traditionnelles • Les données utilisées sont transmises par le réseau, Internet ou intranet • Les données et l’interface utilisateur sont généralement bien séparées • Les performances sont équivalentes à celle des applications traditionnelles car l’interface utilisateur (page Web) n’est pas réaffichée à chaque nouvelle demande • Une compatibilité avec plusieurs plate formes et systèmes d’exploitation • Il n’y a aucun risque de comportement malicieux (aux failles de sécurité près) envers le poste client Notons par ailleurs que le terme "Rich Internet Application" a été introduit dans une publication de Macromedia® (maintenant Adobe Systems®) en mars 2002. I REA Les REA, ou « Rich Enterprise Application » constituent une classe particulière d’application RIA destinées aux utilisateurs professionnels, par opposition aux RIA qui sont conventionnellement orientées vers le grand public. En effet, les applications Web à usage professionnel sont de plus en plus répandues, et souffrent des mêmes défauts que leurs homologues grand public. L’accroissement de productivité promis par les applications RIA rend attractif la conversion des applications Web, car générateur de valeur au niveau de l’application, de sa maintenance et de son potentiel fonctionnel. Les RIA sonnent le glas des applications Web 1.0. Ces applications Web de première génération entrent dans une phase d’obsolescence. La conversion des applications dites Legacy offre d’incroyables perspectives aux RIA. Les projets en sont innombrables, citons par exemple : • Les applications dites « back-office » de gestion interne (ressources, planning…) • Les frontaux des grands progiciels d’entreprise (ERP) souvent réalisés en HTML • Les applications terminales des agents en contact avec les utilisateurs (banques, administrations, etc.) I RDA Dans la mouvance rapide des systèmes applicatifs, les RDA, ou « Rich Desktop Application » viendront prochainement combler simultanément les lacunes des RIA et des applications autonomes, tout en conservant leurs avantages respectifs. En effet, comme les RIA, les RDA sont des applications en ligne et connectées, mais elles pourront en plus utiliser les ressources locales du poste client, telles que le système de fichier ou le réseau local. Le premier environnement de développement RDA multi plateformes est actuellement en cours de développement par Adobe Systems, sous le nom de « Apollo ». Dans le monde Windows, le système Vista permet aussi de développer ce type d’applications, mais qui ne pourront fonctionner que sur ce système d’exploitation. Justification des RIA I Comparaison avec les applications Web 1.0 Les RIA sont des applications Web, et ont donc en commun le fait d’être accessibles en ligne, comme n’importe quel site ou application Web 1.0. Les applications Web 1.0 traditionnelles s’articulent sur une architecture purement serveur : les traitements sont réalisés sur les serveurs (Web, Java, SQL…) et le client se contente d’afficher les résultats envoyés par le serveur, le plus souvent sous forme de HTML. Dans une RIA, seules les données sont échangées, l’interface demeurant sur le poste client une fois installé. Les RIA sont autonomes sur le plan du rendu de l’interface : une fois l’application téléchargée depuis le serveur, le « container » client (browser Web, plugin) se charge lui-même des réaffichages des écrans, et seules les données circulent sur le réseau. Parce qu’une RIA dispose des ressources d’affichage et de calcul du poste client, elle est potentiellement plus performante et plus agréable à utiliser que les applications Web HTML. I Avantages Pour les utilisateurs, les RIA offrent les bénéfices suivants : • Aucune installation de logiciel en local, ce qui élimine aussi pas mal de risques (virus, poste verrouillé par l’administrateur) • Des mises à jour automatiques et transparentes par le réseau (à la manière d’une page HTML) • Des performances supérieures à celles des applications Web • Une expérience d’utilisation nouvelle et motivante • Des fonctionnalités plus nombreuses et variées • L’accès aux données présentes sur Internet grâce à l’utilisation des nombreux WebServices aujourd’hui disponibles • Une meilleure productivité dans l’accomplissement des tâches Pour les développeurs Web traditionnels, la situation n’est pas si claire. En effet, ils devront apprendre et maîtriser de nouveaux outils et, selon les outils utilisés, la facilité de développement et de maintenance pourra s’améliorer, ou se dégrader. Indépendam- IT-expert n°66 - mars/avril 2007 19 ment des différences entre les technologies RIA actuelles, les développeurs bénéficieront de possibilités techniques nouvelles et excitantes, qui leur permettront d’exprimer plus pleinement leur créativité. I Inconvénients Du côté des utilisateurs, les inconvénients sont relativement peu nombreux, et on pourrait citer par exemple : • Une incompatibilité totale ou partielle avec certains navigateurs (pour les applications Ajax) • Une perte des repères usuels, induits par les manières nouvelles d’utiliser les logiciels en ligne, qui pourra demander une période d’adaptation (généralement courte) En revanche, pour les développeurs, la réalisation d’applications RIA est une tâche complexe et relativement difficile à mettre en œuvre, notamment pour les raisons suivantes : • Nouvelles technologies, nombreuses et variées, utilisant différents langages • Nouveaux paradigmes de développement • Nouvelles architectures, en particulier sur le poste client • Interfaces utilisateurs plus difficiles à concevoir en raison de leur richesse accrue Selon la technologie de développement retenue, ces difficultés seront plus ou moins grandes, et il faudra donc la choisir avec un soin attentif. I Tableau comparatif Le tableau ci-dessous indique quels sont les principaux avantages de chacun des types d’application étudiés ici : Web 1.0 (HTML) RIA Autonome RDA Pas díin stallation X X X Mises à jour automatiques X X X Interface riche X Accès aux ressources client Données en ligne sur Internet X Accès réseau (sockets) Multi plateforme Productivité de l’utilisateur X X X X X X X X X X X X X X X Technologies I Présentation Comme c’est souvent le cas en informatique lors de l’introduction de nouveaux concepts, il existe aujourd’hui une multitude de technologies RIA différentes, qui sont plus ou moins complexes et bien outillées, et qui procurent aux développeurs des avantages et des inconvénients différents. En attendant la concentration de ces technologies, il est aujourd’hui peu aisé de faire un choix parmi une telle profusion. Et ce d’autant plus que l’investissement initial – nécessaire à la maîtrise de la technologie choisie – est important, car les technologies de développement RIA sont complexes. Nous allons donc nous concentrer ici principalement sur les différences entre les différentes technologies et outils de développement RIA, afin d’en dégager les avantages et inconvénients respectifs, du point de vue des développeurs d’application et des exploitants. I Critères techniques Les technologies RIA seront comparées selon les critères principaux suivants : • Multi plateforme : le caractère multi plateformes des applications • IDE : la présence ou non d’un environnement de développement intégré inclut avec la plateforme de développement (SDK) • Outillage : la disponibilité, la qualité et la puissance des outils de développement utilisés, qu’ils soient fournis ou non avec le SDK • Langage : la puissance et la richesse des différents langages de développement, qui sera répartie à son tour selon les sous critères suivants : • Orienté objet (POO) • Dynamique (type langage de script) • Typé strictement • Compilé en code natif ou en pseudo code pour une machine virtuelle • Connecteurs : la disponibilité et la richesse des connecteurs vers le Système d’Information (« Back-Office ») • Widgets : la présence et la richesse d’une libraire de composants d’interface graphique de base, ou « widgets » I Comparaison des environnements RIA Le tableau suivant répartit les principales technologies RIA multi plateforme d’aujourd’hui, selon les critères présentés plus haut (ce qui exclut Vista accompagné de sa technologie WPF/XAML) : On voit bien que les applications RIA offrent le meilleur de chacune des deux technologies, suivies de peu par les applications RDA qui en complètent les possibilités. 20 IT-expert n°66 - mars/avril 2007 • Laszlo : système Open Source analogue à Flex, à base de XML d’interface et de JavaScript compilé en applications Flash, et maintenant aussi Ajax • Flex : cf ci-après notre section consacrée à Flex Technologie IDE Outils Langage (*) O Ajax Flex / Flash (Adobe) X X Laszlo (Laszlo Systems) Applets Java (Sun) X X X ASP .Net/Ajax X X T X X X X Widgets variable variable C X X XUL (Mozilla) D Connecteurs X X X X X X SDK Java X X X X X X X X X X X X (*) Langage O : Orienté objet (POO) - D : Dynamique (type langage de script) - T : Typé strictement - C : Compilé en code natif ou en pseudo code pour une machine virtuelle • Applets Java : bien que très puissantes elles sont souvent peu esthétiques et pénibles à développer • XUL : la plate forme open source Mozilla permet de développer des RIA/RDA en utilisant un langage interne (XML) de description d’interfaces. Ces applications seront cependant limitées à une exécution dans un framework Mozilla • ASP.Net / Ajax : dans la mouvance Ajax, Microsoft propose à son tour des outils de développements autour du framework .Net, pour des applications Ajax Ajax I Présentation Ajax, pour « Asynchronous JavaScript and XML » est représenté par une multitude d’outils, de langages et d’approches différentes, proposés par différents acteurs du marché et de la communauté informatique globale. Ajax est basé sur l’échange de XML avec le serveur et la manipulation directe du contenu HTML par des programmes JavaScript exécutés dans le navigateur Internet. De plus en plus d’éditeurs et d’acteurs du Web de premier plan proposent des environnements de développement Ajax, et notamment Google avec GWT (Google Web Toolkit), qui permet aux développeurs de développer directement en Java et d’être ainsi plus productifs (qu’en JavaScript), mais aussi Yahoo avec YUI ou encore Microsoft avec ASP .Net pour Ajax. • Les principales fonctions des scripts sont de contrôler l’affichage de l’application, en manipulant la page HTML (via le Domain Object Model interne, ou « DOM ») et de communiquer avec un ou plusieurs serveurs de données du Web ou d’ailleurs. Cette opération est réalisée grâce à la fameuse API « XMLHttpRequest » du langage JavaScript. I Complexité Compte tenu des différentes technologies rencontrées dans une application Ajax, même relativement simple, on comprend que ce type de développement est complexe et difficile. En effet, un développeur Ajax devra généralement maîtriser les technologies et langages tels que HTML et DOM, les feuilles de style CSS et CSS2, le langage JavaScript et au minimum une technologie serveur comme par exemple PHP, JAVA/J2EE, ASP.NET. I Outillage En plus d’être complexes, les applications Ajax sont aussi difficiles à mettre au point car on ne disposera pas forcément de toutes les fonctionnalités d’un IDE moderne, telles que facilité de déboguage, inspection de variables, ou encore de saisie prédictive, de refactoring, de tests unitaires, etc. Les outils de développement JavaScript et CSS ont cependant fait de gros progrès récemment et on commence à trouver des outils de développement performants. I Avantages De plus, de nouveaux acteurs spécifiques proposent des environnements et des librairies de composants de plus en plus matures, comme Backbase, qui dispose d’une librairie de composants très fournie. Il existe aussi des environnements Ajax en OpenSource, comme les projets Dojo ou Prototype qui font référence aujourd’hui. I Principes Les points essentiels à comprendre ici sont : • L’interface utilisateur d’une application Ajax est constituée par une combinaison de HTML et de feuilles de style CSS2, c’est la partie déclarative • La partie impérative (le code) est formée de scripts écrits en JavaScript Les applications Ajax offrent les avantages communs aux applications RIA, avec en particulier : • Une intégration totale aux pages Web, permettant l’affichage de contenus HTML, et autorisant une migration « en douceur » des applications ou pages HTML vers leurs homologues Ajax • Une amélioration immédiate et évidente de l’expérience utilisateur grâce à une interface utilisateur offrant une ergonomie très supérieure à celle des applications HTML traditionnelles • Une amélioration potentielle du design interne des applications Web 1.0, car Ajax tend à encourager les programmeurs à séparer clairement les méthodes et les formats utilisés pour accéder aux données • La réutilisation des connaissances techniques des développeurs dans le domaine HTML / JavaScript / CSS IT-expert n°66 - mars/avril 2007 21 I Inconvénients Les inconvénients de ce système sont notamment : • La difficulté du choix d’une technologie particulière, étant donné la grande diversité des systèmes proposés, et leur non compatibilité entre eux • Le manque d’environnement de développement évolué de référence, ce qui peut pénaliser la productivité des développements • La grande complexité du développement multi technologies, aggravé par certaines difficultés d’intégration au navigateur (telles que la gestion correcte de l’historique de navigation) • La fiabilité relative du langage JavaScript qui peut être implémenté différemment par les différents navigateurs, ou par différentes versions d’un même navigateur. Ce point alourdit notablement le coût des tests car les applications devraient être testées sur les principaux navigateurs du marché et leurs différentes versions I Applications Les applications sont diverses et on en trouve aujourd’hui sur un grand nombre de sites Web, ce qui est le domaine de prédilection d’Ajax. En effet, la capacité de manipulation du contenu des pages HTML rend Ajax incontournable dès lors qu’il s’agit de développer des applications RIA à fort contenu HTML, ou qui doivent s’intégrer finement au sein d’une page HTML (avec par exemple des composants Ajax dans différentes zones de la page). En revanche, si l’application est plutôt monolithique et/ou qu’elle implémente une logique métier complexe, le système Ajax sera pénalisé par sa complexité technique et par la faible productivité de développement et de maintenance qu’il offre aux développeurs. Les applications seront généralement plutôt destinées au grand public, et on en trouvera un peu partout sur le Web comme par exemple les nouveaux web mail Ajax (GMail, YahooMail), les sites marchands et les applications de voyage en ligne. Flex I Principes Flex (actuellement en version 2.01) est un environnement de développement complet basé sur : • L’IDE Eclipse pour la programmation, la compilation et le déboguage • Le langage ActionScript (version 3), langage à objets, fortement typé, qui possède des caractéristiques dynamiques et qui est architecturé autour de la notion de composants réutilisables • Un équivalent XML de ActionScript, nommé MXML, et permettant de décrire l’interface utilisateur d’une application à l’aide de balises XML (de manière analogue aux pages HTML) • FlashPlayer (version 9) comme socle d’exécution des applications Flex compilées (en fichiers SWF, le format binaire exécuté par FlashPlayer) • Une librairie de classes et des interfaces de programmation permettant de réaliser toutes sortes d’applications RIA 22 IT-expert n°66 - mars/avril 2007 • Une librairie de composants de base (widgets) extensible pour réaliser les IHM I Complexité Flex repose avant tout sur la maîtrise des langages ActionScript et MXML, ainsi que sur la connaissance des librairies de classes fournies, et dans une moindre mesure sur celle des interfaces de programmation du player Flash. A la différence des applications Ajax qui utilisent un mélange varié de plusieurs technologies différentes, les applications Flex sont construites autour d’une technologie unique, dont l’apprentissage est facilité par une documentation de grande qualité comportant de nombreux exemples. On notera également que les codes sources de la librairie standard Flex sont fournis, ce qui facilite encore la compréhension et la mise au point des applications. I Outillage Les applications Flex seront développées à l’aide de l’IDE « FlexBuilder », constitué de la plate-forme Eclipse et d’une extension spécialisée. C’est un environnement de développement intégré aux innombrables fonctions, telles que : • Edition, compilation et déboguage pas à pas • Gestion de projets de développement • Intégration avec des systèmes de gestion de versions et de configuration (CVS, Subversion…) • Saisie prédictive du code : complétion automatique des variables, accès aux méthodes et aux propriétés • Editeur visuel d’interfaces (RAD), mode d’édition mixte I Avantages Pour les développeurs, les avantages de Flex sont nombreux, et on pourra citer par exemple : • Un environnement de développement très puissant • Des langages de développement Objet (AS3, MXML) simples, puissants et productifs • Un paradigme de programmation à base de composants permettant de créer très simplement des composants réellement réutilisables • La richesse de l’API Flash, des composants et des widgets fournis • Des capacités de prototypage et de développement rapide conférant une excellente productivité aux développeurs • La maturité et la disponibilité de la technologie Flash • Les possibilités variées de communication avec des serveurs Back-Office, au travers de différents protocoles : REST/http, SOAP, XML/RPC, RPC Java/AMF, etc. • La présence optionnelle de composants serveurs J2EE, qui renforcent encore les capacités de communication des applications, notamment avec un système de messagerie sur le réseau et avec le protocole AMF pour les échanges d’objets entre ActionScript/client et Java/serveur • Une maintenance plus aisée, notamment grâce à l’utilisation de composants réutilisable I Inconvénients per, ce qui constitue un choix assez épineux, comme on l’a expliqué précédemment. Les principaux inconvénients de Flex sont : • La technologie n’est pas open source, et les sources des librairies Flash ne sont pas fournies (bien que ceux des librairies Flex le soient) • Le prix relativement élevé des composants serveur (Flex Data Service) • L’impossibilité d’afficher du contenu HTML riche dans les applications Flex (qui disparaîtra avec le futur système Apollo, grand frère annoncé de Flex) Les technologies Ajax les plus prometteuses aujourd’hui sont malgré tout concentrées autour de : • Google Web Toolkit, parce qu’il permet de développer en Java, et d’oublier JavaScript • Backbase pour ses facultés de description de page et ses librairies de composants • Dojo ou Prototype pour leur caractère OpenSource I Applications Cette liste est évidemment loin d’être complète et on fera difficilement l’économie d’une étude approfondie des frameworks Ajax avant de se lancer dans un développement Ajax complexen. I Les qualités de Flex en font un outil de choix pour toute une classe d’applications riches en fonctionnalités, par exemple : • Applications spécialisées sur un métier • Applications d’analyse et représentation statistiques • Applications de commerce en ligne • Applications de communication : chat, RSS, clients mails… • Applications audio / vidéo Conclusion I Quelle technologie choisir ? Flex ou Ajax ? Le choix d’une technologie RIA n’est pas évident, il faut tenir compte des besoins et contraintes de l’application, du public visé, et se prémunir contre les risques d’obsolescence des technologies en évolution rapide. Julien REVEL, Directeur R&D et Co-fondateur de Kap IT 15 ans de R&D Logiciel dont 10 ans en tant que Directeur R&D, Entrepreneur co-créateur de plusieurs sociétés (Wincap, Soamai, Advanced Technology Agency, Kap IT), Docteur es Science Le tableau ci-dessous donne une indication sur les technologies les plus adaptées en fonction de certains critères : Critère Technologies Multi plateformes Ajax, Flex, Laszlo Gestion de contenu HTML Ajax Intégration fine à une page HTML Ajax Application B2B Flex, Ajax Application B2C sur le Web Ajax, Flex Tableaux de bord Flex, Ajax Productivité et maintenabilité Flex Intégration au Système d’Information Flex, Ajax Performances de calcul et d’affichage maximum Applets Java Si l’on choisit la technologie Ajax, il restera encore à choisir les librairies et les outils les mieux adaptés à l’application à dévelop- Kap IT (www.kapit.fr) est une société de conseil, de recherche et de développement logiciel, fournisseur d’application Web 2.0, spécialisée en RIA (expert Flex) et Wiki (expert XWiki). Depuis près de 10 ans, nous améliorons l’expérience des utilisateurs en leur fournissant des applications et des interfaces innovantes. Nous accompagnons les grandes entreprises, les SSII et les éditeurs dans la réalisation de leurs projets de création ou modernisation d’application/site RIA, de reporting dynamique RIA, et de mise en place d’espaces collaboratifs WIKI. Notre objectif : fournir des applications plus ergonomiques, plus communicantes, plus flexibles et plus faciles à maintenir. Contactez-nous : [email protected] IT-expert n°66 - mars/avril 2007 23 www.it-expertise.com Et retrouvez de nouveaux services : • un moteur de recherche pour trouver les informations techniques qui vous intéressent • une nouvelle offre d’abonnement qui vous permet d’accéder aux anciens numéros d’IT-expert en format pdf • les livres blancs techniques d’éditeurs de logiciels, de SSII, de nos partenaires… dans une rubrique "téléchargements" ouverte à tous ! Et toujours des informations sur nos partenaires, sur les sommaires des numéros d’IT-expert http://www.it-expertise.com : un complément d’informations à la version papier que vous recevez tous les 2 mois ! LA RÉFÉRENCE TECHNIQUE DES PROFESSIONNELS DE L'INFORMATIQUE Actualités internationales Actualités internationales Oracle et Sun travaillent de concert pour tenter de résoudre un bogue de la plate-forme J2SE qui empêche la certification des versions 11i et 12 du client E-Business de l’éditeur sur Windows Vista. Aucune date n’est pour l’instant prévue pour cette certification qui, selon Oracle, ne constitue toutefois pas une demande forte du marché. Les préoccupations concernant l’avenir écologique de la planète trouvent un écho auprès des fabricants de puces. Durant l’année 2006, Intel a ainsi réduit de moitié la consommation électrique de ses puces et d’un quart leur taille. Le fondeur espère que les puces qu’il produira en 2008 seront 85 % plus petite et consommeront 10 fois moins que celles fabriquées en 2006. Les gains en taille et en consommation s’expliquent par le passage d’une technologie de 90 nanomètres à 65 nanomètres pour la plupart des puces. Un second saut est sur le point de débuter avec l’arrivée de la technologie à 45 nanomètres. A ceci Intel compte ajouter les bénéfices de sa technologie de cache Turbo Memory qui repose sur l’utilisation de mémoire flash qui ne nécessite pas de courant pour conserver les informations. Elle permet donc de conserver de manière persistante les données les plus couramment accédées et donc de réduire les accès aux disques durs, très consommateurs d’énergie. IBM et Cisco ont annoncé la mise en place d’un service destiné à assister les gouver nements et les entreprises à faire face aux situations catastrophiques. Les difficultés de communication entre les multiples intervenants sont clairement apparues à l’occasion des attentats du 11 septembre 2001. Le service conjoint vise la continuité des opérations, l’interopérabilité des réseaux et le retour à la normale des systèmes. L’offre, présentée sous forme de service hébergée pour un ticket d’entrée de 100,00 $ par an, est adaptable et peut comprendre le déploiement de véhicules pré-équipés pour le déploiement d’un réseau internet sur le terrain des opérations. Cisco s’apprête à faire l’acquisition de la société WebEx pour la somme de 3,2 milliards de dollars. WebEx propose sous forme d’abonnement des services de conférence vidéo et données permettant notamment le partage de documents et d’espace de travail. Avec cette acquisition amicale, Cisco entre sur le marché des applications hébergées et devient un concurrent de Microsoft Live Meeting. Elle permet également au fabricant de matériel réseau d’envisager une pénétration du marché des PME sur lequel il est traditionnellement peu présent. IT-expert n°66 - mars/avril 2007 25 Actualités internationales Pour la première fois en un an et demi, le train de mises à jour de Microsoft pour le mois de mars ne comprenait aucun correctif de sécurité. Cela ne signifie évidemment pas qu’il ne reste plus de faille de sécurité connue dans les logiciels de l’éditeur, mais bien que les correctifs dans ce domaine pour Internet Explorer 7, Office Publisher 2007 et Windows Vista n’était pas prêt à être distribués. Selon certains analystes, la productivité des entreprises américaines et la disponibilité de la bande passante des réseaux devraient chuter significativement aux Etats-Unis durant la seconde quinzaine de mars. Ce phénomène, qui se reproduit chaque année à la même période est à imputer au tournoi universitaire de basket-ball qui devrait générer cette année près de 4 milliards de dollars de paris. Les 31 % de sites sportifs et 56 % de sites de paris de plus que l’année dernière à la même époque, devraient enregistrer des audiences record. Dès le second jour du tournoi, ce sont 5,9 millions de visiteurs uniques qui se sont connectés à partir de leur lieu de travail sur les sites du tournoi et 4,8 millions à partir de leur domicile. La généralisation des flux vidéo et du suivi de l’action en temps réel ajoute évidemment à la consommation de bande passante. Les grands événements sportifs sont par ailleurs l’occasion d’une recrudescence de l’activité des pirates de l’internet, à l’image du piratage le mois dernier du site du Super Bowl afin de distribuer des logiciels malveillants aux visiteurs du site. La Commission Européenne s’inquiète de la faible proportion de femmes employées dans le secteur des technologies de l’information, d’autant que le nombre de diplômées dans ce secteur en Europe est en diminution, passant de 25 % en 1998 à 22 % l’année dernière. Cette moyenne ne rend pas compte d’écarts importants entre les pays (6 % au Luxembourg et 41 % en Lituanie). S’exprimant à l’occasion de la journée de la Femme, Viviane Reeding, Commissaire Européen à la Société de l’Information et aux Média a déclaré que « un nombre plus important de femmes dans le secteur des technologies de l’information serait à la fois un moteur du changement et un renfort majeur pour ce secteur d’activité clé en Europe ». L’institut d’analyse IDC a revu à la baisse ses prévisions concernant la croissance du marché des serveurs à base de processeurs x86. En cause, la demande croissante de processeurs multi-cores et l’engouement pour les logiciels de virtualisation du matériel. De 2006 à 2010, la croissance mondiale ne serait plus que de 39 %, contre 61 % initialement prévue. L’ajustement porte sur rien moins que 4,5 millions de serveurs représentant 2,4 milliards de dollars. 26 IT-expert n°66 - mars/avril 2007 La SEC (autorité de marché américaine) a suspendu pour 10 jours ouvrés la cotation de 35 sociétés ayant fait l’objet de campagne d’e-mailing massive concernant l’imminence de l’envol de leur cours. Cette action exceptionnelle, et les mesures qui devraient suivre, semble indiquer que la SEC est plus que jamais décidée à combattre vigoureusement la pratique consistant à faire grimper artificiellement au moyen de spam le prix et le volume de transactions de petites sociétés. Au bout de quelques jours, la campagne cesse et le cours retombe à sa valeur précédente, au détriment d’investisseurs trop crédules. Selon la SEC les spams de cette nature représentent plus de 100 millions d’envois par semaine. Oracle renforce son implication dans la Fondation Eclipse en rendant disponible la totalité du code source de sa couche de persistance Java : TopLink. Dans le même temps, l’éditeur entre au board de l’association et devient développeur stratégique. La propriété d’Oracle sur TopLink résultait de l’acquisition de WebGain en 2002. L’acquisition d’Hypérion par Oracle pour un montant de 3,3 milliards de dollars ne semble pas du goût de tous les utilisateurs du logiciel de Business Intelligence. Ces derniers considèrent avec appréhension cette nouvelle acquisition qui fait suite à celle de Siebel et réduit encore un peu plus le choix dans ce domaine. Pour autant, cette acquisition possède une réelle justification si l’on considère la qualité des produits Hyperion dans les domaines de la gestion budgétaire et de la consolidation financière pour lesquels Oracle souffre historiquement d’un déficit par rapport à son grand concurrent SAP. Reste à savoir si Oracle tentera d’une manière ou d’une autre de forcer ceux de ses clients qui utilisent Hyperion sur un SGBD concurrent du sien à migrer vers Oracle. Actualités internationales Une proposition de directive de la Commission Européenne envisage des sanctions pénales contre les entreprises dont les réseaux, logiciels ou les services en ligne seraient utilisés pour la diffusion illégale de matériel protégé (musique ou film notamment). Les sanctions prévoient également des peines de prison pour les employés. La proposition criminalise l’aide ou l’incitation à la violation de la propriété intellectuelle. Elle exclut en revanche les brevets du domaine d’application. La proposition réduit également les possibilités d’actions envers les individus aux seuls cas où la violation est « délibérée, consciente et dans le but d’obtenir un avantage commercial ». Affaire à suivre… Les débuts de Windows One LiveCare, le nouvel antivirus de Microsoft, sont plutôt décevants. Deux tests récents, dont un effectué par Virus Bulletin qui constitue une référence dans le domaine démontre des performances plus que passables. Le commentaire de ce test, tel qu’il apparaît sur le blog d’un membre de l’équipe « security research and response team » chez Microsoft reconnaît le problème et laisse supposer que la technologie utilisée jusqu’à présent n’est pas de dernière génération. Le produit est par ailleurs l’objet de suspicion d’utilisateurs qui affirment qu’il est la cause de la suppression malencontreuse de certains fichiers Outlook utilisés pour l’archivage d’emails. Sur ce point, Microsoft dément catégoriquement, bien que l’éditeur reconnaisse que ces fichiers peuvent se retrouver en quarantaine s’ils contiennent des emails suspectés de contenir des éléments viraux. Dans un souci d’économie d’énergie, le passage à l’heure d’été, aux Etats-Unis s’effectuait cette année le 11 mars et non plus le premier week-end d’avril. L’opération a entraîné son cortège de patchs de la part des éditeurs et s’est bien souvent soldée par des actions de dernière minute alors même qu’elle est inscrite dans la loi depuis août 2005. Au final, peu de dysfonctionnements ont été constatés, y compris chez ceux qui, pris par le temps, ont préféré modifier manuellement l’heure des systèmes que d’appliquer les patchs. Microsoft a annoncé son ralliement à l’alliance OpenAjax dont le but est de promouvoir et de faire évoluer les technologies Ajax. L’éditeur rejoint ainsi 71 autres membres dont Borland, IBM, Novell, Oracle et RedHat. L’alliance entend établir des recommandations dans les domaines de l’interopérabilité, de la sécurité, des communications client-serveur et de l’intégration au sein des serveurs et des environnements de développement. Une étude menée par une société New-Yorkaise de conseil auprès de 147 entreprises parmi les Fortune 1 000 montre que les obligations légales en matière de « compliance » – entendez par là Sarbanes-Oaxley, HIPAA, PCI et consorts – constituent le principal moteur de l’investissement des entreprises en matière de sécurité aux Etats-Unis. Ainsi, 62 % des entreprises interrogées ont déclaré prévoir de développer et mettre en place des processus relatifs aux standards de Payment Card Industry (PCI). Un autre rapport datant du début de l’année suggère que les dépenses relatives à la sécurité représentent de 7,5 % à 9 % du budget informatique et, fait intéressant, sont indépendantes de la taille, du secteur d’activité ou de la localisation géographique de l’entreprise. La forte présence de la Fédération de Russie au Cebit d’Hanovre a été particulièrement remarquée. Outre les 150 exposants originaires de ce pays, l’allocution du ministre des technologies de l’information était particulièrement attendue. Celui-ci a réaffirmé l’intention de son pays de combattre les violations de la propriété intellectuelle, tant dans le domaine législatif que dans les moyens accordés aux forces de l’ordre pour faire respecter celle-ci. Au-delà du discours, force est de reconnaître que la Fédération semble avoir commencé à s’attaquer au problème, bien que de manière partielle. L’objectif est clair. La Fédération de Russie voit ses exportations de biens et services dans les domaines des technologies de l’information et des communications croître de manière significative (20 % l’an dernier). Elle compte sur celle-ci pour diminuer sa dépendance envers les marchés de matières premières mais doit pour cela attirer des capitaux étrangers qui sont évidemment attentifs à la sécurité de leur investissement. Les efforts de la Fédération de Russie doivent également être appréciés dans l’optique de son souhait de se faire admettre comme membre à part entière de l’OMC. IT-expert n°66 - mars/avril 2007 27 Quoi de neuf Docteur ? Gestion des DROITS NUMÉRIQUES en entreprise avec RMS A l’ère du numérique, la fuite d’informations sensibles par copie de documents ou transfert de courriels est une préoccupation majeure des entreprises. Les mécanismes de protection mis en œuvre par le biais de listes de contrôle d’accès (ACL) sont inopérants dès lors que l’information sort du périmètre de sécurité. Par exemple, un document sensible qui est protégé par une ACL ne bénéficie plus de cette protection une fois copiée sur une clé USB. De même, un simple "copier/coller" peut déplacer une information sensible vers un document cible qui ne comporte pas les mêmes ACLs que le document source, et ainsi lui faire perdre sa protection. Les technologies habituelles de chiffrement tels que Bitlocker (chiffrement du disque) et EFS (Encrypting File System) pour les fichiers, ou encore S/MIME (Secure MIME) pour la messagerie assurent la confidentialité de l’information lors de son stockage et son transfert, mais ne permettent pas de contrôler l’usage qui en est fait une fois déchiffrée. Qui d’entre nous n’a jamais regretté d’avoir transféré un courriel trop rapidement, pour s’être rendu compte ensuite que le message contenait des informations sensibles ? Pourtant l’émetteur du message original avait peut-être pris la précaution de l’envoyer en tant que message chiffré. 28 IT-expert n°66 - mars/avril 2007 Rights Management Services (RMS) est une technologie « core » de la plateforme Windows Server 2003 pour la « gestion des droits numériques relatifs à l’information » selon les principes du DRM, qui font qu’une fois la protection appliquée à l’information par le biais de licences, cette protection subsiste et est effective quel que soit le parcours de l’information, y compris lorsque celleci sort du périmètre de sécurité de l’entreprise. RMS s’appuie sur le chiffrement pour assurer la confidentialité de l’information, mais va plus loin et permet le contrôle de l’usage qui en est fait une fois l’information déchiffrée. L’auteur d’un document ou d’un courriel peut définir qui pourra accéder à l’information et pour quel usage (visualisation seulement, copie, impression, transfert, etc.). L’entreprise peut définir et gérer de manière centralisée des modèles tels que « Confidentiel Entreprise – Lecture seule » lui permettant ainsi de mettre œuvre sa propre politique de gestion des droits. Il suffira à l’utilisateur ou à un workflow automatisé d’appliquer le modèle approprié pour protéger l’information en respectant la politique qui a été définie. La technologie RMS comprend : • Un composant serveur Rights Management Services pour Windows Server 2003 qui est un ensemble de services Web hébergés par IIS et accessibles par le protocole SOAP, dont le rôle est la certification des utilisateurs, la gestion des licences, et l’administration du système, • Un logiciel client qui comprend le « security processor » dont le rôle est la sécurisation du client RMS (qui peut être un poste de travail, mais aussi un serveur) en tant qu’entité de confiance. Le « security processor » se charge de la protection des clés, du chiffrement/déchiffrement du contenu, et de l’authentification des applications. Une API cliente qui permet aux applications RMS d’accéder aux services du « security processor » localement ainsi qu’à ceux du serveur RMS pour la protection de l’information et consommation du contenu protégé. La partie cliente de RMS s’installe sur les postes Windows 2000, Windows XP, et Windows Server 2003, mais elle est inclut de base dans Windows Vista. De même le serveur RMS fait partie de DRMCreateIssuanceLicense DRMAcquireLicense DRMEncrypt DRMDecrypt DRMCreateBoundLicense Windows Server « Longhorn » sous l’appellation Active Directory Rights Management Services (AD RMS). RMS s’appuie sur Active Directory pour la gestion de l’identité des participants et, à partir de Windows Vista et Longhorn, est en mesure de tirer parti de la fédération d’identité Active Directory Federation Services (ADFS) pour les échanges entre organisations. RMS permet une traçabilité de l’utilisation des licences (et donc du contenu) et pour ce faire nécessite une base SQL Server pour la journalisation de l’activité. RMS et IRM Malgré le fait que RMS est une solution d’entreprise et n’est pas un DRM destiné à la protection de l’audio, vidéo et média grand public, RMS ne pose pas de contraintes ou restrictions particulières quant au type de contenu binaire protégé. Ce sont les applications (dites « RMS aware ») qui s’appuient sur RMS pour protéger leur contenu, lequel est opaque pour RMS. Les applications RMS sont des entités de confiance authentifiées par RMS auxquelles incombe la responsabilité du respect des droits une fois l’information déchiffrée. RMS n’est pas impliqué dans le stockage de l’information protégée et des licences afférentes, lequel incombe aussi aux applications. Pour l’utilisateur, RMS n’est visible qu’à travers les applications. Pour le développeur de progiciels sur étagère, ou le développeur en entreprise, le SDK RMS ainsi que les classes natives du .NET Framework 3.0 permettent de rajouter des fonctions de protection RMS dans les applications. Un progiciel de CAO pourra ainsi intégrer la gestion des droits sur ses documents, et une application interne de comptabilité pourra utiliser RMS pour contrôler la publication des informations comptable. Finalement le portail Web d’une agence photo pourra par exemple permettre la visualisation des images en résolution faible à tout le monde, et en résolution élevée à ses abonnés. Les premières applications de Microsoft à tirer parti RMS ont été celles de la suite Office 2003 : Word, Excel, Powerpoint, et Outlook. Microsoft utilise le terme IRM (Information Rights Manage- Application RMS Proxy Win32 API RMS (MSDRM.DLL) Proxy SECPROC.DLL Vers le serveur RMS SOAP AcquireLicense AcquireIssuanceLicense AcquirePreLicense EditIssuanceLicense GetLicensorCertificate "Security Processor" CryptoAPI Figure 1 - Architecture du client RMS IT-expert n°66 - mars/avril 2007 29 ment) pour designer les fonctions de gestion de droits et de protection de la propriété intellectuelle numérique dans ses applications. Office System 2007 continue à offrir l’IRM et l’étend aux formulaires Infopath 2007. Les nouveaux formats OpenXML et XPS (XML Paper Specification) du standard OPC (Open Packaging Conventions) prennent en compte la gestion des droits numériques. SharePoint Server 2007 applique l’IRM aux documents dynamiquement lors de leur téléchargement par les utilisateurs. Afin de permettre la consommation de contenu ainsi protégé par des utilisateurs qui ne sont pas munis d’Office 2003 ou 2007, les applications IRM permettent aussi la publication au format RMH (Rights Managed HTML) dont le but est la visualisation de contenu protégé par Internet Explorer à l’aide de l’extension Rights Management Add-On (RMA). Fonctionnement de RMS RMS utilise le langage XrML (eXtensible Rights Markup Language) pour l’expression des droits numériques. Les certificats des utilisateurs et les licences associées à l’information sont des documents XrML qui comportent chacun la signature de leur émetteur au format XML Digsig. Les certificats s’inscrivent donc dans une organisation hiérarchique à la manière d’une PKI (Public Key Infrastructure). XrML (http://www.xrml.org) est un standard pour l’expression des droits numériques issu de travaux à Xerox PARC sur DPRL (Digital Property Rights Language). Repris et développé par ContentGuard (une compagnie fondée par Microsoft et Xerox), XrML a été adopté par le groupe de travail MPEG de l’ISO/IEC pour devenir le Rights Expression Language (REL) du standard MPEG-21. XrML permet de spécifier quels droits sont octroyés (visualisation, copie, transfert, impression, etc.), à qui, pour combien de fois, dans quelle période, sous quelles conditions d’accès, à quelles conditions financières, sur quel territoire, avec quelles obligations, etc. RMS met en jeu les certificats et licences XrML suivants : • Certificat machine <OBJECT type="Machine-Certificate"> Afin de pouvoir créer ou consommer du contenu protégé, une machine client RMS doit être activée. Cette activation est réalisée par le "security processor" pour chaque utilisateur de la machine, et consiste en la génération d’un bi-clé RSA 1024, puis la certification de la clé publique dans la hiérarchie RMS. Le certificat contient et authentifie la clé publique de la machine qui a été activée. La clé privée correspondante est conservée dans le profil de l’utilisateur, protégée par DPAPI (Data Protection API). • Certificat utilisateur <OBJECT type="Group-Identity-Credential"> Un utilisateur doit être doté d’un certificat dit RAC ("Rights Account Certificate") afin de pouvoir accéder aux services RMS. 30 IT-expert n°66 - mars/avril 2007 XrML vs PKI X509 ? RMS n’utilise pas d’infrastructure PKI X509 et sa hiérarchie de certificats XrML est transparente pour les exploitants et administrateurs en charge d’un déploiement. Ceci est un avantage pour les entreprises qui n’ont pas d’infrastructure PKI à base de certificats X509, et qui peuvent mettre en place une solution de protection de la propriété intellectuelle immédiatement. Pour les entreprises qui ont investi dans le déploiement d’une infrastructure PKI X509, on pourra regretter qu’RMS n’en tire pas parti. Certains feront remarquer que RMS va donc nécessiter la mise en place et l’exploitation d’une deuxième infrastructure de certificats et ses coûts associés. Cependant cette analyse n’est pas entièrement exacte, en ce sens que les services IT déploient et exploitent une infrastructure de serveurs RMS et non une deuxième hiérarchie de certificats, laquelle est relativement transparente aussi bien pour les administrateurs que pour les utilisateurs. On peut raisonnablement admettre que les coûts de planification, de déploiement, et d’exploitation ne sont pas plus élevés que si RMS était une application PKI X509. Le certificat utilisateur est lié à une machine (préalablement activée) et n’est utilisable que sur cette machine. La certification de l’utilisateur se fait par le serveur RMS auquel le client RMS aura transmis le certificat machine avec la requête de certification. Après authentification de l’utilisateur via Active Directory, le serveur RMS génère un bi-clé RSA 1024 pour l’adresse e-mail de l’utilisateur (son identifiant dans le système RMS), la clé publique, ainsi que la clé privée chiffrée avec le certificat de la machine sont placés dans le certificat utilisateur qui est signé par le serveur RMS. Le bi-clé RSA de l’utilisateur est conservé dans la base SQL et sera réutilisé lors de l’obtention d’un RAC par le même utilisateur sur une autre machine. • Certificat serveur de "licensor " <OBJECT type="ServerLicensor-Certificate"> Ce certificat (SLC – Server Licensor Certificate) authentifie la clé publique du serveur RMS et rattache le serveur à la hiérarchie RMS. Lors de l’installation, le serveur RMS génère un biclé RSA 1024 et se connecte au "DRM Server Enrollment Service" de Microsoft disponible sur Internet pour obtenir son certificat. Pour un déploiement au sein d’un réseau non connecté à l’Internet, l’obtention du certificat peut se faire hors ligne. Deux choix sont possibles pour protéger la clé privée du serveur RMS : une protection logicielle par laquelle la clé privée est stockée dans la base SQL après chiffrement avec un secret qui est lui-même protégé par DPAPI pour le compte de service RMS. Ou alors une protection à l’aide d’un boîtier de chiffrement matériel (HSM – Hardware Security Module). Cette deuxième approche est recommandée mais doit être prise en compte dès le déploiement initial. • Certificat client de "licensor " <OBJECT type="Client-Licensor-Certificate"> Avec un certificat utilisateur (RAC), l’utilisateur peut s’authentifier, consommer du contenu protégé, et obtenir l’émission de licences de publication par le serveur RMS. Cependant, la publication de contenu hors ligne de manière autonome sans connexion vers le serveur RMS (qui est le scenario retenu par les applications Office) nécessite un « Client Licensor Certificate » (CLC) qui permet au client de signer lui-même ses licences de publication. Le bi-clé RSA 1024 du CLC est généré par le serveur RMS. Le certificat émis contient la clé privée chiffrée avec le RAC de l’utilisateur ainsi que des informations telles que l’URL du serveur RMS. • Certificat CA <OBJECT type="DRM-CA-Certificate"> Ces certificats authentifient les autorités de la hiérarchie de certification RMS. • Licence de publication <BODY type="Microsoft Rights Label" version="3.0"> La licence de publication contient les ayants droits ("[email protected]"), les droits ("visualisation, impression"), et les conditions ("expire après 30 jours"). Ces don- nées sont chiffrées avec la clé de session (AES 128) de l’information à laquelle s’applique la licence. La clé de session est elle-même chiffrée avec le certificat du serveur RMS et placée dans la licence. Le tout est signé par l’émetteur, qui peut être le « client licensor » (cas le plus courant, des applications autonomes, telles qu’Office) ou le « serveur licensor ». La licence de publication peut être embarquée avec l’information ou stockée séparément à la discrétion de l’application. Office 2003, et le standard Open XML utilisé par Office 2007, par exemple, embarquent la licence de publication dans un stream du document. • Licence d’utilisation <OBJECT type="Content-License"> La licence d’utilisation permet de consommer du contenu. Elle ressemble à la licence de publication (de laquelle elle est issue) à la différence que la clé de session est chiffrée avec le certificat de l’utilisateur (RAC). Comme pour la licence de publication, la méthode de stockage est à la discrétion des applications. Outlook stocke les licences d’utilisation dans le profil de l’utilisateur, alors que Word, Excel, et Powerpoint tentent de l’embarquer dans le fichier (en quel cas le premier accès à un fichier protégé le modifie). DRM-CertificateAuthority Clé 2048 Microsoft DRM Production Root Microsoft DRM CA DRM-CA-Certificate Clé 1024 Microsoft DRM Machine Activation Server CA Microsoft DRM Server Enrollment CA MS DRM Machine Activation Desktop Security Processor CA Microsoft DRM Server Enrollment Service Machine Server-LicensorCertifcate Clé 1024 Certification Microsoft DRM Desktop Security Processor Activation Certificate Licensing RAC CLC Utilisation Clés 1024 Publication Owner Figure 2 - Hiérarchie des certificats et licences XrML IT-expert n°66 - mars/avril 2007 31 I Protection de l’information Que se passe-il lors de la protection de l’information par une application RMS ? Typiquement, l’utilisateur spécifie les ayants droits et pour chacun, les droits octroyés, ainsi que les conditions d’utilisation (expiration, etc.). L’utilisateur peut aussi appliquer un modèle de droits prédéfinis par l’administrateur. L’application fait ensuite appel au « security processor » pour chiffrer l’information à l’aide d’une clé AES 128. Les droits sont aussi chiffrés et placés dans la licence de publication. La clé de session est elle-même chiffrée pour le serveur RMS puis placée dans la licence qui finalement est signée avec le certificat CLC. Cette approche fait que dès lors seul le serveur RMS peut déchiffrer la clé de session, et peut ainsi contrôler pleinement l’accès à l’information protégée. Il appartient à l’application de stocker et transférer l’information ainsi que la licence de publication associée. L’approche la plus courante est d’embarquer la licence de publication dans le même fichier (ou même message) que le contenu. I Consommation d’un contenu protégé La consommation de contenu protégé nécessite une licence d’utilisation. Si une telle licence (valide) n’est pas déjà disponible, l’application RMS associée au contenu tente d’en obtenir une auprès du serveur RMS en lui transmettant la licence de publication et le certificat de l’utilisateur (RAC). L’URL du serveur RMS est indiquée dans la licence de publication. Le serveur RMS, après avoir validé la RAC et la licence de publication, déchiffre la clé de session puis les droits et conditions de la licence de publication. Le serveur peut alors vérifier que l’utilisateur fait bien partie des ayants droits, et que les autres conditions (comme la non expiration) sont remplies. Si les ayants droits désignent un ou plusieurs groupes, le serveur procède à l’expansion des groupes via Active Directory afin de déterminer si l’utilisateur fait partie de ces groupes. Cette méthode fait qu’un utilisateur peut se voir retirer l’accès à l’information par simple exclusion d’un groupe (moyennant l’expiration des licences d’utilisation qu’il aurait déjà obtenu). Après la validation de ces éléments, le serveur émet une licence d’utilisation dans laquelle il place la clé de session chiffrée pour l’utilisateur et la retourne à l’application RMS. L’application RMS peut alors tenter une liaison (« bind ») de la licence d’utilisation pour l’utilisateur et des droits spécifiques (visualisation, copie, impression, etc.). Le « security processeur » effectue cette liaison après un certain nombre de contrôles dont la validité de la licence d’utilisation et celle de l’utilisateur (RAC), l’authentification de l’application spécifiée par la licence (validation de la signature du manifeste de l’application), ainsi que la non révocation des entités. Si cette liaison réussit (l’utilisateur possède le droit demandé et les différents contrôles ont été positifs), l’application peut demander le déchiffrement du contenu. Le « security processor » utilise la clé privée de la machine pour déchiffrer la clé privée de l’utilisateur et finalement déchiffrer le contenu. L’application peut alors effectuer les opérations pour lesquelles la liaison a été demandée. Une application doit interroger l’API client RMS pour déterminer les droits de l’utilisateur et adapter l’interface IHM en conséquence (griser les menus des actions auxquelles l’utilisateur n’a pas droit). Une bonne pratique pour une application est de ne tenter une liaison que pour une action unitaire puis de s’assurer que seule cette action sera effectuée avec le contenu déchiffré. Obtenue du serveur RMS Création lors de la protection du fichier Chiffrée avec clé publique serveur Chiffrée avec clé de contenu Chiffrée avec clé de contenu AES128 Licence publication Licence utilisation Clé de Contenu Clé de Contenu Chiffrée avec la clé publique de l'utilisateur Droits et ayants droits (adresses e-mail) Droits pour l'utilisateur Chiffrée avec clé de contenu Contenu du fichier (texte, images, méta data, etc…) Figure 3 - Protection d’un contenu 32 IT-expert n°66 - mars/avril 2007 On voit le rôle important des applications de confiance (qui sont authentifiées ainsi) dans un déploiement RMS, puisqu’une fois la liaison effectuée et le contenu déchiffré par le « security processor », le contrôle de l’usage (correspondant à la liaison) repose entièrement sur l’application. Des serveurs de licensing supplémentaires peuvent être subordonnés au serveur de certification racine. Cette approche répond à des besoins organisationnels de séparation du contrôle de l’information. Par exemple, le département finances peut avoir son serveur de licensing dédié, et séparé du reste de l’entreprise. Serveur RMS Certification et Licensing (racine) Architecture et déploiement RMS Le serveur RMS comporte deux types de services Web, aussi désignés en tant que « pipelines » : • Les services de certification, mis en œuvre dans le répertoire virtuel _wmcs/Certification du site Web par défaut. Ces services comprennent : Certification.asmx – permet la certification des utilisateurs (méthode Certify), SubEnrollService.asmx – permet la certification de serveurs de licensing subordonnés au serveur de certification (méthode SubEnroll), • Les services de licensing, présents dans le répertoire virtuel _wmcs/Licensing : License.asmx – délivre les licences d’utilisation (méthode AcquireLicense), Publish.asmx – permet au client RMS d’obtenir une CLC (méthode GetClientLicensorCert), ou, pour les applications en ligne, la signature d’une licence de publication par le serveur (méthode AcquireIssuanceLicense). Pour faciliter la montée en charge, le serveur RMS peut être un serveur Web logique composé de serveurs physiques en "Web farm" selon les techniques round-robin DNS, Network Load Balancing, ou une solution matérielle, et accessible via une URL unique. Forêt AD Direction Finances Partenaires Serveurs RMS Licensing (subordonnés) Figure 5 - Subordination des serveurs de licensing Principe de topologie RMS - Toute protection de contenu par les applications se fait pour un serveur de licensing spécifique, et la consommation nécessitera une connexion vers ce serveur de licensing afin d’obtenir une licence d’utilisation. Une entreprise peut déployer plusieurs serveurs de certification racine. Typiquement on ne déploiera qu’un seul serveur de certification racine (et éventuellement ses serveurs de licensing subordonnés) par forêt Active Directory. Serveur RMS - Web farm Cluster NLB Certification Licensing (racine) Certification Certification Licensing Licensing (racine) (racine) Subordination Serveur SQL Figure 4 - Cluster RMS Un déploiement RMS comporte au minimum un serveur de certification racine qui expose aussi bien les services de certification que les services de licensing. Licensing Trusts user domain Figure 6 - Multiples serveurs de certification racine IT-expert n°66 - mars/avril 2007 33 I Découverte des services RMS La localisation des services RMS par les applications est un point important à prendre en compte pour la planification d’un déploiement. Lors de l’obtention d’un certificat utilisateur, le client RMS utilise Active Directory (objet SCP - Service Connection Point - de la partition de configuration du catalogue global) pour localiser le service de certification. Le SCP est créé lors de la configuration du serveur de certification racine et il ne peut y avoir qu’un seul SCP par forêt Active Directory. La clé de registre HKLM\SOFTWARE\Microsoft\MSDRM\ServiceLocation\Activation permet cependant de spécifier l’URL du service de certification et prend précédence sur le SCP. Cette configuration permet aux clients RMS de localiser leur serveur de certification en l’absence de SCP, ainsi que le déploiement de plusieurs serveurs de certification racine au sein d’une même forêt, en quel cas on pourra configurer les clients RMS afin de les rattacher à un serveur de certification spécifique. Une logique similaire s’applique pour la localisation du service de licensing lors de l’obtention d’un certificat de licensor (CLC) nécessaire à la publication de contenu. L’URL du service de licensing est déduite du SCP. Dans le cas où on aura déployé des serveurs de licensing subordonnés, l’utilisation de la clé de registre HKLM\SOFTWARE\Microsoft\MSDRM\ServiceLocation\EnterprisePublishing est nécessaire pour rattacher les clients RMS à ces serveurs. Le principe à retenir est que tout contenu publié avec le CLC ainsi obtenu l’est pour ce serveur de licensing, et n’est consommable qu’à travers ce serveur. Finalement, les applications RMS peuvent avoir leur propre logique pour la découverte des services RMS. C’est le cas de Micro- 34 IT-expert n°66 - mars/avril 2007 soft Office qui utilise ses propres clés de registre pour rattacher les clients IRM aux serveurs RMS. Le CLC contient l’URL du serveur de licensing qui en principe est une URL intranet. Si le serveur de licensing est accessible depuis l’extérieur via une URL extranet, l’administrateur peut aussi publier cette URL en quel cas le CLC comporte les deux URL (intranet et extranet). Ces URL se propagent dans les licences publication. Lors de la consommation de contenu, les applications RMS les utilisent pour localiser le service de licensing. I Relations de trust et échanges inter-organisations Un serveur de licensing ne délivre des licences d’utilisation que pour les RAC qui proviennent du serveur de certification auquel il est subordonné ou de serveurs pour lesquels une relation de trust a été configurée. Un serveur de certification racine et ses serveurs de licensing subordonnés représentent un « user domain » RMS. Le principe est qu’un contenu protégé n’est consommable que par les utilisateurs du même user domain ainsi que des user domain vers lesquels une relation de trust existe. Une relation de trust user domain se configure sur le serveur de licensing et consiste en l’importation de la clé publique du serveur de certification tiers. Cette relation permet aux utilisateurs d’un user domain (Entreprise B sur la figure 7) de publier du contenu à destination des utilisateurs du domaine trusté (Entreprise A). Les scenarii suivants tirent parti des relations de trust user domain : • Le partage de l’information protégée entre entreprises ayant chacune leur infrastructure RMS, Entreprise B Entreprise A Trusts user domain Certification User domain A Certification User domain B Licensing Licensing Utilisateurs (RAC) Utilisateurs (RAC) Consomment contenu de B Produisent contenu pour A Figure 7 - Trusts de type user domain • Un déploiement RMS de plusieurs serveurs de certification racine, typiquement dans un environnement Active Directory multi- forêt, avec un serveur racine par forêt (figure 6 illustre un tel scenario), • Le partage d’information protégée avec des utilisateurs externes à l’entreprise authentifiés par Microsoft Live ID (anciennement Microsoft .NET Passport). A sur le serveur B. Cette configuration permet alors au serveur de licensing B d’émettre des licences d’utilisation pour du contenu originellement protégé dans le domaine de publication de A. Un tel scenario de fusion appelle à une phase d’étude et de planification détaillée, en particulier pour la redirection ou migration des utilisateurs vers le nouveau domaine. Certaines applications RMS, c’est le cas de Microsoft Office, permettent de mettre en œuvre une telle redirection. I Sécurité des pipelines Une relation de trust RMS de type user domain permet l’échange de contenu protégé entre organisations ayant chacune leur infrastructure RMS. Cependant, avec le client RMS de Windows Vista et Windows Server « Longhorn » AD RMS, une organisation peut tirer parti d’une relation de confiance ADFS WS-Federation pour mettre à disposition du contenu protégé auprès d’un tiers partenaire qui n’a pas d’infrastructure RMS, ni même un modèle d’identités Windows. ADFS implémente les standards WS-Federation, WS-Trust et SAML (Security Assertion Markup Language) permettant le partage d’identités entre organisations. Il existe une autre relation de trust RMS dite de « publishing domain » (ce terme désigne l’ensemble du contenu protégé par un serveur de licensing) destinée à être utilisée non pas dans des scenarii de partage et d’interopérabilité, mais à des fins de récupération de contenu suite à l’arrêt de l’exploitation (ou « decommissioning ») d’une infrastructure RMS. Un scenario typique est la fusion de deux entreprises ayant chacune leur infrastructure RMS. Le serveur de licence A est décommissioné, et on souhaite permettre l’accès au contenu existant à travers le serveur de licence B. L’établissement de la relation de trust «publishing domain » de B vers A consiste à importer la clé privée du serveur L’émission d’un certificat utilisateur (RAC) se fait sur la base de son authentification via Active Directory. Le service Web de certification sera donc configuré en « Windows Integrated Authentication ». La configuration d’une authentification client SSL/TLS par carte à puce est aussi possible et permettra de renforcer la sécurité d’accès à la certification. L’émission de licences d’utilisations se fait sur la base d’une RAC valide et ne requiert donc pas d’authentification de l’utilisateur au niveau système. Dans des scenarii de trust d’organisations tierces (pour lesquelles il n’existe pas de relation de trust AD ni ADFS), on sera obligé de permettre l’accès anonyme au service Web de licensing. Dans les autres cas, une bonne pratique est de désactiver l’accès anonyme et d’imposer l’authentification Windows. De même, l’utilisation d’un canal SSL/TLS sur l’ensemble des services est recommandée (selon le principe de la sécurité en profondeur). Un serveur RMS se protège comme un serveur Web sensible. L’utilisation d’un pare-feu de niveau applicatif permet l’inspection du trafic et est recommandée. Finalement, on renforcera les ACLs sur les répertoires virtuels des services RMS pour ne permettre l’accès qu’aux utilisateurs IT-expert n°66 - mars/avril 2007 35 concernés. Par exemple, on pourra restreindre l’accès aux services Web du serveur de licensing du département finances aux seuls utilisateurs devant accéder aux documents ainsi publiés. RMS, une solution d’entreprise RMS est conçu pour la protection des informations de l’entreprise. A ce titre RMS permet à l’entreprise de garder la maîtrise de l’information chiffrée, et de s’assurer que les utilisateurs ne peuvent se dérober à ce contrôle. • La fonction de journalisation permet de conserver une trace des accès à l’information et de l’utilisation des licences. • Le groupe « super users » permet d’accéder à l’ensemble du contenu protégé d’un domaine de publication. La gestion de ce groupe est particulièrement sensible et appelle à précaution. • La fonction d’exclusion permet d’exclure des entités de l’accès au contenu à tout moment. Cette exclusion, qui peut être temporaire, peut porter non seulement sur les utilisateurs, mais aussi sur les applications (en cas de compromission), une version du « security processor », ou encore une version du système d’exploitation du poste de travail. La fonction d’exclusion ne nécessite pas planning particulier. • A l’inverse de la fonction d’exclusion qui est une fonction serveur, la révocation est permanente et sa vérification une fonction du client RMS. Lors de la liaison d’une licence d’utilisation, le « security processor » vérifie la non révocation des entités impliquées. Les certificats et licences, les manifestes ou encore le contenu lui-même peut être révoqué, en quel cas la liaison échoue. La mise en œuvre de révocation nécessite un effort de planification. Les fonctions d’exclusion et de révocation ne sont pas incompatibles et peuvent être utilisées simultanément. Microsoft a fait preuve de prudence dans le positionnement de RMS en tant que dispositif de sécurité infaillible, mettant plutôt l’accent sur la mise en œuvre et la gestion des politiques de l’entreprise. Si le volet chiffrement de la technologie RMS offre un niveau de sécurité similaire aux logiciels ou protocoles de cryptographie moderne (et donc un bon niveau de protection contre les tiers non autorisés), le contrôle de l’usage est lui contournable. RMS inhibe la fonction de copie d’écran du système d’exploitation, mais rien n’empêche un utilisateur, surtout s’il est adminis- 36 IT-expert n°66 - mars/avril 2007 trateur de son poste, d’installer un logiciel de copie d’écran plus puissant, de ressaisir ou dicter l’information, ou tout simplement d’avoir recours à l’appareil photo numérique de son téléphone portable. Cependant si l’objectif est de prévenir le transfert d’un courriel ou encore l’impression d’un document sensible par inadvertance, RMS y répond tout fait. L’intérêt d’une technologie de gestion des droits numériques en entreprise est qu’une violation de la politique de l’entreprise, telle que la copie d’un document confidentiel, ne peut se faire qu’en toute connaissance de cause, avec contournement volontaire de la technologie. Références RMS sur microsoft.com http://www.microsoft.com/windowsserver2003/technologies/rightsmgmt/default.mspx (alias http://www.microsoft.com/rms) RMS sur le blog MSDN http://blogs.msdn.com/rms/ Hardening Guide for Microsoft Windows Rights Management Services http://www.microsoft.com/technet/community/column s/sectip/default.mspx RMS SP2 sur Technet http://technet2.microsoft.com/WindowsServer/en/libra ry/27ee06a1-f467-4a6c-b66245ddb5f8c13e1033.mspx?mfr=true Jean-Yves POUBLAN Consultant Principal IT-expert, soudain tout est clair… IT-expert, la référence technique des professionnels de l’informatique Bimestriel de conseil et d’expertise technique, IT-expert vous offre l’information essentielle pour vous former et décider. LA RÉFÉRENCE TECHNIQUE DES PROFESSIONNELS DE L'INFORMATIQUE www.it-expertise.com Pour tous renseignements : IT-expert - 3, rue Marcel Allégot - 92190 MEUDON - FRANCE Tél. : +33 (0)1 46 90 21 21 - e-mail : [email protected] Abonnez-vous à IT-expert Je m’abonne 1 an au bimestriel IT-expert. Je recevrai 6 numéros pour 89 € TTC Je m’abonne 1 an à IT-expert version papier + accès au pdf en ligne* pour 120 € TTC Mme Mlle M. Nom Prénom Société Bon d’abonnement à faxer au +33 (0)1 46 90 21 20 Fonction Adresse ou renvoyer au Service Abonnements 3, rue Marcel Allégot 92190 Meudon France CP Ville E-mail Tél Fax Chèque joint à l’ordre de Press & Communication France Règlement à réception de facture LA RÉFÉRENCE TECHNIQUE DES PROFESSIONNELS DE L'INFORMATIQUE Date : Signature obligatoire : * Vous recevez dès sa parution un exemplaire d’IT-expert par la poste à l’adresse de votre choix et vous aurez accès à l’ensemble des anciens numéros d’IT-expert en version PDF sur le site web d’IT-expert : http://www.it-expertise.com Abonnez-vous sur www.it-expertise.com/Abonnement Comment ça marche ? Un OBSERVATOIRE pour mesurer l’URBANISATION des SYSTEMES d’INFORMATION Depuis quelques années, de nombreuses entreprises se sont engagées dans la voie de l’urbanisation des SI, et ont partagé leur expérience au sein du Club URBA-EA. Les progrès dans la prise en compte du sujet, dans le rapport aux projets informatiques, dans la compréhension des différentes visions, processus, fonctionnelles, applicatives, techniques… sont indéniables, et des consensus se sont dégagés. En parallèle, une meilleure connaissance des approches d’architecture d’entreprise, initiées par les organisations nord-américaines, s’est diffusée, et a enrichi le débat sur le périmètre d’action et les enjeux de l’urbanisme. Progressivement, l’urbanisme des SI, fonction désormais reconnue au sein des grandes organisations, s’est professionnalisé. Les résultats disponibles autour de la métrique proposée par l’indice d’urbanisation, dans la mise en œuvre de l’observatoire de l’urbanisation, sont un témoignage probant des avancées réalisées. Nous disposons autour de l’observation des divers degrés d’urbanisation dans les entreprises, de données tangibles qui permettent à chacun de se comparer, et d’évaluer l’évolution de son urbanisme. Le présent article restitue les premiers résultats acquis par cette démarche collective. Il rappelle d’abord les grandes lignes des processus d’urbanisation, qui concrétisent le métier de l’urbaniste et ses rapports avec les autres IT-expert n°66 - mars/avril 2007 39 acteurs de l’informatisation. Puis il présente les caractéristiques et l’originalité de l’indice d’urbanisation. Enfin, il restitue les premiers résultats obtenus auprès des entreprises membre du Club qui partici- Les processus d’urbanisation Les processus d’urbanisation ont pour objectif d’organiser la transformation progressive et continue du SI visant à le simplifier, à optimiser sa valeur ajoutée et à le rendre plus adaptable et flexible vis-à-vis des évolutions stratégiques de l’entreprise. pent à l’Observatoire de l’urbanisation. Les systèmes d’information constituent un lourd patrimoine d’investissements cumulés au fil des années (applications, infrastructure technique…). Il en résulte une imbrication de différentes générations de réalisations informatiques, dont l’interfonctionnement tient parfois de l’acrobatie. Cet état de fait conduit aujourd’hui à devoir désimbriquer les différentes générations d’applications tout en anticipant les besoins d’évolution du système d’information. L’urbanisme a pour ambition d’aider à relever ce défi. L’urbanisme se traduit donc comme l’évolution maîtri- C’est l’exercice d’une fonction permanente, avec des actions de court terme, et d’autres de longue haleine. Le Club URBA-EA a précisé les processus d’urbanisation, en les reliant à la gouvernance des SI, aux activités cœur de métier de l’urbaniste, et aux projets eux-mêmes. Ce travail de clarification a permis d’identifier, de documenter les différents leviers d’action de l’urbaniste parce que cette fonction est multiple, et, avec de nombreux angles d’attaque, il n’existe pas de démarche unique, universelle. Il est impératif de tenir compte du contexte et des enjeux, pour s’adapter au cas de l’entreprise. Une autre difficulté est le manque de visibilité de la consistance de l’urbanisme. De quoi parle-t-on ? A quel résultat aboutir ? Comment la situation a-t-elle évolué ? Il faut se donner une vision dans la durée, pour renouveler la motivation et l’énergie nécessaires et il faut rendre ces travaux de fond visibles du management. C’est pourquoi il paraît nécessaire d’« objectiver » l’urbanisation, pour étayer le discours, dépasser la pétition de principes, et le simple énoncé d’avantages qualitatifs. On sait qu’un processus n’est bien défini que s’il est mesurable. sée et réactive des SI. Il consiste à proposer une vision du SI alignée sur les perspectives du métier, apte à éclairer les choix d’évolution sur le système informatique. L’indice d’urbanisation Dans cette volonté de définir une mesure objective et originale, le Club URBA-EA a créé en 2005 un indicateur dédié : l’indice d’urbanisation. Cet indicateur de mesure permet d’évaluer l’état de l’urbanisation de tout ou partie du SI de l’entreprise. Processus d’urbanisation du S.I. (synthèse) Urbaniser le S.I. de l’Entreprise Pilotage Coeur Métier Support 40 Piloter líurbani sation du SI et Participer aux comités d’arbitrage projets Définir et maintenir le Cadre d’urbanisme Réaliser et maintenir l’infrastructure fonctionnelle du SI Maintenir & diffuser les cartographies de SI existant & cible IT-expert n°66 - mars/avril 2007 Développer les relations avec les projets L’indice d’urbanisation est orienté résultats de l’urbanisation : chaque fois qu’un résultat concret peut être mesuré il est l’objet d’une cotation, par exemple évaluer le pourcentage du patrimoine applicatif qui est cartographié. Bien sûr l’indice restitue aussi la maturité des processus de l’urbanisme, à partir de faits objectifs concernant par exemple la gouvernance, les méthodes… tion des flux inter-applicatifs et sur la mise en place de dispositifs d’échanges mutualisés. Cet indicateur, multiaxes, restitue les différentes dimensions de l’action de l’urbaniste. Ainsi aucun parti n’est pris sur un niveau de maturité globale, puisque, selon l’entreprise et ses enjeux d’urbanisme, l’urbanisme souhaitable et les priorités seront fondamentalement différents. A l’issue de la démarche de cotation, l’indice d’urbanisation est visualisé graphiquement. L’indice est non seulement un outil de mesure, mais aussi de management : il permet d’apprécier si l’urbanisation du SI est « en bonne voie », c’est-à-dire si les actions menées s’inscrivent dans une démarche de meilleure maîtrise de l’urbanisation du SI. Axe 6 – Piloter et supporter l’urbanisation du SI : il faut mobiliser des ressources pour l’urbanisme, assurer la communication et la formation pour l’ensemble des acteurs projet. L’indice d’urbanisation est articulé autour de six axes comportant chacun 3 à 5 critères : Axe 1 – Connaître le SI existant : la connaissance porte essentiellement sur les processus et les applications, dans le but de construire des référentiels cartographiques. Axe 2 – Gérer les référentiels majeurs pour l’entreprise : il s’agit d’évaluer si les données métier clés sont définies de façon unique, si la responsabilité de chaque référentiel est attribuée à une entité bien identifiée et si les dispositifs de gestion des données de référence permettent d’en assurer la qualité, la cohérence et la disponibilité. L’Observatoire de l’Urbanisation des SI En 2006, le club URBA-EA démarre l’Observatoire de l’urbanisation avec 44 cotations de SI. Parmi les sociétés ayant participé au lancement de l’observatoire, on peut citer : Air France, Crédit Foncier de France, EDF, GDF, Renault, RTE, Société Générale, SNCF. Ces sociétés, qui appartiennent à des secteurs professionnels différents et ont des organisations inter- Axe 3 – Disposer de cibles pour l’évolution du SI : leur élaboration permet de s’assurer que les nouveaux projets s’inscrivent bien dans le cadre de ces cibles et que ces dernières sont en harmonie avec la stratégie de l’entreprise. nes qui leur sont propres, ont toutes trouvé un intérêt réel et opérationnel à mettre en œuvre cet indice. Ces sociétés se sont retrouvées dans l’Observatoire de Axe 4 – Maîtriser une construction du SI optimale pour l’ensemble de l’entreprise : pour atteindre ces cibles, il faut bien sûr définir et mettre en œuvre un plan de migration et élaborer et diffuser des règles d’urbanisme applicables par les équipes projet. l’urbanisation, de façon à suivre dans le temps l’évolution de leurs niveaux d’urbanisation, à partager des retours d’expérience concrets et à accélérer la mise en place d’un dispositif de pilotage et de communication sur l’urbanisation en interne. Axe 5 – Maîtriser la complexité des flux d’échange d’information : cette maîtrise porte sur la connaissance, la standardisa- IT-expert n°66 - mars/avril 2007 41 Les premiers résultats de l’Observatoire de l’Urbanisation L’intérêt de l’indice d’urbanisation est illustré par le fait qu’il ait été retenu, dans plusieurs entreprises de l’Observatoire, comme indicateur de pilotage stratégique de la DSI. Afin de pouvoir analyser les résultats de façon pertinente, les différentes cotations ont été regroupées en six segments fonctionnels plus homogènes : production industrielle, production de services, marketing-commercial, finances-comptabilité-achats, ressources humaines et logistiques, de façon à constituer des ensembles homogènes, au sein desquels les restitutions statistiques ont un sens. L’analyse statistique a été faite sur la base de la mesure de la médiane des cotations de chaque critère, la valeur médiane étant la valeur qui sépare l’ensemble des résultats en deux groupes de même effectif. Le schéma ci-après représente le résultat médian global pour l’ensemble des cotations. L’avantage de cette représentation est que les points forts et les points à améliorer de l’urbanisation sautent aux yeux, sans que cela ne dispense d’une analyse minutieuse des résultats. Il apparaît de façon immédiate, sur ce schéma, que, d’une manière générale, ces sociétés ont une bonne connaissance de l’état de leur système d’information grâce à la cartographie des processus, la cartographie des applications, la description des flux inter-applicatifs et la large diffusion de ces cartographies. Cette bonne connaissance s’élargit par ailleurs aux objectifs métier. 42 IT-expert n°66 - mars/avril 2007 Autre aspect positif, les moyens consacrés à l’urbanisme permettent de constituer une entité opérationnelle dimensionnée pour intervenir sur les domaines sensibles. Mais il faut souligner que les sociétés, ici présentes, ont en général un certain recul dans leur démarche d’urbanisation. Par ailleurs, autre point fort, la bonne prise en compte de l’urbanisme dans les dispositifs de gouvernance des projets et dans les études amont illustre le fait que la valeur ajoutée de l’urbanisme est reconnue. Si la connaissance de l’état actuel du système d’information est bonne, il n’en va pas de même de la vision prospective des cibles à atteindre ou du plan de migration, tant pour les processus, que pour les fonctions et les applications. Il en résulte que le plan de migration vers la cible est mal connu. Enfin, des sujets transverses sont parmi les moins bien cotés. C’est le cas des référentiels, notamment pour l’attribution de la responsabilité de ceux-ci aux métiers ou aux maîtrises d’ouvrage ; c’est aussi le cas des échanges inter-applicatifs dont la standardisation et la mutualisation sont peu répandues. Avec également une cotation faible, l’existence de dispositifs de pilotage de l’urbanisation - définition d’objectifs mesurables et suivi périodique de leur atteinte – reste peu répandue, la communication sur l’urbanisme a un caractère très général et la formation reste occasionnelle. Chaque segment fonctionnel dispose de la même représentation, ce qui permet de situer les résultats de chaque segment par rapport à l’ensemble. Ainsi, par exemple, le segment commercial–marketing fait apparaître des divergences par rapport au comportement médian global. • l’accent se porte davantage sur une bonne maîtrise de l’existant, avec une vision moyen terme en retrait • un lien opérationnel fort est créé entre l’urbanisme et les projets • un effort particulier est porté sur les actions de formation et de communication sur l’urbanisme. Chaque membre de l’Observatoire de l’Urbanisation peut ainsi comparer l’urbanisation de son SI commercial–marketing par rapport à l’ensemble du segment. Mais l’analyse ne s’arrête pas là : on peut, pour chaque axe de l’indice ou au sein du processus d’urbanisation, positionner les segments fonctionnels entre eux et ainsi, hiérarchiser l’état de l’urbanisation des systèmes d’information. Quelles perspectives ? Ce radar, établi dans chaque entreprise et pour les directions métier concernées, permet de tracer « la feuille de route » des travaux d’urbanisation. Celle-ci consistera à fixer des objectifs à atteindre pour chaque critère à un horizon donné. Il ne s’agit pas, bien sûr, de progresser de façon identique sur tous les axes ni d’avancer au même rythme, mais au contraire de se fixer des objectifs réalistes et pragmatiques adaptés au contexte de chaque entreprise et de chaque direction métier. La fixation de tels objectifs va bien sûr s’accompagner de plans d’action détaillés pour y parvenir. Une voie complémentaire, lorsque la cotation a concerné plusieurs directions métiers d’une même entreprise, est de dégager de ces radars des axes communs de progrès qui peuvent être mis en œuvre au niveau Corporate. I Présentation du Club URBA-EA Le Club URBA-EA, Club « Urbanisme des SI - Enterprise Architecture » traite les différentes questions posées par l’urbanisation des Systèmes d’Information (SI), ou selon la terminologie anglo-saxonne, par « l’Enterprise Architecture ». Le champ des préoccupations va des processus métiers à l’architecture des systèmes applicatifs. Le Club a pour vocation : • d’échanger entre professionnels en charge de l’évolution des systèmes d’information : - urbanistes, architectes, responsables des études, responsables de maîtrise d’ouvrage… • de capitaliser les retours d’expérience et les savoir-faire, • de promouvoir ces démarches auprès des entreprises (Directeurs de S.I., Maîtres d’ouvrage, Management…) ainsi qu’auprès de l’enseignement supérieur. René MANDEL Michel DARDET Président du cabinet ORESYS, auteur de l’ouvrage « De la stratégie business aux systèmes d’information » chez Hermes Directeur associé du cabinet ORESYS, responsable de l’activité Urbanisme des SI Alain LEGAC Consultant indépendant Le Club URBA-EA est une association inter entreprises, créée en 2000 par : AXA, FNAC, SUEZ-Lyonnaise des Eaux, ORESYS, RATP. Le Club compte, aujourd’hui, près de 60 grandes entreprises et administrations. Site web : www.urba-ea.org IT-expert n°66 - mars/avril 2007 43 Fenêtre sur cour Interview d’Hubert Tournier Senior Manager chez Deloitte Consulting & Risk Services La société Deloitte compte 135 000 personnes au niveau mondial, 5 000 en France et est présente dans près de 150 pays. L’activité principale de Deloitte se situe dans le domaine des activités réglementaires de type commissariat aux comptes, expertise comptable ou encore juridique et fiscale. Deloitte a également des activités informatiques qui, historiquement, avaient été créées en support à l’activité de commissariat aux comptes lors de l’informatisation des comptabilités. Depuis une dizaine d’années, Deloitte dispose enfin d’une ligne de services dédiée à la sécurité des systèmes d’information, ces derniers ayant pris une importance stratégique pour de nombreuses entreprises. Dans le cadre de notre dossier sur la sécurité des applications, nous avons eu le plaisir d’interviewer Monsieur TOURNIER qui nous fait partager son expérience dans ce domaine. I Pourriez-vous nous expliquer le fonctionnement de votre métier chez Deloitte ? Hubert TOURNIER : Deloitte propose des audits de sécurité mais aussi du conseil sur ce sujet. Il existe deux grandes familles de missions dans le domaine de l’audit de sécurité, soit nous proposons des tests d’intrusion, c’est-à-dire en nous plaçant dans les mêmes conditions que des « pirates » potentiels sans information préalable sur le système d’information ciblé, soit nous effectuons des audits de sécurité, c’est-à-dire que nous travaillons de façon concertée avec les équipes informatiques internes. 44 IT-expert n°66 - mars/avril 2007 I De quelle manière a évolué la sécurité au sein des entreprises ? Hubert TOURNIER : L’évolution de la sécurité s’est faite lentement. Dans un premier temps, les problématiques étaient plutôt d’ordre organisationnel. Comment organiser la fonction sécurité ? Comment l’articuler avec les directions métiers et la DSI ? Puis est venu le temps de la défense « périmétrique », c’est-à-dire que l’on cherchait essentiellement à se protéger contre des menaces externes à l’entreprise. Puis nous sommes passés à un modèle de défense dit « en profondeur », après une prise de conscience des risques qui pouvaient d’une part venir du personnel, mais aussi de l’ouverture de l’entreprise à des tiers tels que les partenaires, clients, personnels nomades… Dans ce modèle constitué de plusieurs lignes de défense, défendre au plus près les applications est devenu un enjeu important. I Comment se situe la France sur ce secteur ? Hubert TOURNIER : Le secteur d’activité de la sécurité des systèmes d’information est foisonnant. En France, il y a quelques années, nous pouvions compter au moins 260 sociétés qui intervenaient dans ce domaine. Depuis longtemps, nous entendons que ce secteur d’activité va « exploser » lorsque les entreprises vont prendre conscience des enjeux de la sécurité or, pour le moment, ce n’est pas encore le cas… La culture du contrôle et de la sécurité est bien plus importante dans les pays anglo-saxons que dans les pays latins. Même les sociétés qui ont des activités en ligne, donc qui sont plus exposées, n’ont pas toujours comme priorité de sécuriser leurs applications. I Existe-t-il des secteurs d’activités plus matures sur ce sujet ? Hubert TOURNIER : Il y a une meilleure sensibilité dans les mondes de la finance et de la pharmacie, notamment du fait de contraintes réglementaires. Mis à part les législateurs, les entreprises telles que Deloitte peuvent inciter leurs clients à renforcer la sécurité de leurs applications. Depuis que certaines entreprises réalisent une part conséquente de leur CA sur le Web, les commissaires aux comptes sont eux-mêmes devenus plus sensibles à la sécurité des systèmes d’information, et demandent de plus en plus souvent à nos équipes d’examiner la sécurité des applications qui supportent les activités de nos clients. I Quel type d’intrusion rencontrez-vous fréquemment ? Hubert TOURNIER : Aujourd’hui une grosse partie des intrusions se font via des applications en ligne, les dispositifs de sécurité périmétrique commençant à être relativement maîtrisés. Quant aux intrusions sur les réseaux internes des entreprises, quand elles ne sont pas dues à des applications Internet clientes sur les postes de travail, elles sont souvent liées à des erreurs de conception d’architectures de sécurité. En effet, les comparti- ments du réseau dits « démilitarisés » (DMZ), qui hébergent les applications en ligne publiquement accessibles, contiennent souvent des « chemins » descendant au cœur du réseau interne des entreprises, alors qu’ils devraient être configurés en « culs de sac ». I D’où viennent les problèmes de sécurité des applications ? Hubert TOURNIER : Il existe deux sources de menaces : • internes : des développeurs qui font les applications et y introduisent parfois, volontairement ou non, des vulnérabilités. • externes : des personnes qui exploitent ces vulnérabilités pour pénétrer les réseaux d’entreprise par les applications. La plupart du temps, les vulnérabilités involontairement introduites par les développeurs proviennent de leur méconnaissance de la sécurité et de sa mise en œuvre tout au long du cycle de vie des projets informatiques. Il peut exister des problèmes à de multiples niveaux, sur le plan de l’architecture, de la conception, du codage des applications. Nous avons besoin d’outils pour répondre à ces problématiques de façon aussi automatisée que possible car rien n’est plus fastidieux que de faire une analyse de code source manuellement ! Pour ce qui est des développeurs introduisant des codes malicieux, « bombes logiques » ou autres « portes dérobées » dans les applications, le problème est plus ardu car les portions de code correspondantes peuvent être parfaitement licites. A part relire le code source de tous les développeurs, il faut a minima disposer de systèmes de gestion de configuration permettant d’identifier les auteurs de chaque modification (imputabilité) et interdire aux développeurs l’accès aux systèmes de production (séparation de fonctions). Des processus de recette permettant d’isoler les portions de code non testées peuvent également être utiles. I En France les développeurs sont-ils suffisamment bien formés en matière de développement sécurisé ? Hubert TOURNIER : Il leur faut de toute évidence des formations spécifiques complémentaires. Les personnes qui connaissent bien les problématiques liées à la sécurité viennent en effet plutôt du monde de la production informatique que de celui des études. Il est difficile de trouver des profils à la fois étude et sécurité. D’autre part les fonctions de développeurs d’applications sont peu reconnues en France. Le poste de développeur est généralement perçu comme une première étape dans une carrière mais pas comme un métier à long terme. Or pour devenir un bon développeur d’applications sécurisées, il faut de l’expérience, un bon niveau d’expertise, une bonne maîtrise du codage… et, contrairement aux Etats-Unis, il existe peu de développeurs seniors en France… I Qu’en est-il de la formation initiale en la matière ? Les certifications et les normes sont-elles des gages de maîtrise du sujet ? Hubert TOURNIER : Très peu de formations scolaires ou professionnelles sont dispensées sur ce sujet, cependant il existe un IT-expert n°66 - mars/avril 2007 45 certain nombre de certifications tel que le CISSP (ndlr : Certified Information Systems Security Professional) qui a une vocation technique et transverse mais qui inclut les aspects de sécurité applicative, ainsi qu’une certification plus destinée aux architectes en sécurité, le SSCP (ndlr : Systems Security Certified Practitioner). Dans l’idéal, il faudrait que chaque DSI ait au moins à disposition une personne formée dans ce domaine et en mesure d’intervenir tout au long du cycle de vie des projets. Dans les cabinets d’audit, la plupart de nos consultants sont au moins certifiés ISO 27001. Cette certification couvre tous les domaines de la sécurité. Cela permet d’avoir un vernis au niveau du codage des applications. La certification CISSP est plus pointue mais nécessite une expérience plus importante. I Quand et comment intégrer la sécurité dans le cycle de développement ? Hubert TOURNIER : Il faut intégrer la sécurité très en amont dans les cycles de développement afin d’analyser les risques, qualifier les demandes en terme de sécurité (architecture) et concevoir les fonctions de sécurité intégrées (identification, authentification, habilitation…). Idéalement, il faut instituer des jalons tout au long de cycle de vie applicatif et imposer l’intervention de personnes qualifiées sur ces différents jalons. En pratique, les DSI n’ont pas toujours les moyens financiers d’avoir des personnes spécialisées dans la sécurité à demeure, mais même chez les grands intégrateurs, les aspects sécurité sont très rarement pris en compte, à moins d’avoir été expressément demandés. C’est pourquoi, que les développements soient effectués en interne ou par une SSII, il faut établir un cahier des charges qui formalise les exigences de sécurité attendues. Pour ce qui est de l’implémentation de la sécurité, certaines personnes ont développé des guides à destination des développeurs. Ces guides, tel celui édité par l’OWASP, leur expliquent les problèmes de sécurité potentiels et comment les éviter. Un développeur sans connaissance préalable en sécurité qui prendrait le temps de lire ce type de guide téléchargeable gratuitement, améliorerait grandement la sécurité de ses applications. 46 IT-expert n°66 - mars/avril 2007 I Comment procédez-vous pour retrouver les failles de sécurité dans les développements existants ? Hubert TOURNIER : Le contrôle manuel est inopérant lorsque les applications sont importantes. D’autre part, tout le monde n’a pas forcement les compétences de relecture. Il est donc nécessaire d’avoir des outils pour automatiser le plus possible le contrôle des applications. J’ai un certain nombre d’applications qui permettent de faire tel ou tel type de test sur du code source mais je ne dispose pas d’une application miracle qui fasse tous les tests d’un seul coup. Dans le cadre de nos missions, nous faisons parfois des revues d’architecture applicative en amont des projets. L’audit de code a posteriori est très rarement effectué parce que les tarifs de prestations appliqués au temps nécessaire pour ce type de mission impliqueraient des budgets trop élevés. Par contre, la DCSSI (Direction Centrale de la Sécurité des Systèmes d’Information) accrédite des organismes appelés CESTI (Centres d’Évaluation de la Sécurité des Technologies de l’Information) pour évaluer la sécurité de dispositifs de sécurité. Ces sociétés seraient probablement qualifiées pour réaliser des revues de code. Hubert TOURNIER Senior Manager au sein de la ligne de services Gouvernance, Stratégie et Sécurité chez Deloitte CISSP, CISM, CISA, BS7799 Lead Auditor Livres Pro WF Windows Workflow & Workflow in the 2007 Microsoft Office System Pro WF Windows Workflow par B. Bukovics Prix : 48,90 euros 710 pages ISBN 1-59059-778-8 Editions Apress L’année 2007 est placée sous le signe du Workflow chez Microsoft. Les deux ouvrages que nous vous présentons ce mois-ci traitent du sujet et s’avèrent complémentaires. Le premier s’attache à vous faire pénétrer dans les arcanes de MOS (Microsoft Office System) et du tandem SharePoint Services v3 / SharePoint Server 2007. Si l’utilisation de Microsoft Office 2007 permet de tirer le meilleur parti de ces fonctionnalités, l’ouvrage n’omet pas pour autant de consacrer un chapitre complet à l’intégration avec Office 2003. L’auteur s’attache à démontrer la mise en oeuvre des workflows préexistants dans le cadre d’une entreprise fictive mais réaliste. Menés pas à pas et accompagnés de nombreux conseils, ce livre constitue une excellente introduction à la plateforme de workflow de Microsoft. Le second ouvrage traite de l’envers du décor. Il présente les aspects programmatiques de la plate-forme. A ce titre, il passe en revue les mécanismes qui permettent de programmer ses propres workflows. Cet ouvrage est clairement dédié aux développeurs et aux architectes, là où le premier vise une audience plus large et moins technique. Workflow in the 2007 Microsoft Office System par D. Mann 440 pages Prix : 18,90 euros ISBN 1-59059-700-1 Editions Apress IT-expert n°66 - mars/avril 2007 47 Rubrique à brac Les DRM : une introduction « Nous naissons tous originaux : nous plairions tous par cette originalité même si nous ne nous donnions des peines infinies pour devenir copies et fades copies. » Stendhal IT-expert n°66 - mars/avril 2007 49 Il est fort peu de sujets qui aient fait couler autant d’encre et de salive dans le landernau médiatico-informatique que celui des DRM, a tel point qu’il mériterait sans nul doute de figurer dans la fameuse « bibliothèque de Babel » de Jorge Luis Borges. Cette dispute a certainement atteint un point culminant à l’occasion du débat public qui a précédé le vote de la fameuse loi DADVSI « Droit d’Auteur et Droits Voisins dans la Société de l’Information » qui est issue de la transposition en droit français de la directive européenne 2001/29/CE et a été adoptée par l’Assemblée nationale et le Sénat le 30 juin 2006, avant d’être examinée par le Conseil constitutionnel qui en a supprimé certaines dispositions. Le texte, publié au Journal Officiel le 3 août 2006, prévoit des amendes d’un montant de 300 000 euros ainsi que 3 ans d’emprisonnement pour le fait « d’éditer, de mettre à la disposition du public ou de communiquer au public, sciemment et sous quelque forme que ce soit, un logiciel manifestement destiné à la mise à disposition du public non autorisée d’œuvres ou d’objets protégés » et jusqu’à 6 mois de prison et 30 000 euros d’amende pour le « fait de procurer ou proposer sciemment à autrui, directement ou indirectement, des moyens conçus ou spécialement adaptés pour porter atteinte à une mesure technique » (les DRM sont appelées « mesures techniques » dans la loi). Il n’est certainement pas dans notre ambition d’ajouter un nième ouvrage à cette célèbre bibliothèque mais tout simplement de tenter d’introduire ce concept sans rentrer dans trop de détails techniques. Pour cela, nous commencerons par définir les DRM. Puis, nous essayerons de comprendre pourquoi les DRM ont fait leur apparition et le rôle qu’y jouent les langages d’expression de droit avant de conclure. Une définition des DRM DRM, abréviation de l’expression anglaise de Digital Rights Management est un terme générique qui fait référence à plusieurs technologies utilisées par les artistes, les auteurs, les interprètes, les titulaires de droits de propriété intellectuelle, les entreprises, etc. pour contrôler l’accès et l’utilisation d’un contenu numérique. Au sens de la directive européenne, on parle 50 IT-expert n°66 - mars/avril 2007 de « mesure technique de protection » qui se définit comme « toute technologie, dispositif ou composant qui, dans le cadre normal de son fonctionnement, est destiné à empêcher ou à limiter, en ce qui concerne les œuvres ou autres objets protégés, les actes non autorisés par le titulaire d’un droit d’auteur ou d’un droit voisin du droit d’auteur prévu par la loi. Les mesures techniques sont réputées efficaces lorsque l’utilisation d’une œuvre protégée, ou celle d’un autre objet protégé, est contrôlée par les titulaires du droit grâce à l’application d’un code d’accès ou d’un procédé de protection, tel que le cryptage, le brouillage ou toute autre transformation de l’œuvre ou de l’objet protégé ou d’un mécanisme de contrôle de copie qui atteint cet objectif de protection » (article 9-3 de la directive 2001/29/CE1). Cette notion de DRM existe aussi dans les entreprises et pas seulement dans le monde des médias, on parle quelquefois d’Enterprise Digital Rights Management (E-DRM ou ERM) ou d’IRM (Information Rights Management) pour faire référence à l’utilisation des technologies de DRM pour contrôler l’accès au patrimoine informationnel de l’entreprise (emails, fichiers PDF, Word, Excel, TIFF, plan AutoCAD, pages Web, bases de données, etc.) conformément à une politique de sécurité qui a été définie préalablement. Ces dispositifs d’E-DRM ou d’IRM ont généralement pour but de s’appliquer à des secrets commerciaux ou industriels afin, par exemple, d’éviter qu’un mail envoyé aux collaborateurs d’une entreprise ne puisse être retransmis par erreur ou volontairement par un collaborateur distrait ou indélicat. Pourquoi des DRM ? On peut considérer que c’est la naissance, au début des années quatre-vingt, du premier CD (Compact Disc Digital Audio) qui a présidé au lancement des premières réflexions sur la question des systèmes de protection contre la copie. En effet, si cette question de la copie existait déjà dans le monde analogique, avec les cassettes audio puis avec le magnétoscope, elle a pris des dimensions nouvelles avec l’arrivée de cette nouvelle technologie, puisqu’il devenait possible de copier un contenu numérique sans perte de qualité. Ainsi, dès la survenue des premiers systèmes d’enregistrement numérique, les industriels et les titulaires de droits se sont penchés sur la question des dispositifs techniques de protection de la propriété intellectuelle, à travers des systèmes de protection contre la copie. Puis, avec la convergence du développement de l’informatique et des communications sont apparues de nouveaux enjeux avec la possibilité d’échanger très simplement des contenus grâce à la diffusion massive des ordinateurs multimédias, du développement d’Internet et des réseaux peer to peer, de la télévision haute définition, des DVD, etc. Un tel développement a été l’occasion pour les industriels du secteur d’une double prise de conscience : celle des opportunités immenses offertes par ces nouvelles technologies (baladeur MP3, nouveaux canaux de distribution licite des contenus, services d’achat en ligne des contenus vidéo ou audio…) mais aussi celle des risques potentiels engendrés par le développement d’une nouvelle forme de contrefaçon, plus diffuse et non nécessairement à but non lucratif, qui distribue gratuitement les contenus contrefaits. Ainsi, alors que dans le domaine de l’électronique grand public, les traitements de données sont effectués par des composants électroniques qui sont difficiles à explorer ou à modifier, dans un ordinateur domestique les systèmes de lecture ou d’enregistrement n’effectuent que pas ou peu de traitements de données et s’appuient pour cela sur le processeur de l’ordinateur qui exécute un logiciel destiné à décoder le contenu numérique. Cela permet, en effet, d’obtenir des systèmes à moindre coût, puisque, par exemple, un lecteur DVD d’ordinateur n’intègre pas de composant électronique pour le déchiffrement et la décompression, cette fonction étant assurée par le processeur. En revanche, la contrepartie, c’est qu’il est possible d’explorer, d’analyser voire de modifier le logiciel (donc le traitement) sans moyens matériels particuliers, même si cela peut être fastidieux et coûteux en temps. C’est ce qui a permis, par exemple, le craquage, en 1999 par Jon Lech Johansen, de l’algorithme CSS (Content Scrambling System) qui est un dispositif de DRM employé par le DVD Forum depuis 1996 pour protéger le contenu des DVD, craquage qui a mis à mal tout le système de protection du contenu multimédia des DVD. On a vu alors la naissance d’une nouvelle forme de contrefaçon qui n’est plus le fait de structures organisées mais des consommateurs eux-mêmes, à travers les réseaux peer to peer, tout cela sans réel but lucratif, au sein d’un système totalement dématérialisé et beaucoup plus diffus, donc beaucoup plus difficile à maîtriser. Ce craquage a permis de démontrer en vraie grandeur : • l’importance de la qualité de l’algorithme de chiffrement et de la nécessité d’utiliser des algorithmes éprouvés, sur lesquels de nombreux chercheurs se sont penchés. Des cryptanalyses ont montré que l’algorithme avait plusieurs failles, faisant tomber la complexité de l’attaque de 240 à 28, soit une fraction de seconde de calcul pour un PC • celle de la longueur de la clé, l’algorithme CSS repose sur une clé de seulement 40 bits • la nécessité de pouvoir éventuellement révoquer les clés afin de permettre l’évolution de la protection en cas de craquage. La même prise de conscience s’est également faite jour dans les entreprises où l’arrivée de l’Internet et la connexion des systèmes d’information à l’Internet a eu pour conséquence la possibilité de voir fuir des secrets industriels à l’extérieur, de façon volontaire ou non, même si l’on peut considérer que cette prise de conscience n’est peut-être pas encore complète au sein des entreprises. C’est pour l’ensemble de ces différentes raisons que sont nés les différents mécanismes de protection contre la copie que constituent les DRM. Comment fonctionnent les DRM ? La protection technique des contenus numériques s’exerce soit à partir du codage numérique des contenus numériques (techniques dites de « tatouage » comme le watermaking ou le fingerprinting) soit à travers des techniques de chiffrement qui concernent à la fois la protection technique d’accès aux contenus mais également les modes de distribution sur supports optiques ou à travers le réseau. Nous n’aborderons pas ici les techniques de tatouage pour nous concentrer sur les techniques de chiffrement qui sont au cœur technologique de la protection des contenus numériques. Il faut préciser d’emblée que, par nature, ces technologies de protection des contenus numériques ne prétendent jamais parvenir à un niveau de protection totale, une robustesse absolue ou une inviolabilité globale. Elles tendent principalement à atteindre « un certain niveau » de sécurité, à réduire l’intérêt et la facilité de contournement et s’inscrivent dans une dynamique d’équilibrage subtil entre protection et faillibilité. En effet, dans la mesure où ces techniques ne reposent que sur des briques logicielles, il n’est guère réaliste de chercher à « protéger le logiciel du logiciel ». Sans parler du fait que ces technologies ne peuvent en aucune façon combler le « trou numérique » ; ainsi, il reste toujours possible de prendre la photo numérique d’un mail que protège un système de DRM et que l’on n’a donc pas le droit de transmettre en dehors de l’entreprise et d’envoyer ensuite cette photo en dehors de l’entreprise… On peut considérer, que ce soit pour les contenus sur Internet ou au sein des entreprises, que les DRM reposent sur la définition d’un certain « espace de confiance » nécessaire à la distribution de contenus numériques de toute nature. La création de cet « espace de confiance » au sein duquel la communication est sécurisée est vraiment originale (d’où le recours aux guillemets) puisque, par principe, le titulaire des droits ou le propriétaire d’un fichier ne peut avoir confiance dans l’utilisateur. Ainsi, les systèmes numériques de gestion de droits doivent non seulement créer l’espace de confiance mais aussi, par des moyens techniques souvent similaires, l’élargir à l’ensemble de la chaîne de distribution et de consommation du contenu. Dans la pratique, l’association d’un ensemble de droits d’utilisation à un contenu numérique implique l’emploi de quatre principaux types d’outils numériques : • des outils d’identification du contenu numérique ; • des outils de description des droits du contenu numérique ; • des outils de protection du contenu numérique ; IT-expert n°66 - mars/avril 2007 51 • éventuellement des outils de mise en relation des droits avec les données commerciales sur les utilisateurs (dans le cas de la vente de contenu numérique en ligne). Parmi ceux-ci une brique essentielle connue sous le nom de « langage d’expression de droits » dont le but est d’offrir un moyen flexible d’exprimer des droits sur un contenu numérique. Les langages d’expression de droits Pour faire fonctionner un système de gestion des droits numériques, il faut disposer d’un « vocabulaire » commun pour réaliser la description des droits associés aux contenus numériques que l’on cherche à protéger. Pour cela on a recours à des langages d’expression de droits ou REL (Rights Expression Language) qui constituent la « grammaire » nécessaire pour parvenir à décrire les droits associés à chaque contenu numériques, pour chaque utilisateur, et ainsi, former la « langue » des DRM. Ainsi, un langage de description des droits permet de décrire numériquement les droits sur un contenu numérique (texte, œuvre musicale, image fixe ou animée, vidéo, jeu vidéo, email, fichier, etc.). Un langage de description des droits doit, pour être pertinent et partagé, être tout à la fois précis, ouvert et donc standardisé, et générique. L’objectif, au sein d’un REL, est de pouvoir faire en sorte que chaque « expression de droits » puisse spécifier une combinaison de règles telle que : • Quels droits sont disponibles, • Pour qui, • Combien de fois, • Pendant quelle période de temps, • Sous quelles conditions d’accès, • Pour quel montant, • A l’intérieur de quel territoire, et • Avec quelles obligations, • etc. Les langages d’expression de droits sont généralement fondés sur XML (eXtensible Markup Language). Ils consistent en une grammaire XML, c’est-à-dire un schéma qui décrit la grammaire de base utilisée pour l’expression des droits et leurs relations avec les biens numériques concernés et les différentes parties en présence. Cette grammaire est complétée par un thésaurus (ou dictionnaire de droits) qui contient le vocabulaire dans lequel sont exprimés les droits avec la description de sa sémantique. Aujourd’hui, deux standards de langages normalisés de description fondés sur XML sont en voie d’émergence et de compétition : • ODRL (Open Digital Rights Language) qui a été influencé par le langage XMCL (eXtensible Media Commerce Language) de RealNetworks qui a fusionné avec MRV (Media Rights Voucher) de Nokia pour former ODRL à l’automne 2001. La soumission d’ODRL comme candidat pour le REL incorporé au sein de la norme MPEG-21 a échoué. 52 IT-expert n°66 - mars/avril 2007 • XrML (eXtensible rights Markup Language) : c’est le nouveau nom du langage DPRL (Digital Property Rights Language) issu des travaux du Xerox Palo Alto Research Center (XeroxPARC). XrML a atteint la stabilité en novembre 2001 avec la version 2.0 et la version 2.1 de mai 2002 a été soumise à l’OASIS avec la volonté de servir de base à la définition d’un langage de gestion de droits pour l’industrie informatique. XrML, bien que maintenant développé sous la seule responsabilité de l’OASIS Rights Language Technical Committee est encore sous copyright de ContentGuard et une utilisation commerciale de XrML doit résulter de l’obtention d’une licence auprès de ContentGuard. Le langage XrML a été complété par un dictionnaire de données (le thésaurus dont on parlait plus haut) développé par le consortium 2RDD qui est supporté par un groupe de propriétaires de contenus majeur (PMA, RIAA, IFPI…), des fournisseurs de technologies tels que ContentGuard et est géré par Rightscom. La combinaison de XrML et de 2RDD a été choisie pour devenir le REL de MPEG-21 qui a été incorporé aux sections 5 (RDD) et 6 (language concept) du standard MPEG-21. La position de XrML semble plus solide que celle d’ODRL. En effet, la phase d’exploitation commerciale a commencé ; de plus, XrML a été adopté en tant qu’élément de la norme MPEG-21. Pour cette raison, nous ne nous intéresserons dans la suite qu’à XrML. Principes et mécanismes de XrML XrML a pour objet d’assurer une intégrité totale des droits tout au long de la chaîne de confiance. XrML autorise la définition d’organismes dits de « certification », dont le rôle est d’assurer que les échanges respectent la chaîne de confiance, par exemple qu’il n’y a pas d’usurpation d’identité ou de promesse non tenue. Une délégation de cette fonction de supervision est également possible. • L’authentification des personnes et des ressources qui ont pour but de vérifier que l’identité présentée par une personne ou une ressource est bien conforme à la réalité. Ici aussi, une clef publique est requise pour les personnes, un condensé ou une signature pour les ressources numériques. • La signature et le chiffrement s’appuient sur des normes du W3C qui sont au cœur des services Web XML : XML-ENC pour le chiffrement, et XML-SIG pour la signature. Quelques considérations sur le futur des DRM Il semble certain que les DRM puissent constituer, que ce soit dans le monde des médias ou en entreprise, des réponses intéressantes aux questions légitimes que peuvent se poser les entreprises ou les auteurs et les titulaires de droits. Pourtant, certains des éléments constitutifs de ces dispositifs restent encore complexes à utiliser pour l’utilisateur final, en particulier pour ce qui concerne le sujet toujours d’actualité de l’interopérabilité des DRM. De manière générale, l’interopérabilité a pour mérite de favoriser la concurrence, d’abaisser les coûts et donc d’accroître la valeur d’usage d’un produit ou d’une solution. Dans la pratique, l’interopérabilité permet à un consommateur de pouvoir utiliser ses DVD ou ses CD sur la quasi-totalité de ses équipements électroniques et d’éviter d’avoir à les renouveler en cas de changement d’équipement ; de même, en entreprise, elle autorise le partage facile de documents ou de plans entre deux sociétés partenaires tout en en contrôlant les usages. Gageons que, sous réserve que l’interopérabilité ne nuise bien évidemment pas à la sécurité globale de la chaîne de confiance, les intérêts naturels des utilisateurs prévaudront et que, d’ici quelques années, les débats sur l’interopérabilité qui ont fait rage ces derniers mois ne seront que de vieux souvenirs. I Comme on vient de le voir, XrML est un schéma XML, c’est-à-dire un modèle générique permettant d’instancier des objets spécifiques conformes à un standard. XrML repose sur la notion de licence qui est « un ensemble de concessions qui procurent à certaines personnes certains droits sur certaines ressources sous certaines conditions. » Dans la mesure où une concession et un droit constituent des ressources, il est possible de construire des documents très complexes avec une très grande flexibilité. Un langage de description des droits a pour objet la description des opérations numériques qui peuvent ou doivent être effectuées, mais il n’est pas dans sa fonction de décrire les moyens qui doivent être mis en œuvre à cet effet. La norme XrML donne donc simplement des recommandations sur les principaux mécanismes sur lesquels repose un système de gestion numérique des droits : Bernard OURGHANLIAN Directeur Technologie et Sécurité, Microsoft France • L’identification des personnes et des ressources qui visent à reconnaître l’identité d’un objet. XrML prévoit que celle-ci soit fondée principalement sur une infrastructure de gestion de clés publiques. IT-expert n°66 - mars/avril 2007 53 ZOOM OUTSOURCING L’AVIS DES DIRECTIONS INFORMATIQUES Ministère des Finances Direction Générale des Impôts Nadine Chauvière Sous-Directrice des SI de la DGI « Les solutions d’Application Intelligence CAST nous aident à obtenir une meilleure visibilité de notre parc applicatif au travers de tableaux de bord composés d’indicateurs techniques objectifs afin de faciliter le dialogue avec les équipes et avec nos maîtrises d’ouvrage. » Groupe SFR Cegetel Eric Eteve Directeur Informatique Centre Ingénierie Mobilité « La solution CAST de gestion de la soustraitance est un élément clé dans le système de pilotage mis en place par SFR-Cegetel sur ses TMA. Nous avons constaté une attention plus particulière apportée par les SSII à la qualité des livrables et à la fiabilité des chiffrages depuis qu’ils savent que nous pouvons facilement les auditer » Framatome - Groupe AREVA Michel Fondeviole DSI de Framatome-ANP « CAST fournit des critères objectifs d’appréciation dans le dialogue parfois difficile avec le sous-traitant ainsi que des indicateurs nécessaires au suivi de l’évolution des applications et constitue au sein de Framatome un outil de progrès partagé. » EN SAVOIR PLUS Demandez le Livre Blanc rédigé par le Gartner Group et CAST sur ce thème : « Information Series on Application Management » : www.castsoftware.com/outsourcing Découvrez l’expérience de plusieurs sociétés utilisatrices de solutions d’Application Intelligence : www.castsoftware.com/customers www.castsoftware.com La maîtrise des applications et des prestataires dans une opération d’outsourcing De la valeur ajoutée de l’Application Intelligence pour piloter efficacement un parc applicatif sous-traité Dans l’externalisation des applications métier, c’est surtout la volonté d’accroître l’efficacité opérationnelle de l’informatique qui est motrice : pouvoir fournir plus rapidement un service à valeur ajoutée aux utilisateurs et aux clients dans un contexte en perpétuelle évolution. de coûts. C’est là que le bât blesse : l’externalisation des applications métier occasionne un risque de perte rapide de savoir-faire technologique et par conséquent critique. Vigilance et suivi sont de mise pour garder le contrôle de la qualité de service et éviter les dépendances par nature dangereuses. L’externalisation réussie d’applications métier est donc le fruit d’une vision anticipatrice partagée avec le prestataire. Sont ainsi apparues des solutions dites d’Application Intelligence, basées sur une technologie avancée d’analyse de code source. Publi-Reportage La valeur ajoutée de ce type de solutions d’Application Intelligence est visible à chaque étape d’une opération d’outsourcing, comme décrit ci-après. trat con de Fin Appe ls d 'off res Cycle de vie d'une opération d'Outsourcing Co ntr ôle des coûts i de Suiv connaissance s sfert de Tran Comme dans n’importe quelle opération d’outsourcing, le contrat liant le fournisseur est capital, en particulier les SLAs. Néanmoins, les applications métier étant par nature soumises à de fréquents changements en cours de contrat, les seuls SLAs se révèlent vite insuffisants pour garantir la qualité de service et éviter les dérives En fournissant des indicateurs techniques aux donneurs d’ordre, ces solutions permettent de piloter un parc applicatif sous-traité en temps réel, tant en terme de qualité, que de maintenabilité et de coût. Résultat : le donneur d’ordre conserve la maîtrise intellectuelle de ses applications métier et le contrôle de la relation avec son sous-traitant. technique Recette L es entreprises, devenues plus mûres vis-à-vis de l’outsourcing, sont désormais capables d’opérer des externalisations plus stratégiques. On l’a récemment observé dans l’automobile avec Renault ou dans la grande distribution avec Carrefour. jet pro Audit de l’existant et préparation des appels d’offres • Déterminer les caractéristiques techniques du portefeuille applicatif existant avant de le sous-traiter • Disposer d’informations de référence pour évaluer les propositions des sous-traitants • Obtenir une image à l’instant t des applications pour permettre un suivi dans le temps Transfert vers le prestataire • Réduire la phase d’acquisition de la connaissance pour entreprendre plus vite des tâches productives • Diminuer le coût lié à la production d’une documentation exploitable et maintenable par le prestataire Contrôle de la qualité et des coûts en cours de projet • Suivre l’évolution de la maintenabilité et de la qualité pour éviter toute dérive • Etre capable de valider la quantité et la qualité du travail facturé • Etre en mesure de challenger le sous-traitant lors des négociations d’avenants • Industrialiser les recettes techniques Renouvellement de contrat, transfert ou ré-internalisation • Déterminer et qualifier les écarts entre la prestation prévue et les livrables recettés • Disposer des informations techniques caractéristiques du portefeuille applicatif en fin de prestation Le leader mondial de ce type de solutions est d’ailleurs un éditeur français, CAST. Reconnu par les analystes informatiques comme précurseur du marché, CAST compte plus 500 comptes utilisateurs de sa plate-forme d’Application Intelligence dans le monde.