Security and self-healability enforcement of dynamic components in a service-oriented system Yufang Dan To cite this version: Yufang Dan. Security and self-healability enforcement of dynamic components in a service-oriented system. Networking and Internet Architecture [cs.NI]. INSA de Lyon, 2014. English. NNT: 2014ISAL0043. tel-01175852 HAL Id: tel-01175852 https://theses.hal.science/tel-01175852 Submitted on 13 Jul 2015 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. Numberofordre: 2014-ISAL-??? Year2014 THESIS SECURITY AND SELF-HEALABILITY ENFORCEMENT OF DYNAMIC COMPONENTS IN A SERVICE-ORIENTED SYSTEM defendat L’INSTITUT NATIONAL DES SCIENCES APPLIQUÉES DE LYON forthedegreeof DOCTOR OF PHILOSOPHY Ecole doctorale : INFORMATIQUE ET MATHÉMATIQUES submittedat28February2014 By Yufang DAN Defendat14May2014beforethecommissionofexam JURY Directeurs StéphaneFrénot Professeur INSAdeLyon NicolasStouls Docteur INSAdeLyon Rapporteurs LydieduBousquet Professeur UniversitéJosephFourier GaelThomas HDR UniversitéPierreetMarieCurie Examinateurs IoannisParissis Professeur UniversitéPierre-Mendés-France FrédéricDadeau Docteur UniversitédeFranche-Comté ThisthesisispreparedatCentred’InnovationenTélécommunicationsetIntégrationde Services(CITI), INSAdeLyon-INRIARhône-Alpes Cette thèse est accessible à l'adresse : http://theses.insa-lyon.fr/publication/2014ISAL0043/these.pdf © [Y. Dan], [2014], INSA de Lyon, tous droits réservés Cette thèse est accessible à l'adresse : http://theses.insa-lyon.fr/publication/2014ISAL0043/these.pdf © [Y. Dan], [2014], INSA de Lyon, tous droits réservés Acknowledgement First and the foremost, i would like to express my sincere gratitude to my advisors Prof. Stephane Frenot and Dr. Nicolas Stouls for their support and trust. Theyaremostresponsibleforhelpingmecompletethisthesisaswellas the challenging research that lies behind it. Their wide knowledge and their logical way of thinking have been of great value for me. They were always there to meet and talk about my ideas, to proofread and mark up my papers, and to ask me good questions to help me think through my problems. With- out their encouragement, constant guidance, all their tolerance and patience, i could not have finished this thesis. I would like to give special thanks to Dr. Nicolas Stouls who has spent very much precious time to discuss my work and to help me analyse the existed problems and so on during the three years andahalf. I take this opportunity to thank the jury members for spending their pre- cious time to read and review this thesis, for taking a long trip to attend this defence, and for giving me valuable comments. I am grateful for the financial supportoftheCSCthroughUT-INSAproject. IwouldalsoliketothankmydearcolleaguesatCITIlaboratoryforkindly, professional sharing the experience on their study and work, i had a very happy time in CITI for three years and a half. I specially would like to thank administrativestaffsatCITIfortheirinstantsupportwheneverIaskedforone. Next,Imustthankmydearneighbour,DanielleROCHE,youarereallylike myfamilyandmybestfriendinFrench,youletmefeltiliveatherelikeinmy country, even though my french sentences sometimes were not clear, you are alwaystheresupportmeformyeverything. Thelastbutnottheleast,Iwouldliketoextendmyspecialgratitudetomy big family: my mother, father, sister, brother-in-law and my husband. Their iii Cette thèse est accessible à l'adresse : http://theses.insa-lyon.fr/publication/2014ISAL0043/these.pdf © [Y. Dan], [2014], INSA de Lyon, tous droits réservés unconditional support has always helped me to bounce back whenever i felt low. Cette thèse est accessible à l'adresse : http://theses.insa-lyon.fr/publication/2014ISAL0043/these.pdf © [Y. Dan], [2014], INSA de Lyon, tous droits réservés Abstract Dynamic service-oriented architectures (D-SOA) focus on loosely coupled client- serverinteractionswherebothofthemcanappearanddisappearatruntime. Ourgoal istodesignmonitoringsystemsforthesearchitectures. Sinceclassicalmonitoringsys- tems are statically injected into the monitored services, they can not properly handle theruntimeservices’lifecycle. Moreover,whenaserviceissubstitutedbyanewone, other services may still use the old reference. This reference is kept in memory as a stalereferencewhichinducessomeforbiddenbehaviors. This thesis contributes to design a monitoring system with resilient dynamicity thatmonitorsservicesusageandisabletodealwithstalereferencesusage. Thisgoal isachievedinthreesteps. Firstly, by considering the dynamicity of SOA systems in an open environment, wedesignacorrespondingdynamicmonitoringapproach. Weidentifytwokeyprop- erties of the loosely coupled monitoring system: dynamicity resilience, i.e., after the unregistration of a service, its interface monitor and its current state are kept alive in memory and transferred to a new loaded service; comprehensiveness, i.e., the imple- mentationsofthemonitoredinterfacecan’tbypassthemonitorobservations. Secondly, to avoid stale references usage, we propose a client-side safe service usage(SSU)layertoautomaticallyhandlethem. Ifausedservicedisappears,thenthe SSUlayercaneithertransparentlysubstituteitorthrowanexceptiontotheclient. This SSUlayerisbasedonatransactionalapproachwhichaimstopreservethecoherence ofactiveservices. Thirdly, we propose to integrate both approaches into a new monitoring system (NewMS). The NewMS inherits the principles of both systems: dynamicity resilience, comprehensiveness and fault tolerance. It can dynamically monitor service usage and transparentlyhandlestalereferencesofdynamicSOAsystems. AllthethreepropositionsareimplementedonOSGi-basedplatform. Wedevelop asimpleapplicationthatsimulatesanAirlineReservationsystem,whichismonitored byourmonitoringsystems. Wealsodevelopvariousautomatatohandlethedynamic- ityoftheAirlineReservationsystemintheNewMS.Ourresultsdemonstratethatthe timecostofourmonitoringsystemsisclosetooneofclassicalmonitoringsystems. Cette thèse est accessible à l'adresse : http://theses.insa-lyon.fr/publication/2014ISAL0043/these.pdf © [Y. Dan], [2014], INSA de Lyon, tous droits réservés Cette thèse est accessible à l'adresse : http://theses.insa-lyon.fr/publication/2014ISAL0043/these.pdf © [Y. Dan], [2014], INSA de Lyon, tous droits réservés Résumé Les architectures dynamiques orientées services ( D-SOA) se concentrent sur les interactions client-serveur à couplage faible, où les deux peuvent apparaître et dis- paraître à l’exécution. Notre objectif est de concevoir des systèmes de surveillance pour ces architectures. Comme les systèmes de surveillance classiques sont statique- ment injectés dans les services surveillés, ils ne peuvent pas gérer correctement le cycledeviedesservicesd’exécution. Enoutre,quandunserviceestremplacéparun autre service, d’autres services peuvent toujours utiliser l’ancienne référence. Cette référence vers un service absent, lorsqu’elle est gardée en mémoire, peut induire des comportementsnondésirés. Cettethèsecontribueàlaconceptiond’unsystèmedesurveillancedel’utilisation des services, qui soit résistant à la dynamique de la plateforme et qui soit en mesure defairefaceàl’utilisationdesréférencesobsolètes. Cebutestatteintentroisétapes. Tout d’abord, en considérant le caractère dynamique des systèmes SOA dans un environnement ouvert, nous concevons une approche de monitoring résistant au la dynamique de la plateforme. Nous identifions deux propriétés clés du système de surveillance à couplage faible: résilience à la dynamicité, c’est-à-dire qu’un moniteur d’interface et son état sont maintenus en mémoire et transférés à un nouveau service lors de la disparition d’un service utilisé, et exhaustivité, c’est-à-dire qu’un service surveillénepeutpascontournerlesobservationsdumoniteur. Ensuite,pouréviterl’usagederéférencesversdesservicesquinesontplusactifs, nousproposonsunservicedesécuritécôtéclient(SSULayer),quipermetdetraiterce problèmedemanièretransparente. Siunserviceutilisédisparaît,lacoucheSSUpeut soitsubstituerleservicedemanièretransparente,soitleveruneexceptionpouravertir explicitementleclient. CettecoucheSSUestbaséesuruneapprochetransactionnelle quiviseàpréserverlacohérencedesservicesactifs. Enfin, nous proposons d’intégrer les deux approches dans un nouveau système desurveillance(NewMS).LesNewMShéritedesprincipesdesdeuxsystèmesprécé- dents: la résilience à la dynamicité, l’exhaustivité et la tolérance aux fautes. Il peut dynamiquement surveiller l’utilisation de services et traiter les références obsolètes demanièretransparente. Cette thèse est accessible à l'adresse : http://theses.insa-lyon.fr/publication/2014ISAL0043/these.pdf © [Y. Dan], [2014], INSA de Lyon, tous droits réservés Ces trois propositions sont implémentées dans la plateforme OSGi. Nous avons développéuneapplicationsimplequisimuleunsystèmederéservationdeplace,qui est monitoré par notre systèmes. Nous avons également proposé différentes spécifi- cationspourcesystème. Nosrésultatsdémontrentquelecoûtd’observationdenotre moniteur est proche du coût d’un monitor classique, ne prenant pas en compte les problématiquesliéesàladynamique. Cette thèse est accessible à l'adresse : http://theses.insa-lyon.fr/publication/2014ISAL0043/these.pdf © [Y. Dan], [2014], INSA de Lyon, tous droits réservés Contents Acknowledgement iii Abstract v Résumé vii Acronyms 1 1 Introduction 3 1.1 DynamicService-OrientedArchitectureOverview . . . . . . . . . . . . . 4 1.2 Motivations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.3 Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.4 Organizationofthesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2 Backgroundandstateoftheart 11 2.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.1.1 WebServices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.1.2 OSGiFramework . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.1.3 AspectJtechnology . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.2 Monitoringsystems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.2.1 Propertiesclassifications . . . . . . . . . . . . . . . . . . . . . . . . 18 2.2.2 Hard-coding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 2.2.2.1 JavaModelinglanguage(JML) . . . . . . . . . . . . . . . 21 2.2.2.2 Spec#Programmingsystem . . . . . . . . . . . . . . . . 21 2.2.3 Soft-coding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 2.2.3.1 EnforcementMonitor . . . . . . . . . . . . . . . . . . . . 23 2.2.3.2 JavaMOP . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 2.2.3.3 LarvaTool . . . . . . . . . . . . . . . . . . . . . . . . . . 24 2.2.3.4 Monitoringofwebservices . . . . . . . . . . . . . . . . . 25 ix Cette thèse est accessible à l'adresse : http://theses.insa-lyon.fr/publication/2014ISAL0043/these.pdf © [Y. Dan], [2014], INSA de Lyon, tous droits réservés
Description: